I recently built a browser extension like Vimium that lets you browse the web with just your keyboard shortcuts. While building it, I came to realize that it has great potential for helping the disabled. I searched more on the topic of web accessibility and learned about screen readers.
I tried out several screen readers including Voice Over, Chrome Vox, and NVDA. The experience wasn't very good, but that might be because I'm unfamiliar with them. They seemed dumb, tedious, repetitive, and simply not tailored to the web.
It prompted me to question whether there is a better way to make the web accessible to the visually impaired. I don't know much about the screen readers and why they work the way they do, but I felt that at the very least they can be more intelligent and configurable. As a person without disabilities, I'd be tempted to enhance my browsing experience with a screen reader regularly if it provided the right features and didn't interfere with regular browsing.
I did some more research, and it seems that desktop screen readers like NVDA are limited by the accessibility APIs provided by browsers. They provide the features they can given the limited view of a web page a browser provides.
I think it's possible to make a much more user-friendly screen reader-like application as a browser extension which has direct access to the underlying document and browser APIs. My experience building a keybinding extension has shown that there is a lot of information in web pages that could be exploited to make browsing better that is simply ignored. It baffles me that Google's Chrome Vox screen reader extension does little beyond emulating the functionality of existing desktop screen readers.
Before I invest significant effort trying to create a screen reader alternative, I'd like to know if I'm missing something. Are my thoughts misguided? What bothers you about screen readers? How can they be improved?