We Are Typists First, Programmers Second

Sure progamming requires some typing and of course you need to be somewhat skilled at touch typing. But you also need to be skilled at handling some sort of debugger, knowledge about algorithms and the big O formalism, some insight in the structured computer organization etc. If typing is your biggest problem among these, I’d say youre more than half way to becoming a good programmer. If its not, you still have a long way to go. Really stupid post.

Of course, it’s about speed. Besides speed, it’s also about being one with your machine.

http://www.thousandtyone.com/blog/MartialArtsAndComputersAreYouOneWithYourComputer.aspx

110wpm. W00t! But with four mistakes. Not the fastest or most accurate, but pretty well in there. (Except for you bozos who cut-n-paste. Cheaters.)

How about typing numbers? I got 43wpm from the same site. Beat that!!

Arguably numbers and symbols are more important to programming than typing straight text, especially with languages like C that use a lot of special characters.

But, to the point of the blog, programmers are not typists first; nor however is typing irrelevant to programming. The real issue is not raw typing speed, but rather how quickly one can drive the user interface of whatever one is using to program. If you can drive your environment at least as fast as you can think, you’re OK. If you can’t, then either your thinking is being slowed down by your typing (or mousing) speed, or you’re spending mental effort on driving the user interface instead of on programming. Either one means you’re not living up to your full potential as a programmer.

I completely agree with Jeff’s comments though i would also add that Keyboard shortcuts are just as important to know than pure typing skills. I’ve followed this up on my blog @ http://www.tobymills.com/blog/?p=17

If typing is that important to your programming, then you’re clearly writing too much code.

Yes, I can touch type… more quickly and accurately than most… but really, the only reason that how quickly you type might give you an advantage over another programmer is that you’re both writing too much code.

Instead of worrying about how quickly you type, think about what you’re typing. Otherwise you’ll end up repeating the mistakes that lead to the mountains of terrible code that’s already out there.

I agree that typing is extremely important. I wouldn’t go so far as to say that we’re typists first, but I would argue that we’re at least typists second.

Your speed was: 98wpm.

Congratulations! You made no mistakes, practice does make perfect.

I agree with your statment about losing a degree or two of respect when you see a ‘programmer’ using the hunt and peck technique. It just cracks me up to see it. What makes me cry however, is to hear a programmer call up our helpdesk and ask how to install or uninstall a program, or how to initiate a defrag, or any number of things a ‘standard’ computer user should know. That is what really makes me cry.

Typing is a (necessary) tool of the programming craft, just like latin was deemed a mandatory necessity for any kind of scholar in the middle ages …

Be carefull not to confuse the tool and the craft, they exist independently.

I’ll never forget a few years back when my mother retired from teaching. At the retirement dinner I looked across them room and saw my old typing teacher who was also retiring. I was compelled to get up go over to her and hug her neck. I told her and her family she had made me more money by teaching me to type than all the other teachers I’d ever had. She was so proud.

woooot…

Your speed was: 104wpm.

You made 4 mistakes,

And as to my suggestion; find some one and attempt to out type them repeatedly for weeks on end, while in the dark. Chat fighting for the win.

Got to disagree with you on this one. Typing is not that important when you are using good editors with snippets and intellisense.

Some excellent programmers that I have known possess not only good typing speeds but are also quite dexterous with the mouse as well. One person I knew used the mouse so fast during a demonstration that I had to ask him to slow down a bit.

I’m not a great typist and never have been. I wish I could type faster (yes, I did take a class many years ago to learn), but still I’m not great. However, I’ve known many people who don’t type well and they still write good code. You have to think more and spew less, which is good coding style anyway. Typing speed is great for emails and documents, but I don’t agree that it makes you inherently a better coder. I think you simply add more buggy code more quickly. Slow down a little, think, design, use code completion, refactor, test, etc. I believe that writing less code is better than writing more. One of the smartest programmers I know considers it a good day when you delete a couple hundred lines of code. Typing speed doesn’t help with that. Yes, it’s useful to know how to type, but that’s not a reasonable way to judge programming skill and you’re making a grave error if you look at somebody hunt and peck and think less of them. The real judgement of good programming is much more esoteric and difficult.

The best typing tutor I#8217;ve ever met is Solo: http://ergosolo.com

I say first learn to program then learn to type, typing is essential, but knowing how to code should come as a priority. Typing is just a stepping stone on the way to become a great programmer but it’s not the first one.

I agree that touch-typing and greater typing speed is beneficial… hard to argue it. But the typing test definitely favors the touch-typist, as you are copying random text. The touch-typist never has to take his eyes off the screen… big, big benefit in this test. The non-typist has to find his place in this large text every time he brings his eyes back up… and it takes longer to to absorb the next piece of text he is going to copy… you have to remember capitalization, punctuation, and spelling of a text that is not your own thoughts.

In coding, however, you are typing what is in your head already… you are not having to go back and forth with your vision, the text you are writing is coming from in your head, and you are not concerned about replicating something on your screen. I’m not making the case that touch-typing is wrong (that would be dumb), only that these standard tests are not a true measure of programming typing speed… I think the hunt-and-peck crowd would at least fair a little better in that circumstance.

However… this has pushed me top go back and re-learn touch-typing… it would be a benefit. And if there are any other developers or managers that are judging my performance as a programmer on my lack of this skill (whether warranted or not), it is worth taking the time to learn.

So you claim that because typing is required to be a good programmer, all programmers are primarily typists? That’s ridiculous. A prerequisite is just that - something required before being able to succeed at something else.

Mind you – I disagree with the other side as well – I see a few comments to the effect of slow typing forces you to think more, which is equally mindless tripe.

Well over half of the time you spend working on a project (on the order of 70 percent) is spent thinking, and no tool, no matter how advanced, can think for you. Consequently, even if a tool did everything except the thinking for you – if it wrote 100 percent of the code, wrote 100 percent of the documentation, did 100 percent of the testing, burned the CD-ROMs, put them in boxes, and mailed them to your customers – the best you could hope for would be a 30 percent improvement in productivity. In order to do better than that, you have to change the way you think.

I only type at about 40 words per minute but I think better and faster than most. It’s the same approach as measure twice, cut once. 40 wpm is fine as long as you only have to write those 40 words once.

This post inspired me to get back to touch typing (rather than 4 fingered touch/look). I am still slower touch typing than 4 fingered but getting better…

Along with the lessons at www.typeonline.co.uk that Jeff mentioned, I found a couple of nice games on facebook that are good for typing practice. The best IMO is typing race at http://www.facebook.com/apps/application.php?id=34857441437 You can see a video at http://vimeo.com/1728018 if you’re not on facebook. Also quite fun is typing of the ghosts, which as you can imagine is a flash take-off of typing of the dead: http://www.facebook.com/apps/application.php?id=26707082548

You could almost justify playing these at work as they’re improving your skills :wink:

Typing is on a very small part of program development. Being able to type at a hundred words a minute maybe impressive to some, but I believe the ability to think logically to solve programming tasks is by far a greater skill to have.
Also typing code is very different from writing a letter etc.
The secretary at the office can type at blistering speeds, but understands zero when it comes to coding!
She’s a typist, I’m a programmer! Different occupations!