Typing Speed Matters for Software Developers
Typing efficiency and speed is an often underrated and underappreciated skill for new and novice developers. I teach a coding bootcamp. I see adults of all ages, talents, backgrounds and walks of life start their journey into software development.
One issue, of many, I have with coding bootcamps is that they say there are no prerequisits when there definitely are. I’ve seen students start bootcamp with a brand-new laptop, likely their first, log onto the Zoom class all bright eyed with ethusiam and wonder. They’re ready to learn, only to then be crushed because the type minutes per word, have no idea how to work their computer and they quickly burn out. If you’ve never downloaded a zip file and extracted it, or done basic computer tasks, learning to code may be something you should wait on doing, especially if you’re planning on dropping $10,000 USD and 6 month of your life on a coding bootcamp.
One of those many skills that help with this is typing and a good keyboard. Software developers type A LOT. I always hear the poor argument “programmers spend most of their time thinking, not coding” as to justify very slow typing speeds. I bet those same people would get mad if they waited 30 minutes for their food at a sit-down restaurant only to see the waiter spend 10 minutes slowly walking to their table to bring them their food; “most, 75%, of the time was spend cooking it, not serving it”.
Developers don’t just type code, we write Slack messages, emails, JIRA comments, JIRA tickets, documentation, GIT commit messages, terminal commands, Google queries etc. That is a LOT of typing. If a developer types 5,000 words per day and they type only 30 words per minute that is 2 hours and 46 minutes of typing per day. If that same developer works up to a decent 90 words per minute that time drops to 55 minutes; saving nearly 2 HOURS per day to do other things! That means they get a whole extra 9 hours and 25 minutes per week, basically an extra work day per week!
Small changes add up to a lot. Even if YOU only type 2,000 words per day and go from 45 WPM to 60 WPM that is still an extra 11 minutes per day or nearly hour per week or 44 hours per year which is still a whole extra week of productivity!
Steps to a Professional Typist
I’ll cover the steps to becoming an efficient (notice I didn’t say fast) typist.
Ten Finger Typing
Type with all 10 of your fingers. Not pointer fingers, not 4 fingers, all 10. I promise it is worth it in the long run.
Home Row
Always have your fingers start and return to the home row when you are typing. One can even type over 100 WPM while always returning to the homerow. This increases accuracy.
For faster typists, I suggest what I call the prancing method
which jsut means that you type each word as quickly as possible but pause long enough between words to return your fingers to the homerow and read / think-of the next word. This works well over 100wpm. The pause between words will eventually shrink and you’ll learn to read / think ahead when you are typing. Again, I personally care more about efficiency and accuracy than raw speed.
Touch Typing
Learn to type without looking at your keyboard. This does take some practice but it can be done.
Hover
Don’t rest your palms on the keyboard or laptop. They should hover. This may seem weird at first but this keeps the wrist straight and prenvent RSI.
CTRL, SHIFT
Learn to use the left control and shift for right letters. For QWERTY, you should be using LEFT SHIFT for writing ‘P’ since P is on the right hand. You can turn this setting on in Monkey Type to enforce this. I personally don’t but it isn’t a bad idea.
Advanced Techniques
Just pratice Monkey type for 5 minutes per day. Really focus on 100% accuracy, touch typing and proper technique; speed comes with time. Some other things to practice are rolling letters.
DVORAK / alternative layout
I recommend DVORAK, COLEMAK or any common alternative keyboard layout. Later, sure make your own custom layout but having a common one makes it easy to switch your work computer.
ERGO Keyboard
There are many ergo keyboards out there. I prefer something concave, and split with thumb clusters like the KINESIS. I like my MOONLANDER but the keys are pretty far apart and don’t work for small hands and it isn’t concave. The GLOVE80 or DACTYL are good alternatives.
Conclusion
Software developers type, A LOT, I’m typing this blog post right now. The more efficiently and quickly we can type the more time we have for coffee breaks an occasionally touch grass. I’m not saying everyone needs to type 160WPM.
I think 80-100 wpm with 90% accuracy over hours is a great long-term goal. Also, get yourself an ergonomic keyboard, they’re expensive but last years and will prevent RSI. Especially one that supports QMK so you can program your own macros which actually reduces the number of keystrokes you need; again efficiency > raw speed. My Moonlander is great but it doesn’t work the best for raw speed, but I don’t care. I can easily type 80-WPM all day long with fewer keystrokes and less strain on my wrists than if I typed on this MBA keyboard, what I’m using right now. Granted it is so much easer type 160 WPM on a low profile MBA keyboard but I have a very hard time sustaining it. My Kinesis however is amazing. I can type full-speed on that thing and it is SO comfortable.
This is also why developers should know their operating system of choice, their IDE and other tools well. Learning to navigate code even 2% more efficently adds up to over 40 hours of time savings in a year, that’s a whole extra WEEK worth of work! If you find 5 places to become 2% more efficent then suddenly you are saving 5 weeks worth of effort per year. I’m not saying go crazy about optimizing everything, but it is worth spending a few hours per month learning to be just a little more efficient with your tools.
Another thought
I think 70-100 WPM is sufficient. We aren’t going for speed records but long-sustained typing speed and efficiency. My mom was a medical transcriptionist for many year and can type 115 WPM, fast but not 200wpm like world records, BUT her speed is extremely impressive when you realize she could write 125 WPM with full punctuation, no mistakes AND doing it for 8 hours straight. I remember writing up a school paper by hand and forgetting to type it up as a kid. I dictated the paper to her and she was typing faster than I was reading! Printing seemed to take longer.