Coding Blind: Thoughts on the Curriculum?

Hi all,

I’m reentering the world of tech after a few years. To make a long story short, I’ve bounced around career goals and stuff for a while, and I’ve had the opportunity to take courses in IT. Basically, all that means is that I’ve got some general IT knowledge, and I’ve worked and still work in tech support.

I’m here not only to introduce myself, but also to ask a question and, perhaps, provide some general thoughts and encouragement.

For full transparency, I’m blind; I have no ability to see print, colors, and I can only see light out of my right eye. As such, I have to use a screen reader in order to use a computer by myself.

That said, I’ve enjoyed the curriculum so far as I work my way through the Responsive Web Design cert. Just to throw this out there, I have some previous HTML and CSS experience, but I’m excited to learn more since I haven’t coded in some years.

Now for my questions; sorry for the long post! First, is anyone else here blind? If so, have you run into any issues regarding the curriculum? What did you do to overcome the challenge?

For context, I’ve gone through the HTML and CSS modules and am going to create the survey as the first project. My general thought is that all of the coding has been good. However, for the colored markers, I obviously couldn’t read anything since the HTML there had no text, and the project was focused on the CSS. While I can grasp the code on an intellectual level, I wasn’t sure what I actually built. It is for this reason, among others (I’m thinking about the Data Visualization cert, for example), that I wanted to post this. In other words, I am curious to hear from other blind users and sighted users alike.

So, if you have any thoughts, feel free to share them. I’m curious to discuss this, especially in light of the fact that there are plenty of Web Developer positions out there. My current goal is to learn as much as I can and become a software engineer; whether or not it has to do with web development, I’m not sure. I’d simply like to be aware of challenges, since I know they’ll come up.

Finally, I’d like to say that I am not the first blind computer user to code; as far as I understand, most people who are blind, at least in my experience, are in the field of software development in some way; thus, I just want to make it known in case someone else somehow stumbles upon this and is thinking about coding. If you’re blind, you too can code! Since most of us here are teaching ourselves, it’s going to be a challenge, but your visual impairment is not a barrier unless you let it be one. Beyond blindness, let’s all keep going in this journey! If you have any thoughts, please feel free to share!


@JustANerdHere Welcome, and thanks for your insights. I’m not blind, but I am a web accessibility specialist and I have spent a considerable amount of volunteer time trying to make freeCodeCamp even more accessible. Certainly there are still accessibility issues of various degrees within the site. But I can also say that the staff take accessibility very seriously, and they almost always let me have my way when I want to make changes to enhance accessibility. So if you run into any issues with the site or have any suggestions to make it better, please post them in these forums and I promise you they won’t be ignored.

As far as other blind users here, I have interacted with several over the past few years, either helping them troubleshoot issues they are having, or working with them in order to implement a fix in the code. We even found a bug in JAWS which I submitted and was eventually fixed! Hopefully some of them will see this post and chime in.

So web development has multiple aspects. I know of a few stories about blind software developers. They describe their experience similar to yours. They can understand what they are doing at a conceptual level, but they aren’t able to see some aspects of their work.

Most blind developers I hear about don’t work on the user-interface side of things, so they might work on HTML, but generally don’t work on CSS. This generally isn’t much of a problem as what the user sees is only a small part of an overall system.

The one story that stands out is this one:

(hopefully this one is accessible :pray: )

There’s also a freeCodeCamp news post from a fellow blind developer: How to Get a Developer Job When You're Blind: Advice From a Blind Developer Who Works Alongside a Sighted Team

From what I’ve read, and understand developers who aren’t able to see have 2 main advantages.

  1. They usually have the ability to visualize their work and codebase more effectively. I’m not sure how you work, but I know plenty of developers who have 50 tabs open and are constantly wasting time scrolling to find the one they need.
  2. They care about accessibility. This might be obvious, but making things accessible is often easily overlooked, so being someone who would directly benefit from things being accessible makes you a resource in itself.

