Learning to type at 100 WPM in two weeks

tl;dr

  • It’s hard to underestimate the importance of typing.
  • Unless you are a journalist, legal secretary, or professional writer, you probably don’t get enough practice to ever become truly fast.
  • I built Typr and used it to simultaneously read & type “Surely You’re Joking, Mr. Feynman!”. Two weeks and 100,195 words later, I was maintaining between 100-110 WPM after starting out at 50 WPM.
  • If you like reading, kill two birds with one stone by using Typr to practice typing material you would otherwise be reading.
  • Looking for something more modern, web-based, and just overall better? Check out the newer and improved Typr (web-app).

Background

Despite the rise of mobile tech and associated input modes such as voice-recognition, “swipe” typing and various other touch-screen keyboards, the mechanical keyboard is still by far the fastest, most accurate and most widely-used input device used to communicate with computers. While typing is not the most exciting topic, it’s difficult to understate the centrality to modern life.

Acknowledging this, I have at various stages had made efforts to increase my typing speed by trying various online typing exercises, even going as far as forcing myself to type engineering reports with a towel covering my hands and keyboard so I couldn’t cheat by looking at the keys. A few weeks of doing this on-and-off took me from being completely unable to touch-type to being able to touch-type with moderate accuracy at around 50 WPM (the typing speed of the average person), but after this I hit a glass ceiling - the online exercises were boring, repetitive and generic, and I would find myself slipping back into old habits whenever I was under any sort of pressure.

I wasn’t satisfied with having an average typing speed - I wanted to master the skill so I could take detailed notes without breaking concentration, write emails at the speed of thought, or simply carry on typing while talking on the phone. Of course, this was going to require putting in some solid hours in front of a keyboard.

Getting mileage

It’s almost impossible to master a skill that relies so heavily on muscle-memory without putting in solid hours, and most people who could benefit greatly from the above skills don’t get the opportunity to spend large amounts of uninterrupted time typing like a journalist or legal secretary might.

Something I do spend a lot of time engaged in is reading, so I looked around for a typing tutor app that would let me import my own reading material. There are a few apps that let users copy-paste their own material to create custom tests, but they came with crappy uner interfaces while I was hoping to find something modern and useable that approached “eBook reader”-like experience, paired with the additional functionality layer of a built-in typing tutor.

If it doesn’t exist, build it

It turns out this product doesn’t exist, so as any self-respecting engineer would do, I built it. The first version was cobbled together in Python:

Screenshot of Typr (desktop version) with the Autobiography of Ben Franklin

Reading & Typing the Autobiography of Ben Franklin

After building the basic interface, figuring out how to extract the text body from .EPUB files (hint: it’s just a .ZIP file full of .HTML files), building in navigation, bookmarks, keystroke recording, and live WPM reporting, I started typing “Surely You’re Joking, Mr. Feynman!”, a book I had been meaning to read for a long time.

Progress was initially very slow, and the act of typing distracted from the flow of reading and absorbing the material. I found that reading at only 50 WPM (around 20% of my usual reading speed) initially resulted in less comprehension - my brain just wasn’t used to absorbing the material at that rate, and was no doubt distracted by the act of typing.

I was really enjoying the book however and persisted, finding that although my average speed hadn’t increased much, I was able to fall into a constant rhythm making almost no mistakes, and eventually realized that (except for numbers and special punctuation), the typing had become almost completely subconscious. It was around this time that I realised I could actually type faster - a lot faster - than I had been. Over the course of an afternoon, my average speed shot up from around 65 WPM to over 90 WPM.

Being able to now move through the book at a more reasonable pace not only made the experience a lot more enjoyable - it also meant I was able to fit significantly more practice into a shorter period of time (further compounding the benefits). After a couple of weeks, I had finished typing the book, and considering it contained just over 100,000 words it shouldn’t have been such a surprise that I was consistently typing at speeds over 100 WPM, with short bursts of 120+ WPM.

I had not only obtained about 20 hours of solid and focused practice - I really enjoyed the book. Comparing this with the my initial attempts at improving my typing where I might have spent a maximum of 15 minutes per session of unfocused practice typing boring material using an online typing tutor, it would probably take a year to clock this amount of practice assuming I didn’t drive myself crazy in the meantime.

A step further (key insights)

Excuse the pun. Also fair warning: this is your last chance to go back before things get nerdy.

After typing a 352 page book, I had accumulated interesting keystroke data which visualized as a bubble plot provided some clear insights:

Some expected trends were confirmed:

  • Speed for numbers (black) and capital letters (blue) was generally lower than lowercase letters.
  • Characters I had practiced more (larger bubbles) were generally both faster and (to a lesser degree) more accurate.
  • A wide spread of results for non-alphanumeric characters, with speed and accuracy roughly correlating to occurence rate.
Interesting revealing areas for improvement

The most interesting data appears in the top-right quadrant:

  • Lowercase “x”, “c” and “b” (and to a less-degree “i”, “p”, “m” and “m”), despite a high occurence rate, exhibited relatively low speed and accuracy for the “lowercase-letter” category.

These results let me take a more targeted approach to the boring and mostly irrelevant exercises mentioned above, allowing me to focus only on improving use of the most problematic keys.

Still scrolling?

Like me, you might need a new hobby. But seems you’re still here – have you ever used any strange tools or hacks you to achieve accelerated learning? Or maybe you have a great idea for a learning tool but don’t know how to go about building it, or whether it is even possible. If so I would love to hear from you. Feel free to leave a comment below, or to reach out to me directly.