One of the questions I get the most is, “How do you code if you’re blind?” It’s natural to be curious about these topics. People often imagine coding blind must be extremely difficult—or easy, with the right tech—and they usually suggest high-end or even sci-fi-like solutions. Nevertheless, the answer is often way more simple than most people anticipate. This blog post isn’t just here to answer that—though we’ll definitely cover it. It’s also here to challenge misconceptions about blindness, showcase the real tools and skills I use as a blind programmer every day, and hopefully inspire other visually impaired folks who might be thinking about stepping into the world of software development.

Let’s start with the basics: What Is a Screen Reader and How Does It Work?
A screen reader is a piece of assistive technology that converts text displayed on a screen into speech. It lets blind and visually impaired users navigate the computer, browse the web, write code, and do pretty much anything a sighted person can do—just with a different interface. Instead of using your sight, you use your hearing.
As you see, contrary to what some may think, the technology most of us use isn’t some futuristic or cutting-edge invention— in fact, the first screen reader was created in 1986. Initially designed to operate solely on DOS, these tools have since evolved to support modern graphical operating systems. Today, screen readers are embedded into most of our devices—from computers and mobile phones to smart TVs—making them an ever-present part of our lives.
The Blind Programmer’s Setup: Simpler Than You Think
Of course, there are other tools some blind or visually impaired users rely on, like screen magnifiers, contrast enhancers, and braille displays. But personally, I stick with a screen reader and a good pair of headphones. That’s it. No fancy equipment needed.
In today’s market, there is a broad variety of screen readers available, and interestingly, the priciest options aren’t always the most effective. I personally lean towards free or open-source solutions like NVDA on Windows or Orca on Linux. See? No need to break the bank either if you want to start coding. These options are fast and highly customizable. With the right setup, screen readers make it easy to navigate complex projects efficiently. You can adjust the reading speed on most screen readers, making it easier to fly through code once you’re used to it.
Why VS Code Is a Game-Changer for Blind Developers
If you’re starting out as a blind programmer, I can’t recommend Visual Studio Code (VS Code) enough. It’s lightweight, customizable, and incredibly accessible. Screen readers work well with it, and many of the most popular extensions are usable right out of the box with no extra configuration.
I like how logical their keyboard shortcuts are and how well many extensions work with screen readers. Of course, it’s not all sunshine and rainbows. For example, VS Code could definitely improve how it handles terminal interaction with screen readers. Ideally, it would be great if updates always kept accessibility in mind—not just VS Code, but honestly any kind of software, to be fair.

Tips for Blind Beginner Programmers
If you’re a blind person thinking about getting into coding, here are some things that helped me—and might help you too:
Get to know your screen reader:
My favorite setup is on Linux (for more advanced users). However, for beginners, NVDA on Windows is one of the best out there. Learn how to configure it for reading code so it speaks punctuation and symbols. Coding Blind Tech has a great tutorial on that.
Use the right learning materials:
Look for courses that use real code editors or text-based formats—not just video or screenshots. That way, your screen reader can actually read the content. This is also a shout-out to all course creators: have your support materials ready for your visually impaired students.

Master the terminal:
The terminal will become your best friend. It’s a fast, keyboard-friendly environment where you can work efficiently without worrying about inaccessible user interfaces. I know it might be intimidating at first, but you will get the hang of it.
Learn as many shortcuts as possible:
Learn how to navigate the file manager and other common tasks you will be doing often on your operating system. This way, you can easily tackle tasks that would require the use of a mouse with ease. Use your keyboard as much as possible.
Be Cautious with AI Editors:
Many of them will rely on autocomplete and search-based editors built with visual feedback in mind and don’t always play well with screen readers. They can silently modify or delete code without announcing changes. Even relatively accessible tools like GitHub Copilot in VS Code need careful monitoring. Use AI tools sparingly and always double-check what they insert.

For open-source enthusiasts like me:
Stick with Xorg, Not Wayland: If you plan on using Linux with a screen reader, make sure your system is running Xorg instead of Wayland, since accessibility support under Wayland is still very limited. I shared more about this in my talk at LinuxFest Northwest. Pop!_OS or Ubuntu are great starter options—both have solid accessibility and strong community support.
Working with Communication Tools for Company Jobs:
Apps like Slack, Teams, or some email clients can be hit or miss when it comes to accessibility on desktop. Personally, I prefer using these productivity tools on my phone or tablet, where accessibility is often better. Pairing your mobile device with a Bluetooth or USB keyboard makes typing much easier, especially if you’re visually impaired and don’t like dealing with touchscreen keyboards.
Learning to Code the Right Way—Especially for the Web:
This should be obvious, but it’s worth saying: don’t skip proper HTML structure and accessibility. YouTube tutorials often show how to “make it work,” but rarely teach how to make it accessible. I learned this the hard way. Poorly structured HTML will confuse your screen reader and result in frustrating feedback like “blank… blank… blank…” instead of meaningful navigation.
Use semantic elements and proper attributes. Tags like aria-label, headings, and landmarks can make a big difference for accessibility. The documentation at developer.mozilla.org is a goldmine, especially their sections on accessibility. Honestly, this tip applies to all programmers, not just blind ones—accessible code is just better code.
Follow the visually impaired software developers’ community:
Find people like you. Follow us here and on social media—we share tools, tips, and resources for blind coders. And connect with others online to find mentors and inspiration.
Sighted Devs, Step Up—The Visually Impaired Developers Are Raising the Bar
When it comes to what qualities a good developer must have, blind coders may be one step ahead. One of the most important skills in programming might be attention to detail—and that just so happens to be a strength for many blind coders. When you work with a screen reader, you naturally pay more attention to syntax, spacing, and structure. It trains you to listen closely and focus on the little things, which can actually be a big advantage.
We also tend to write clean, readable code out of necessity—because confusing structure makes it harder to navigate. That kind of discipline can set visually impaired software developers apart in team environments where quality and collaboration matter.

Before wrapping up, I want to share something personal.
I’ve missed out on learning opportunities simply because people didn’t understand—or didn’t want to understand—accessibility tools. Limited support and outdated attitudes kept doors closed that should have been open. So today, I share this to inspire change. People like school personnel, policy makers, and even content creators must better understand what blind programmers can achieve, then take a more inclusive attitude that will benefit all the community.
Whether you’re here to challenge your assumptions or to start your own journey as a visually impaired programmer, I hope this post shows you what’s possible. With the right tools and mindset, there’s no reason why a blind person can’t become an incredible software developer.
If you’re attending LinuxFest Northwest, be sure to check out our talk on accessibility in open source. We’ll be showcasing Igloo, our fully accessible, self-hosted media center built with screen reader users in mind. It’s a great example of how open source projects can prioritize inclusion without sacrificing functionality. If you’re in the area, swing by and join the conversation! We’d love to connect, share our journey, and inspire more developers to build with accessibility from the start.