This week I finally decided it was time for me to stop being lazy about typing. I have for a long time put off correcting my typing style simply out of pure laziness. BUT NO LONGER! I have found in the past 3 months more and more that not being able to type without looking at the keyboard was draining my time slowly. More than that, it also meant I was spending brain power writing things down instead of thinking about what I was going to code next.
Do you look down or peck at your keys? Think you can survive as a full-time developer without mastering your keyboard? Tsk, tsk.
I have for years pecked away with great speed at my almighty mechanical keyboard, proudly pounding out line after line of code without much pause. Even firing off emails was quick and painless. However, that was before I started working for very long periods on only code with no UI or browsers or feedback other than servers burning down while I wept. Usually I am hoping quickly between front-end & backend work with some design or discussion in between to break up the long coding portions without any UI. Working on QuickHire that is no longer the case, I am spending a lot of time working on the backend for extended periods of time. It began to feel like I was some sort of robot with a chicken head who could only peck the right key 4/5 times.
How did we get here?
When did I fail to learn to type? In highschool I never touched a computer much. The keyboarding class was seen as a joke course for the non-academic stream kids. Once I got to college I never
wrote more than 2000 word papers and even then very rarely. However, I did spend a lot of time on my computer….playing video games – specifically one engrossing MMO that shall not be named.
I learned to type fast while playing video games.
That statement encompasses so much of what is clearly wrong with how I type. Learning the keybindings of video games and using them more than writing full sentences sounds like an awful way to be introduced to a keyboard. I can tell that I still have these habits by the visible way my hand gravitates to the WASD keys and sits comfortably over 1234 7890. I can type with just my left hand so that my right can continue to use them mouse or the arrow keys, but I can’t get over 50 words per minute on the best days.
Why does this matter?
Here is the problem: I can type at an okay pace, but I know I have hit the limit and cannot get much faster. Even more than the speed, is the time lost peaking at the keyboard in between sentences and thoughts. The time spent correcting typos caused by pecking to the left for a whole sentence. The inability to crack out code as fast as I can think.
The combination of the time wasted, inaccuracy of it all, and the frustrating limit of speed is evidently to much. What really did me in though is the sudden realization that I had a few days ago:
As a developer you are primarily a typist for most of your day. And if you suck at that, you are evidently not be the best possible developer you could be.
What a weird though. The idea that you need to type well in order to be good at writing code on a computer all day. I really have no idea how I didn’t realize this sooner. I guess out of all the books, videos, documentations, & tutorials I have used to learn how to code, never once did I see anyone say: STEP #1 – Learn to type you lazy sad sack.
What can you do?
1. Well for starters you can start by follow my lead and grab some kind of software to help you type and learn. I am using this web app – I feel like some middle schoolers are probably killing me at it but oh well. This is pretty simple and easy to use – and it’s FREE! I am so far 3 days into this and am up to 35-40 words per minute touch typing on their – maybe 25-30 off site. It’s simple muscle memory and practice makes perfect.
2. Another thing I did – dump a sweater over your hands & not be able to see any of the keys at all – this was a good starting point that I did without even Googling how to do this. Also, I turned off the backlighting on my keyboard – huge difference in the amount of benefit you get from looking down – quickly you realize the time looking down and finding a key can be done with your finger just as fast – and hopefully faster in the near future.
3. Finally, just start writing more. I know, you probably code a lot – but how much do actually write a day? I am going to try and follow this advise and see how it goes:
So I decided, there was only one way I was going to be able to pull this off: write 1000 words a day. It had to go from being a task on my to-do list to a habit. What I didn’t realize is just how much that was going to change my life.
4. Pro tip: when you start don’t let your palms or wrists rest on the keyboard or desk – this is a core gaming habit I have to allow for long sessions without wrecking my wrists, but it does hinder typing speed and flexibility – I think I lost a whole days progress over this small fact that again I found not written down anywhere in tutorials – as it should be obvious – but not for me of course.
Goal: Keyboard Ninja
I am aiming for 100 words per minute and with a 10 word increase each week, I think this is doable. The main thing will be keeping the urge to spring back to the way I know work okay over the way I know I can grow.
However, I’ll admit, I am not sure how this will go down for coding. The amount of special characters is rather high and hard to reach at the moment – but I know there is no try, only do or do not.
Do you think developers need to be able to type well? How fast? Or how slow is to slow?