Ask HN: Resources for blind developers and sysadmins?
I'm not worried about going blind based on the doctor's opinion, but I am concerned that I will have to deal with long-term vision issues. Currently, I cannot read the text on my screen if I close my right eye, as the dark circle gets in the way of everything.
It left me with an interesting question. I'd read about blind people working as developers and sysadmins before. But I never really thought about it, because my vision was so good. I'm curious now, depending on how bad my eyes get, how would I transition so that I'd be able to continue my chosen profession? Are there blind developers and sysadmins here who can toss a few resources my way?
Much appreciated to the HN community in advance, thanks. I'm currently based in Asia, so about to sleep soon, hopefully I'll wake up with a big load of comments to read. ;)
44 comments
[ 4.3 ms ] story [ 86.8 ms ] thread[1] https://twitter.com/ezufelt/status/1003070722879651840
I wonder therefore if ed might be a surprisingly accessible editor for users with vision issues, or maybe its a case of users without vision issues simply finding it "no less hellish".
[0]: http://edbrowse.org
The philosophy of edbrowse, plus some light computing history, is in a beautiful article linked from that page.
http://www.eklhad.net/philosophy.html
I'm not sure what platform you currently use, but if not Windows, you're in for some challenges if you're blind or visually-impaired. I'm currently using Linux because I'm a console-based developer (I mean, I still use Firefox and the GUI but run most dev tools from the console.) This generally works well enough for me until I need an IDE, because my current codebase is C#/CSHTML/JavaScript/HTML/CSS/TypeScript, and I can't juggle all that state in my head without something like an IDE to help out. And, as far as I know, there's nothing like that available and accessible for Linux. My hope is that VSCode can help a bit, but Electron apps are currently inaccessible under Linux, which rules out a whole bunch of traditionally useful tools (No "Electron is bloated" arguments here please, this is something else entirely.) Unless you're a Linux user who uses mostly GTK-Gecko-based tools and the console, and those GTK-based tools don't use crazy custom widgets, you can make Linux work. But QT is challenging, Electron is out, and Chromium/Chrome are inaccessible (though I hear that is changing soon.) Windows offers lots more tooling, plus access to Electron apps, which opens up many more possibilities for non-console-based development.
But anyway, if you can at all transition your workflow to Windows before things get more challenging, I think you'll be in a better place. I'm about to ditch Linux soon, but for a high-end PC which will run VMs for anything I might need. Running a pile of VMs is probably the best solution to this issue, but second best would almost certainly be Windows. MacOS and Linux trail behind, unfortunately.
I also wish you good luck. Happy to chat if I can help more. nolan at thewordnerd dot info
I was away from Linux and Windows for 10 years because neither provided key chorded full screen zoom by default and now they do.
So, in short, accessibility support in OSX is good, but no longer best in breed, so choose the OS you're most comfortable with generally.
IOS accessibility is excellent. Screen zoom, VoiceOver, high contrast, etc.
They have excellent accessibility support baked in by default.
Things are getting better all around in modern Linux though because in recent Ubuntu releases you can enable voice narration, full screen zoom (my show stopper must have) and screen readers from the login screen.
Good luck!
You're awesome. Reading this made me tear up a little bit. There were a few blind software engineers at my previous workplace and I've always found it admirable. I wish you all the best.
As a software engineer, one of my greatest fears is losing my eyesight. I am currently not showing any signs of macular degeneration but having had LASIK, I am under increased risk of that happening. Had I known more, I would have kept my cornea intact. Now I feel slightly worried whenever I have problems focusing on text at night or getting blurry vision for a brief moment on occasion when I blink as these might be early signs.
My wife is low vision but not so much that she needs a full screenreader. Voiceover is overkill for her and has a steep learning / adjustment curve. Highlight-to-speak has been good enough thus far.
Do blind software engineers work exclusively on systems-type applications or does there exist technology for blind developers to create UIs?
Let's consider two groups for now, though there are many others. Folks who are blind or have pretty impaired vision and then those who have some usable vision. For those of us who are blind or mostly blind, we use speech and Braille to interact with technology instead of a visual user interface (UI). The program that translates the UI into speech/braille is typically a screenreader. On Windows, the two popular screenreaders are Jaws and NVDA. Jaws is proprietary, costing upwards of $1K to $1.5K depending on add-ons, etc., and was widely considered the best game in town for the longest time. around 11 years ago, two blind guys out of Australia, Mik and Jamie (Jamie now works for Mozilla), rightfully thought it was ridiculous that an already disadvantaged audience should have to pay more than what most folks pay for their computers to access them, and so they worked on the free and open source NVDA screenreader , which stands for non-visual desktop access. Anyways, on Mac, there's the built-In VoiceOver screenreader from Apple, though the mobile instantiation of this screenreader, the one that is built into every single IOS, WatchOs, and TVOS device tends to be superior to its desktop counterpart, which is suboptimal wen it comes to surfing the web, interacting with programs, etc. in my and others' opinion.
For our second group, there's screen enlargement. Hell, back in the DOS days, I would have my nose on the glass of the CRT monitor to read the text, which I enlarged a bit because my brother showed me the 'mode 40' command which did 40 lines per screen instead of 80, thereby doubling the height of characters and at that time, making them readable to me. Now, I rely purely on screenreading-based approaches. Programs like the magnifier built into Windows and Mac, ZoomText, and others exist to enlarge the contents of the display, change foreground and background colors far past OS capabilities, offer auto-panning and focus-tracking, and generally act as you would expect a smart magnifying glass to behave. Again, shout out to Apple here: all of their devices have this feature built-in.
So, in Linux land, we've got the Orca screenreader. Joanie has done a truly incredible job managing that project and the volunteer community is awesome, but it's not anywhere near as resourced as NVDA, for example. Therefore, I consider Orca a labor of love and the best tool around for accessing the Gnome desktop, but it's not as fully-featured as NVDA, Jaws, etc. again IMHO. On Linux natively, there is also the SpeakUp screen reader, which patches directly into the kernel and intercepts input/output buffers. SpeakUp has the advantage of getting you speech earlier to boot-time, and it supported/supports a myriad of hardware synthesizers, which is still a big deal for a subset of screenreading users. It does not work in GUI environments though. I'd be remiss if I did not point out Emacspeak, though it is a self-voicing Emacs environment with all the advantages and disadvantages therein. Gnome, and maybe KDE?, also has magnification, but it's been a little while since I've played with this, so not sure if it's just using magnification primitives of basic video card driver stuff, actually manipulating underlying windowing primitives, etc.
So, I know that's a ton of background/lead-in, and I apologize, but I just wanted to contextualize some of these answers. Also, note that I'm leaving out a solid 90% of things.
For sys-admin stuff, back when I did a lot more of it, I would use my windows laptop and then ssh to access an army of machines running various operating systems, mostly Linux. I would write scripts in Perl, later Python, to automate things for me, as most sysadmins do. I would u...
Speaking of whacky stuff to do to access Linux and text editing, I remember back wen Jaws and even NVDA had far worse cursor tracking in the Windows CMD window, so you couldn't be sure that when your screen reader said it was beside a certain character, that it actually was. This is something I argue no sighted user of a computer has probably ever had to deal with, and never for a duration of years. So what I would do is I would type 'z' and then route the screenreader's secondary cursor to make sure that the 'z' I added was added where it would/should have been, if my cursor was in fact where the screen reader said. Just imagine needing to text edit where you can't even trust the position of the system caret .... fun times!
May be worth a try.
One idea I thought promising was audio games and household assistance delivered through devices like Google Home and Amazon Echo. They could be programmed and controlled though a natural-language API like Inform7, which is used for interactive fiction.
I do not know of any working tools for developing these, but I heard of a BBC experiment called "The Inspection Chamber" that allows playing audio games solely through voice. There is an article at https://www.bbc.co.uk/taster/pilots/inspection-chamber
I know some people who were afflicted by macular degeneration at a younger ago. They speak positively about supplements that contain all three of lutein, zeaxanthin and meso-zeaxanthin[1]; which have shown some solid results[2] in slowing down progress of dry MD & preventing its progress to wet MD.
Wising you the very best of luck managing this!
1. Macushield or Macushield Gold (AREDS formula) https://www.macushield.com/ 2. https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4963902/
1. what can we as engineers without visual impairments do to make our work more accessible and easier to collaborate with?
2. are there tools that you wish existed / could make your life easier, but that would require a significant capital outlay / massive time commitment? of course you're a dev and can "scratch that itch" yourself, but there are only so many hours in the day and you have a day job.
I had a friend who was red-green colorblind who pointed out to me that a lot of the color schemes I was using in my talks were hard for him to quickly understand, and it was (pardon the pun) quite eye-opening.
https://news.ycombinator.com/item?id=18414562
And another related thread:
https://news.ycombinator.com/item?id=18478776 (Ask HN: Blind programmers, what can I do to make my code easier for you?)
I've had surgeries on both my eyes for retinal detachment before I was 22 years old (30ish now). I am now handling myopia of -16 due to bad eyes and post-surgery effects. I don't want to insinuate that you have the same conditions but I dealt with similar symptoms. Sudden loss of vision, dark circles and dark drops passing in the vision is a scary and distraught feeling.
The thought process you describe happened to me as well and is still in-progress. Dealing with the fact that having such issues "early" in life poses questions and anxiety for what might happen later. I kind of navigated over the years with two ways of dealing with this. First as you today with the ideas of pro-active actions to prepare for the day I might go blind: learning braille, using a computer without or very poor sight and thinking about possible career transitions.
I was lucky enough that the surgeries went well and my sight "kind of" stabilized. Over the years I adopted a more "optimistic" approach. Even with a bad start, it is still only a possibility and not a certainty to become blind. I decided to live my life as fully as possible with my current sight and avoid to end-up in a anxiety circle about it. Who knows I might still have my sight for life. And by the time it might deteriorate, technology and medical science will have improve, thus hopefully increasing the chances in treatment, tools and possibilities.
Good luck for everything.
You and any other blind developers here (or potential allies) are welcome to join. Just send a join request. I'll approve it.
https://groups.google.com/forum/m/#!forum/blind-dev-works
(I'm visually impaired, but not blind. I'm not really a programmer either, though I still hope to be one someday.)
https://www.esighteyewear.com/technology
He uses Windows, Window Eyes and NVDA, Cubase and Mixbus and an absolute shitload of custom-written AutoHotkey macros and C# applications which I've written over the past 10 years.
He's amazingly effective (and for certain workflows, with the help of the macros, far more effective than sighted people) and has recorded, mix and produced a broad range of music.
My point is, it sucks, but there are some incredible people, doing incredible things, who are completely blind.
Good luck!
I'm also a software developer, mainly using Visual Studio, and I use the Windows Magnifier in docked mode at the top of the screen.
My usable vision in my left (bad) eye, is similar to looking through a frosted glass pane, my right eye is better and allows me to use a pc as long as I zoom in on things.
Some things or adjustments I have made:
1) At work and at home I use a 27" 4K monitor. This is so that I can zoom in on things without it becoming terribly blurry. You could go bigger than this, say like a 40", but I've never tried it.
2) I also often wear sunglasses in the office to block some glare from ambient light and from the screen. This dims things quite a bit, but you get used to it. I can touch type, but mostly only the letters on the keyboard, so I sometimes struggle with the punctuation or programming symbols while I have the sunglasses on. I guess I could get a keyboard with backlit keys.
3) At home I use Safari's Reader mode A LOT, this helps reduce clutter, and allows me to zoom text automatically to a standard font and size. I always joke by saying I wish the web would go back to black on white html :)
4) I take a daily vitamin called Ocuvite, formulated with Lutein.
As for day to day development tasks, it's not that bad, however, it's important that you make your condition aware to your colleagues, so that they can understand and accommodate you. Whenever I go over to someones desk to look at something on their PC, they will almost always zoom in for me to see.
During meetings or presentations, I stand right up against the side of the TV or projector screen.
At the risk of rambling on too much, I hope you find what works for you!
Cheers
What he's achieved is quite impressive.