I've always found I'm bad at typing. I make a lot of typos, my speed is not that fast and I don't manage to use all my fingers.
Recently, I have been working on a Java code base and I got very frustrated by the fact I'm a slow typer!
As my productivity is bound to a typing speed that could be improved, I decided to train myself to touch typing. It's a bit frustrating for now because my speed is about 40 wps when I'm training on gtypist. But I'm training every day, and even if my improvements are not as fast as I'd like, I have to admit I'm already a better typist:
- I can now type with my ten fingers,
- I discovered that I can use the left shift key,
- I can type without looking at the keys with a decent accuracy.
Till now, I was using tricks to compensate my lack of speed :
- Using Vim,
- Switching to QWERTY layout though I'm French: the accessibility of keys [, ], { and } on the AZERTY keyboard is soooo painful!
- Adopting a programming language that requires less typing (Python vs Java)
Though being a proficient developer doesn't rely only on typing speed, typing faster maximizes the throughput between idea and code.
I'm still far from Gary Bernhardt. Seriously, what is this guy typing speed? 120 wpm? It's insane!
I'm also thinking about investing into a mechanical keyboard. Maybe an ergonomic one, like the Ergodox EZ or the Keyboardio.
Edit 1: according to @fabi1cazenave, the Keyboardio is far better than the Ergodox and French people should use the QWERTY Lafayette layout.
Edit 2: ten years ago, Steve Yegge wrote this nice article in favor of touch typing