Kudos to you for undertaking this task. I think a lot of folks would have simply not used their devices for 48 hours rather than learn the assistive tech.
That said, please don't fall into the trap of assuming that your experience is definitive, and of recommending/not recommending things to those of us who may be blind for our entire lives based on your 48 hours of experience. Case in point, I know a number of blind Python developers. I myself did a lot of Python during college, back when Zope was huge and Plone didn't exist. It's no more or less difficult than any other high-level language. Just about every screen reader I've used has the ability to speak line indentation (I.e. "8 spaces def fn(...") and this makes tracking scope easy. Holding a function in your head based on hearing it spoken is a skill that improves with practice. I've coded to varying degrees in every language you've listed, and while some of them do have their unique accessibility challenges (Haskell in particular I find dense because "f . g $ h i" packs a lot of meaning into something with little to break it up) I've learned to audit orally parse them over time.
FWIW, as a blind person, I imagine that coordinating the motion of a 2-ton block of metal and glass, down a strip of asphalt surrounded by a number of other chunks of metal and glass, moving as fast as baseballs and prone to factors like weather and surface conditions,, is a very fragile process that terrifies the hell out of me if I really think about it for any amount of time. I wouldn't not recommend driving to sighted folks just because I can't imagine how it routinely gets solved, though. :)
I promise I don't actually mean to speak for anyone other than myself.
I have observed assistive technology before and wondered just how effective it is. I suspect many sighted programmers (like the parent poster) have wondered this as well, and the point of my post was, to use your metaphor, to point out it is a very different experience riding in a car versus driving one.
That said, some of your report surprise me.
Do you program in K?
You wrote you programmed in all of the languages that I mentioned, but you made mention of how dense Haskell seems and K is much more dense than Haskell.
For example, and I'm sorry if your screen reader doesn't like this, in K I can write:
c:{+(.#:'=x;?x)}
Q sounds better on a screen reader to me, but is harder for my eyes to parse:
c:{flip(value count each group x;distinct x)}
Here's a Python implementation of "c" above:
def c(v):
h = {}
for el in v:
h[el] = h.get(el,0) + 1
a = []
for el in h.keys():
a += [[ h[el], el ]]
return a
Now I don't know if you know K or Q, but I must say that I don't find this easy to read. Not with my eyes or with my ears. When I pointed to the fact that Python functions are longer and delimited by whitespace caused me a great deal of frustration, I hope that if you don't know K or Q that this gives you a better understanding of what I'm comparing it with.
On the other hand: If you do know K or Q, then I'm wondering if you could explain how you experience a python program like that in your environment is preferable to the K or Q example.
Kudos to you for undertaking this task. I think a lot of folks would have simply not used their devices for 48 hours rather than learn the assistive tech.
That said, please don't fall into the trap of assuming that your experience is definitive, and of recommending/not recommending things to those of us who may be blind for our entire lives based on your 48 hours of experience. Case in point, I know a number of blind Python developers. I myself did a lot of Python during college, back when Zope was huge and Plone didn't exist. It's no more or less difficult than any other high-level language. Just about every screen reader I've used has the ability to speak line indentation (I.e. "8 spaces def fn(...") and this makes tracking scope easy. Holding a function in your head based on hearing it spoken is a skill that improves with practice. I've coded to varying degrees in every language you've listed, and while some of them do have their unique accessibility challenges (Haskell in particular I find dense because "f . g $ h i" packs a lot of meaning into something with little to break it up) I've learned to audit orally parse them over time.
FWIW, as a blind person, I imagine that coordinating the motion of a 2-ton block of metal and glass, down a strip of asphalt surrounded by a number of other chunks of metal and glass, moving as fast as baseballs and prone to factors like weather and surface conditions,, is a very fragile process that terrifies the hell out of me if I really think about it for any amount of time. I wouldn't not recommend driving to sighted folks just because I can't imagine how it routinely gets solved, though. :)