6 ms·
Software Development at 800 Words per Minute
- ferfumarma 1y agoRapid Serial Visual Presentation (RSVP) is a closely related topic that was popular on HN about 10 years ago. There were browser extensions that would present web content at 800 WPM, and they were fantastic. I wish they hadn't disappeared.
- ray__ 1y agoThis is really interesting. I wonder–would it be possible to listen to an audiobook or PDF at 800 wpm once one learns how to understand the screenreader "language"? Presumably the cognitive load would get heavy if the content were a stream of unstructured prose as opposed to code.
- Neurrone 1y agoYes, that is how I usually consume my content. Cognitive load is actually lower for unstructured prose compared to code, think about fiction for example. Code is much denser. When I read to relax, it is for enjoyment, so I don't aim to read as fast as possible. This is why I still listen to human narrated audiobooks, since a good narrator adds to the experience.
- supriyo-biswas 1y agoI worked with a developer briefly who would produce code at an extremely high speed (this was before LLMs) and I've observed them write 50% of the code for two projects in the matter of a few days. While I never got around to asking them how they coded so fast, this was probably one of the tools in their arsenal.
- elevaet 1y agoFYI in case you didn't read the article - it's not about LLM coding but about a blind software developer who uses a screenreader at 800wpm to read code. It's really astounding to hear how fast that is I recommend checking it out!
- supriyo-biswas 1y agoI understand it's about LLM coding, but if I don't put that disclaimer there'll be tons of comments telling me how programming skills are obsolete in the LLM age.
- brna-2 1y agoPlease read again.
- Cthulhu_ 1y agoI can imagine it's practice and self-disciplilne; pick and know a language/tool instead of reinventing the wheel or doing research first, write like you've always written, do new projects in that same toolkit multiple times, and (self discipline), just get on with it. I struggle with that tbh, every time I'm on a new project I get into a "beginner's mindset" and look up the basics for a tool again instead of trusting myself that I know enough and what I write will be good enough.
- Unirely01 1y ago[dead]
- gizmo686 1y agoSome vaguely related research: https://www.science.org/doi/10.1126/sciadv.aaw2594 https://www.science.org/doi/10.1126/sciadv.aaw2594 If you compare different languages, the speed people tend to speak (measured in syllables per second) varies significantly. However, the number of possible syllables also varies significantly. Once you account for that, the speed of speaking in terms of information is fairly consistent across languages. I'm not aware of any specific research directly on point to what the author of the posted blog describes. But his hypothesis that having a consistent speaker reduces the cognitive overhead of decoding seems to be part of the story. However, we would expect a similar effect in people who read, as the writing is also highly standardized. However, I've generally seen silent reading speads for English estimated at around 250. Getting up to 800 WPM puts you well within the realm of speed reading territory. The relatively high structure of code and rote emails probably helps too.
- Neurrone 1y agoI was referring to how synthetic speech always talk in exactly the same way down to inflection and pauses whenever it encounters the same phrase, which isn't how people talk. So this helps a lot with comprehension. Structure of the content does help as well.
- ljf 1y agoI've been using Optimal Recognition Point (ORP) style apps (I use Balto Speed Reader) to comfortably read at 800wpm or more - for fact books and materials I can keep this up for quite some time - though for fiction I find it too fast to parse all the characters and tones of voice (https://www.researchgate.net/figure/Spritz-display-The-Optimal-Recognition-Point-ORP-is-highlighted-in-red-For_fig1_279084843 https://www.researchgate.net/figure/Spritz-display-The-Optim... )
- giantrobot 1y agoHoly shit getting to that paper was such a hassle. I had to jump through so many hoops to just download a PDF. Not your fault at all but anti-bot stuff and general enshittification has is ruining the web for actual people.
- markasoftware 1y agook, so you can understand the words at 800wpm...can you really comprehend what's being said? When I listen to youtube videos at 2x speed I can usually pick apart all the words just fine but I often have to slow it down to properly process the meaning behind those words.
- raincole 1y agoUh, the author is visually impaired. So they really have no other choice than "really comprehending what's being said."
- photios 1y agoIt's a matter of practice and progression. I listen to podcasts and audiobooks in English at 3x speed, but it took me maybe 2-3 years to get to this level. I understand all casual and technical content just fine. The only thing tripping me is fiction where I struggle with character names that I don't know how to spell (my visual memory needs it!). That's an English-only problem though. I don't have any of those issues with content in my native language (Bulgarian).
- precompute 1y agoI can read at speeds higher than 800wpm and comprehend everything. It's about practice. Although, yes, simpler material is easier to read at higher speeds.
- brna-2 1y agoI don't know exactly what top speeds I used, above 2.5x, under 5x, but I listened to some lectures on youtube as a background process to doing some work. I would be sure I have missed something, as I worked so I had this practice of just setting the video time back and checking if it is stuff that I already know. I was amazed to see that mostly all data was retained already and I had the feeling of listening to the same stuff twice. These speeds were already non-comprehensive to my colleagues, but I thought there is no point in trying to get used to higher speeds, and to see the author processing these kinds of flows of data is just inspiring and amazing, Ill try to get better. But I am not planing on listening to code :D
- collectedparts 1y agoJust FYI OP (assuming OP is the author of the post) there's no margin on your blog. Text goes all the way to the edges. As a related sidenote, I wonder how quickly ChatGPT replaces much of the customized tools here? ChatGPT is probably pretty proficient at being able to describe the contents of eg a screenshare, or a screenshot of a website.
- Neurrone 1y agoEdit: typo I didn't post this onto HN, so I only just found out about this thread. Thanks for mentioning the margin issue, I've tried fixing it now. Let me know if its still an issue. > I wonder how quickly ChatGPT replaces much of the customized tools here? Probably not many. It is prone to Hallucinations, and the latency involved for getting a response means that I only use it when I have to.
- collectedparts 1y agoAwesome, looks great! Thanks for jumping into the thread here.
- Fokamul 1y agoBig respect to you, I cannot imagine being functional without sight. Pretty interesting post. "I use my computer during natural pauses in the conversation or presentation." Casually dropping that everyone is speaking so slow. That you must use the time between sentences for something meaningful, pretty funny. :-)
- Neurrone 1y ago> Casually dropping that everyone is speaking so slow. That you must use the time between sentences for something meaningful, pretty funny. :-) Didn't mean it that way . But that is truly the only way that I can use the computer while in a meeting.
- joseda-hg 1y agoIf I'm listening to a Podcast or a Video at 2X or 3X, coming back to normal feels glacial by comparisson If you're used to 800 wpm bursts, I'd Assume normal speaking pace will feel slow any way you cut it On a slightly related note, have you felt this affecting your speech patterns?
- Neurrone 1y ago> If you're used to 800 wpm bursts, I'd Assume normal speaking pace will feel slow any way you cut it Edit: if you're referring to videos or podcast then yes, assuming the objective is to get information as quickly as possible. Actually that isn't really the case. That might happen if you're asking someone to read something to you for an extended period of time, but that's not how normal conversations happen. > On a slightly related note, have you felt this affecting your speech patterns? Nope.
- evertedsphere 1y agoi've always wondered about the possibility of hybrid visual-audio interfaces for sighted users. a screen reader producing lots of words at the same time that you're looking around the screen—perhaps the visual ui would have to privilege symbols over words, to not force you to perform two language processing tasks at once imagine the bandwidth
- dherikb 1y agoVery good article. After read about the poor scenario where the Linux accessibility tools is today (https://fireborn.mataroa.blog/blog/i-want-to-love-linux-it-doesnt-love-me-back-post-1-built-for-control-but-not-for-people/ https://fireborn.mataroa.blog/blog/i-want-to-love-linux-it-d...), I was wondering: if maybe the developers start to use these accessibility tools to improve their speed reading (and productivity as well), this could also helps to prioritize the accessibility features and bug fixes in Gnome, KDE, Qt, etc.
- mtlynch 1y agoI'm getting intense deja vu reading this. I remember a very similar article from 3-5 years ago. Even the title feels like I've seen it before. I thought this was a repost from that one but I remember the previous post had a photo of the author's desk with a keyboard, desktop, and no monitor. I tried searching algolia, but I can't find it.
- Ndymium 1y agoIt was quite likely this one: https://www.vincit.com/blog/software-development-450-words-per-minute https://www.vincit.com/blog/software-development-450-words-p... Sadly the audio samples are gone. I'll need to pester someone to fix that.
- mtlynch 1y agoYes, that's the one. Thanks! And thanks for writing it, assuming you're the author.
- Ndymium 1y agoI'm not, the author was my colleague at the time. I can only hope to be half as brilliant as him.
- rovr138 1y agoFirst time I saw it was here, https://boingboing.net/2017/08/28/this-blind-software-developer.html https://boingboing.net/2017/08/28/this-blind-software-develo... It has the audio samples in case it's useful
- mdaniel 1y agoI thought you meant they were 404, but no, it seems there's no markup to even attempt to link them. What's strange is that all the copies in Wayback that I spot checked all the way back to 2022 also didn't have any markup, so I suspect it never(?) did
- 1y ago
- thunderbong 1y agoFrom the article - > Windows might not be trendy among developers, but it’s where accessibility works best. I don’t have to worry about whether I can get audio working reliably. The NVDA screen reader works on Windows and is free and open source, actively maintained, and designed by people who are screen reader users themselves. > That said, I’m not actually developing on Windows in the traditional sense. WSL2 gives me a full Linux environment where I can run Docker containers, use familiar command-line tools, and run the same scripts and tools that my colleagues use. Windows is just the accessibility layer on top of my real development environment. > I use VS Code. Microsoft has made accessibility a core engineering priority, treating accessibility bugs with the same urgency as bugs affecting visual rendering. The VS Code team regularly engages with screen reader users, and it shows in the experience.
- mbb70 1y agoHis comments on VS Code reminds me of the quote "Good accessibility design is mostly just good design": > Consistent keyboard shortcuts across all features, and the ability to jump to any part of the interface by keyboard This is something I notice and appreciate about VS Code as a fully sighted person. Just like I appreciate slopped sidewalk cutouts when I'm walking with luggage. A11y is a big commitment and cost, and of course not all a11y features benefit everyone equally, but it has a larger impact than most people realize.
- Neurrone 1y agoYup, it does. I was an early adopter of VS Code. It has been extremely satisfying seeing the progress they've made with accessibility. I provide feedback on a semi-frequent basis. Nowadays its only to flag regressions.
- hombre_fatal 1y agoI've been working on polishing accessibility features for a hobby web app, mostly out of curiosity to see what a deep dive would look like. Some of it is definitely UX polish, like if a button can be pressed to toggle a sidebar, then ESC should dismiss the sidebar and return focus to the button that toggled it. And when the sidebar opens, focus should be moved to the top of the sidebar. Though you can also get trapped in a fractal of polish-chasing. When it comes to screen readers and live-content like a rich chat app or MUD client, I'm not sure how you would target anything more broad than, say, Safari + VoiceOver on macOS and then some other combo on Windows. You quickly realize the behavior you see is an idiosyncrasy in the screen reader itself.
- Neurrone 1y agoAuthor here, surprised this somehow got onto HN since I only posted on Mastodon. Happy to answer any questions.
- Vinnl 1y agoGreat post. When you're reading a Mermaid diagram, do you just happen to have memorised that "dash dash greater than" means "arrow"? I assume the screen reader doesn't understand ASCII art. And how painful is reading emails? HTML email is notoriously limited compared to HTML (and CSS) in the browser, but it's pretty hard to add structure to a plain text email too. How annoying is it when I do so using e.g. a "line" made out of repeated dashes?
- Neurrone 1y agoOh boy, don't get me started on emails. HTML emails are such a pain because of the hacks needed to get it to render properly across multiple devices. So I hear a lot of information about the tables being used for layout purposes, which is a pain because the tables are not semantically meaningful at all. And then there are emails that just have one or more images. For a line of dashes like "-------", most screen readers can recognize repeating characters, so that string gets read for me as "7 dash". If using an <hr> element, then there is no ambiguity about what it means.
- cess11 1y agoUsers of the email client mutt has a similar problem, it doesn't render HTML and CSS and displays it as text, so instead they've developed a variety of workarounds like pushing the email body through a terminal web browser before showing it in mutt. Might work for you too. Edit: Also, do you MUD?
- Neurrone 1y agoOh yes. It was one of my formative childhood experiences. My first mud was Alter Aeon, but I haven't played in almost 10 years. I enjoyed myself during the 5 years or so that I played and got to know a lot of people. The first first thing I ever programmed was a bot to automatically heal group members. Then Empire Mud, but I left due to disagreements with the admin. I loved the concept but it didn't really have the playerbase to support it. More recently, I was on Procedural Realms. But I was affected by 3 separate instances of data corruption / loss, the last of which resulted in an unplanned pwipe since there were no offsite backups and the drive on the server failed. Years of progress gone due to lack of backups, so I'm never going back. Ever since, I've been trying to find something else. Perhaps I'm just getting older but I don't have the patience to grind that I once had, which rules out most hack and slash muds. These days, I prefer something with interesting quests, places to explore and mechanics. What muds do you play?
- narmiouh 1y agoThis gave me new perspective. Both on what's possible with our ears/cognition and what our eyes do for us (for example seeing the extra quote so easily). Appreciate this very much and Thank you for what you do Neurrone!
- Neurrone 1y agoThanks for reading :)
- thewileyone 1y agoI've watched a young blind coder in person, using a screen reader to build a webpage. I was impressed by his ability despite his disadvantage!
- spyrja 1y agoFor anyone wanting to trying this out on YouTube, select your video, open the Web Developer Tools with Ctrl+Shift+I, then type this (followed by a carriage-return): document.getElementsByClassName("video-stream html5-main-video")[0].playbackRate = 5; // Or whatever speed you choose