Ask HN: I'm a software engineer going blind, how should I prepare?
261–270 of 497 posts
Re: Ask HN: I'm a software engineer going blind, how should I prepare?
#262They are (blind people) is very good in reading (listening) and also in speaking. I believe being a person who's easy to communicate is very importent in our industry and you will be a very good asset for your team.
You can email me if you'd like to hear more about that organization and maybe you can find something like that in your city as well.
fatiherikli@gmail.com
Re: Ask HN: I'm a software engineer going blind, how should I prepare?
#263Re: Ask HN: I'm a software engineer going blind, how should I prepare?
#264If you'll become totally blind (e.g. need to transition to a screen reader some day), I would advise you to leave the Mac platform. The built-in screen reader seems good at first, but falls down in complex work. Support for web browsing is suboptimal (Firefox is a no go) and the screen reader is only updated in the regular OS X release cycle. This means bugs will stick around a long time and it's totally unclear what the status of a bug is. Also, hackability of VoiceOver is limited. I find that a must for a tool that I am 100% reliant on.
I'm very sympathetic to Linux and run it in many places (Raspberry pi, home server, some stuff on VPSs), but I think Windows is a better accessible desktop experience now. Microsoft is trying tu push accessibility hard in most of their projects, this is often lacking in open source projects. Even if OS projects want to do a good job at accessibility, they usually miss the manpower of knowledge to do so. Especially given Docker and WSL (Windows subsystem for Linux), it is easy to run Linux-based development workloads on a Windows box.
My editor of choice these days is VS Code. That team is also very active on the accessibility of their editor. I use the free and open source NVDA screen reader. If something in NVDA is broken, I can at least look at their Github if any work is being done and if needs be throw in a few patches myself.
So, summing up I would say: find out a set of accessible tools to do your job, learn them before you get blind. Relying on vision until the very latest moment will give you an enormous productivity hit when the switch to 100% screen reader use comes (based on my experience training low vision and blind users in a previous job).
From what I've seen from the thread, others have already touched on some advantages of being a blind coder. You'll get a better mental model of your code out of necessity and depending on your team/employer you can be a more valuable team member because you also bring knowledge of software accessibility.
Hope this helps and good luck!
Re: Ask HN: I'm a software engineer going blind, how should I prepare?
#265Earlier quoted context omitted.
Your comment about proof reading and errors not sounding right reminds me of the "proper/best" way to learn Morse code for ham radio. Most everyone is familiar with the charts that show A=.- B=-... etc. Lots of beginners try to actually interpret the sounds in their ears and convert that to a letter and then convert a bunch of those to a word. Obviously, that is very processor intensive and has a high failure rate. T…
Similar experience for when I taught myself the Dvorak layout years ago. My fingers learned the common motion for whole words first. Actually, I'm not sure I could draw the layout of the qwerty keyboard I'm typing on right now from memory either.
I and others like me can touch type with Qwerty just fine. I can comfortably do 70-90 wpm, which is above my speed of thought. I don't suffer from RSI either and I've been touch typing for 20 years.
Also the Qwerty layout is more international. In non-English languages the Dvorak assumptions break down, the layout being optimized for English. And good luck finding Dvorak versions for other languages. Whereas all localized keyboard layouts that I've seen are based on Qwerty (for languages using Latin chars obviously). So for people communicating in more than English, like myself, anything non-Qwerty would be a pain.
So the biggest problem with Dvorak is that it is non-standard and it ain't worth it imo. I have issues with using other workstations, of friends and colleagues, just by having reconfigured Caps Lock into another Ctrl.
Re: Ask HN: I'm a software engineer going blind, how should I prepare?
#266You can definitely continue as a software engineer. I'm living proof. It won't be easy, especially at first. For a while it will feel like you're working twice as hard just to keep up with your sighted peers. But eventually, the better you get with your tools, you'll find you have some superpowers over your sighted peers. For example, as you get better with a screen reader, you'll be bumping the speech rate up to 1.7…
Just curious, is it harder to read white space indentation code like python versus curly bracket code like JavaScript?
Re: Ask HN: I'm a software engineer going blind, how should I prepare?
#267You can definitely continue as a software engineer. I'm living proof. It won't be easy, especially at first. For a while it will feel like you're working twice as hard just to keep up with your sighted peers. But eventually, the better you get with your tools, you'll find you have some superpowers over your sighted peers. For example, as you get better with a screen reader, you'll be bumping the speech rate up to 1.7…
> you'll be bumping the speech rate up to 1.75-2X normal speech. You'll be the only one who can understand your screen reader Huh. I already listen to most podcasts and recorded presentations at 2x. Now you make me wonder if I could process information faster with a screen reader even though my sight works just fine...
Re: Ask HN: I'm a software engineer going blind, how should I prepare?
#268Earlier quoted context omitted.
> You'll be amazed how good your memory will get without the crutch of sight That's all really interesting. I personally have a problem with my thoughts in that I need to "sound out" or read them aloud in my head. This sometimes really slows me down, I mull over a thought until it sounds right. Especially when I'm tired I can get stuck in a loop. And it applies when reading too, I can force myself to read faster but…
I can’t speak to physical blindness, but I have aphantasia[0] which basically means I cannot voluntarily invoke my minds eye. Up until I found out about it last year, I thought that “visualizing” things was a metaphor for thinking, as I didn’t realize people could actually see things without looking at them. There are varying degrees of aphantasia. For context, I am completely unable to “see” anything in my mind. I d…
I had many arguments with my wife about how I did not have visual dreams and did not see anything when I close my eyes. When she says she sees stuff when she closes her eyes, I always assumed it was some sort of metaphor and it was usual for human beings not to see anything when their eyes are closed.
I think when I "visualize" something, not limited to math and code, I do not see anything per se. Mostly I think my thoughts are directed graphs whose nodes are concepts I have in memory.
May I ask how did you get a diagnosis? And did you learn anything of use thanks to this diagnosis?
Re: Ask HN: I'm a software engineer going blind, how should I prepare?
#269I can't imagine how you must be feeling, so take what I'm about to say with a grain of salt.
Losing your sight is undoubtedly going to be one of the top five most important events in your life that will split everything into "before" and "after". Maybe it will be the most important. But it's still one of the top five. And right behind those five there will be another five that aren't quite as important, but still pretty close. Life has a way about it like that. (Some of us get dealt a better hand than others of course, but there are precious few for whom all top ten life events have smooth continuity and are all ecstatically positive).
I'm by no means telling you to take this lightly or not to prepare. It sounds like you're throwing yourself into this thing and doing the best you can to set yourself up for future success. That's great. But do take a long view on these things. You have fifty years ahead of you, and crazy shit will happen that will knock you off your horse maybe every decade or so.
It's not exactly that your anxiety is unwarranted, just that it's not telling you the whole story. This is (hopefully) going to be a long, long road. Aiming to have everything buttoned down at 24 (or 34, or 54) is not a reasonable expectation, blind or not.
Anyway, best of luck to you. If you want, I can put you in touch with a friend who's a developer with no sight. (Also happy to just talk to you for emotional support) My e-mail is in the profile.
Re: Ask HN: I'm a software engineer going blind, how should I prepare?
#270- You can do frontend coding but certainly some assistance is needed for verifying the UI design. In any decent sized project, Personally I prefer my sighted colleague to handle look and feel (mainly the CSS part - though I know CSS) as I feel it's not a productive use of my time. It's always better to have a UI specialist anyway. FE devs have lot of other things to do especially when it is SPA based.
- Visual studio is good for development and debugging (for .net related languages at least). If you're on windows use autohotkey and setup shortcut keys and hotstrings to automate repetitive actions and text. For instance I prefer bash for using Git and have setup commands like 'gtcom' which expands to 'git add . (newline) git commit -am ''. I just have to type the comment then. Since you'd be working exclusively via keyboard it's important you do more with less hits to reduce strain on your wrists.
- Another important thing is to be able to find alternatives to UI tools your colleague are using but which could be highly inaccessible. Your programming skills and knowledge of system internals will help you with that. Do not settle with any tool which decreases your productivity considerably just because the team is using it, as you'll be judged based on your deliverable and not what tools you used.
I second what @kolanos has written. Programming is mostly a mental job (no pun intended) and everybody has to load a representation of the program in head before one can start fleshing out good code. PG has also written about it