Having a dev-team that has diverse makeup isn’t just some social stance, it makes business sense as you want the product you build to serve a diverse set of users so it makes sense to have your product built by a diverse set of developers.

For example, I have short-term memory issues and thus I document everything extensively. I’m the person writing notes for every meeting and documenting every function. My team loves this aspect of me.

So it could be web development, or something else. There will be a job out there for you. Just gain the skills where you can and know its possible :+1:

Thank you so much for sharing! I am glad to hear that, and as soon as I started coding here, I noticed how JAWS-friendly the site is. Having used W3Schools before, I was glad to see the integrated code editor work pretty well. A possible suggestion I could think of off-the-cuff is to somehow allow JAWS to read the entire line of code. For example, to read whole paragraphs, I typically use CTRL+up or down-arrows. I’ve noticed that as I try and navegate through my code, if the code gets particularly lengthy, it likes to read the first part and doesn’t read line-by-line. When I use the CTRL and arrow keys, it does nothing. Not sure if that makes sense, but that’s something I noticed. It isn’t too much of an issue, but I think navegation can be just a little easier.

Yeah, I’m not surprised other blind folks have hopped on here. In my experience, it seems like a lot of blind people turn to coding. I avoided it for a while, but here I am!

1 Like

I definitely appreciate your thoughts, and thank you for sharing the articles!

One thing that stuck out to me in the second article, which was incredibly articulate and quite informative, was the issues concerning shifts in accessibility. I can very easily recall the issue regarding Firefox, for example. For years, Firefox was toutted by many as the most accessible browser; many plugins would only function in Firefox, for instance. Given that Firefox updates automatically, I paid little attention when it did, until one day I literally couldn’t use the browser. This issue was fixed, but it took time.

For me, I find running a screen reader at max speed doesn’t work. I’ve tried to practice a few times with it, and while I can understand some things being read, I overall much prefer the default settings instead. I’m sure that as I continue learning, this could change, but it’s worked since the days of when I used boxes running Windows XP, so who knows.

Thanks again for your thoughts, and if you have any others, I’d love to hear them!

1 Like

Do you have accessibility mode enabled in the editor? You can toggle accessibility mode on and off using Ctrl + e. I believe, or hope, that turning it on will encourage JAWS to read the entire line no matter how long. If that doesn’t work, can you provide an example of where you are running into this issue?

FYI, by default, the editor will wrap long lines of code on multiple lines so that you can see the entire line without having to scroll . I’m guessing this behavior is causing the issue you are having with JAWS. Enabling accessibility mode forces the editor to always display the entire line of code on one line, no matter how long it is.

Ya, Ctrl + up or down arrow has been hijacked by the editor. It allows you to visually scroll the editor without moving the keyboard focus. Probably not very helpful for you, but at least you now know that it is doing something.

I’m not sure how familiar you are with the various keyboard shortcuts that the editor offers. Some of them are standard shortcuts that most editors have and others may be a little more esoteric. You can get a submenu of all the various shortcuts by pressing F1.

You might find Ctrl + m helpful. It controls the behavior of the Tab key in the editor. By default the Tab key inserts the Tab character, but you can use Ctrl + m to change that behavior so that the Tab key takes you to the next focusable element on the page. As a heavy keyboard user, I use that one all the time.

Wow, I didn’t know about accessibility mode! Just tried it today while building the Rothko Painting. It worked well, as far as I could tell. I will have to take a look at the keyboard shortcuts, but thank you for letting me know about CTRL+M.

It was interesting building the painting. Like I said before, I can understand what I’m doing in a sense, but I am pretty certain Google is going to be my friend when it comes time to build full projects using HTML and CSS. Since there is no text in the HTML and only div elements, JAWS literally has nothing to go on for these projects.

Ya, I’m not sure it’s obvious what it does. I actually have a github issue open to create some sort of FCC help page which would contain information like this so that accessibility information is all in one place and easy to find. But these things take a while to materialize.