3l: The keyboard layout that took me from 0 to 100 WPM in 13 days

2024-03-13

3l, also known as threelayout, is a keyboard layout designed by Mines alumnus Jack Rosenthal. It's distinguished by its two additional layers, a symbols layer and a cursor layer, in addition to the usual lowercase and uppercase. With 3l, any special character can be typed with just the three letter rows, which is very handy for writing code. Additionally, the home row of 3l comprises the most common letters in English, minimizing finger travel distance. The project's README says the goals of this arrangement are "to increase hand alternation, reduce bottom-to-top row jumps, [and] decrease lateral motion."

I was already a decent typist on QWERTY, averaging about 120 WPM, and at the time of writing, my TypeRacer record is 156 WPM. I was at first skeptical of trying 3l because I've already tried Dvorak, another layout that congregates common letters on the home row. I reached 100 WPM on Dvorak in a few months in high school, but it felt uncomfortable, and I never reached my QWERTY speed, so I returned to QWERTY.

My 3l experience began like my Dvorak experience. For the first few days, typing anything was agonizingly slow. Password entry was a multi-minute puzzle. I was so desperate to graduate this stage that I spent a disturbingly high number of hours on Monkeytype and TypeRacer. My greatest challenge in the early phase arose from an alignment of the ideologies of 3l and Dvorak—putting the most commonly used letters on the home row.

diagram of the Dvorak layout
diagram of the 3l layout

Dvorak is on top; 3l is on the bottom.

The home rows have nearly identical keys, but in slightly different places. Perhaps the worst of these is the proximity of a and o in Dvorak combined with the fact that a in Dvorak is o in 3l.

Thanks to my first-day grind, I no longer needed to reference an image of the layout by the second day. I kept practicing it, using it for everything. Vim was even more satisfying than usual because common Normal Mode commands like ^, $, and * were easy to reach. Additionally, all the brackets in programming ((){}[]<>) are very easy to type with the symbols layer. For non-Vim text entry, the cursor layer can type Home, End, PageUp, PageDown, and the arrow keys all without moving the left hand fingers more than one row above the home row. Even backspace and delete can be typed with the cursor layer.

Right before the opening ceremony of Blasterhacks, I finally broke 100 WPM.

screenshot of TypeRacer asking me to take a typing test to confirm that I exceeded 100 WPM

Finally, the big milestone!

This was a rare spike for me; my average was much lower. Nonetheless, it felt gratifying to see my practice yield a measurable result.

The next phase was trying to achieve parity with QWERTY. When writing code, I think I'm already close because of 3l's inherent advantages, and besides, I'm usually bottlenecked by thinking rather than typing. For prose, though, I currently average about 95 WPM, and I'm writing this six weeks after starting. My improvement curve has leveled at a disappointing speed.

It took me a very long time to reach 120 WPM in QWERTY. I practiced for years, and I plateaued when I stopped practicing. 3l's prose advantage over QWERTY is minimal, especially when accounting for QWERTY's universal advantage: we've all been practicing it for a very, very long time. QWERTY is a good layout whose design arose from careful thought. The world's fastest typist uses QWERTY.

Learning a new layout may augment speed by teaching proper home row placement, but typists who already use most of their fingers are unlikely to see speed improvements. However, that doesn't mean new layouts aren't worth trying. There are many other reasons:

  • It can be a lot of fun.
  • It improves hand-eye coordination and the ability to picture things mentally.
  • For 3l specifically, the symbols layer makes typing code more comfortable.
  • Also for 3l specifically, the community is small and full of exceptionally cool and nerdy people.

I've still got a long way to go, and in fact, I sometimes doubt that clustering the most common letters on the home row is a good strategy, but I'm excited for the future and where I can go with more practice. I'll be sure to continue updating my progress on this blog!


Recent Posts