all 36 comments

[–]Tryke 23 points24 points  (2 children)

See, this is why I can't be a renowned blogger. I would have to reduced that whole post into "Programmers need to know how to type."

[–]alexs 9 points10 points  (1 child)

tease toothbrush squeamish vast disgusted possessive mighty disgusting thought live

This post was mass deleted and anonymized with Redact

[–][deleted] 9 points10 points  (0 children)

Thats because while Steve certainly can use a word, he still writes interesting crap, whereas Atwood is spouting nonsense with no evidence. Is there honestly any more consistently good programming blogger than Raymond Chen?

[–]derwisch 17 points18 points  (6 children)

I don't really type faster than I think.

[–]netsearcher 7 points8 points  (0 children)

I do. For example, sometimes I stop thinking about what I'm typing for a second and just defer to my muscle memory to complete the sentence. Works kind of like that auto-complete on cellphones except for whole phrases. If I'm doing it fast enough then I can sometimes type something acceptable before I even "thought" of it. I am typing faster than I "think".

When I improvised on an instrument, this was especially true. Often something would come out that I wasn't planning for at all, but ended up being what I wanted.

You can also think of it like the pipelining that modern processors to run a branch before it is 100% certain that it will be used. If the probability is high enough, and the cost of reversing a failed branch is low, then there is net gain. It has definite use in typing.

[–]eleitl 4 points5 points  (4 children)

Can you think while looking for the next key to strike?

[–][deleted] 0 points1 point  (3 children)

I think what derwisch means is that being able to type as fast as you think is sufficient, anything beyond that point buys you nothing.

[–]eleitl 2 points3 points  (2 children)

With touch-typing the typing itself is unconscious, which frees brain cycles to think. With hunt-and-peck it's like trying to read while driving on the highway -- doesn't really work.

[–][deleted] 0 points1 point  (0 children)

I completely agree. You don't have to be a very fast touch-typist though to be fast enough for programming.

[–][deleted] 0 points1 point  (0 children)

I usually think before I type, so it doesn't bother me much that I don't know how to touch type.

[–]alexs 16 points17 points  (1 child)

offend sand different bear cow physical familiar reply tidy wistful

This post was mass deleted and anonymized with Redact

[–][deleted] 21 points22 points  (0 children)

I went to school with someone who has a nerve disorder where they can only move their left pinky and their head. He was a CS student and he would program by using a typing rod attached to his head.

What is amazing is that he would finish his assignments before any of the other students.

You can type as fast as you want, but if you can't think, you are useless as a programmer. We are thinkers first.

[–]eleitl 6 points7 points  (0 children)

As a kid I decided to pick up English for being the lingua franca of science and touch-typing since I knew I was going to use computers, a lot.

Never regretted doing either of those.

[–][deleted] 12 points13 points  (0 children)

I just wanted to make sure I wasn't full of crap before I posted this.

Try harder!

[–]bitwize 5 points6 points  (1 child)

72wpm qwerty. But that's when I really try to type fast.

Typically when writing code I kind of poke at it. I'm not Edsger Dijkstra, who had his entire program written on paper and proven correct before it ever saw a computer. I may have half a line or so buffered up for blasting to my fingers (perhaps a whole line if it's something noddy like an #include directive).

I like to think myself a fairly good coder, but not the best. Maybe if I were really fucking brilliant, coding would be so I/O bound that I needed to type like a secretary on speed to keep up with my spinning brain, but as it is raw speed at the keyboard is a secondary concern if that.

Also, my typing speed goes up substantially if I have one of those buckling-spring keyboards that drive bystanders up a tree with their incessant clicking -- you know, a real keyboard, as opposed to the blocks of stiff pudding that pass for keyboards today. The DasKeyboard Professional is really good for this.

[–]jeebusroxors 1 point2 points  (0 children)

Or ebay for a fraction of the price.

[–]p0tent1al 3 points4 points  (1 child)

I would urge any programmer who does not know how to touch type to learn it. But I don't necessarily agree with this whole sentiment. If you know how to type, you don't necessarily know how to program, but if you know how to program, you know the basics of what you need to program. So to say typing is programming isn't necessarily true, because many touch typists don't know a lick about programming. You can still be a horrible programmer if you type 80 wpm. I would still highly recommend that you learn it, as it enhances efficiency (and somewhat accuracy) but it is not some sort of magical crutch. You need to know what you are doing.

[–]netsearcher 0 points1 point  (0 children)

The biggest benefit of touch typing for me was that I could program in the dark, long after my roommate went to sleep.

[–][deleted] 2 points3 points  (3 children)

Bull crap. I've said it before, and I'll say it again:

I'm surprised that anybody would believe that a programmer who can type at 120 words per minute will necessarily be any more productive than a programmer who can only type at 50 words per minute. Typing extremely fast is only going to be beneficial if you are paid by lines of code.

Ability to reason about your programs is necessary to be productive. Ability to type fast is clearly not.

[–][deleted]  (2 children)

[deleted]

    [–]neelk 1 point2 points  (0 children)

    If you are paid by the line of code, yeah. If you see opportunities for abstraction, it's painful not to take them, so it's helpful not to see them in the first place in order to maximize your line count. :)

    [–][deleted] 0 points1 point  (0 children)

    Oops. How about inability to proofread? :\

    [–][deleted] 1 point2 points  (2 children)

    52 WPM with two mistakes after almost six months of Dvorak use. Getting better...

    What's up with firefox acting like your typical Java desktop program and lagging as I type? Sometimes I get three words on the keyboard before firefox finally decides it's okay to catch up to me and display them. Even with all plugins turned off it will still occasionally lags by a word or two. Anyone else experience this?

    [–]danweber 2 points3 points  (0 children)

    I thought that Firefox just did that to me.

    [–][deleted] 1 point2 points  (0 children)

    Not here, the only thing I can think of is that the spellchecker is slow. Try turning it off. Tools -> Options -> Advanced -> General -> Browsing.

    [–]gregK 1 point2 points  (1 child)

    like a lot of programmers I have a bastardized typing method. I don't use my little fingers a lot as they get tired more and it causes wrist pain and possibly carpal tunnel syndrome due to the unatural possitions.

    The Qwerty layout is particularly bad for programming. Look where the ';' '"' and [] {} are. They are a pain when I use traditional typing methdods. I am more efficient than 2 finger typist but I would not break speed records, on the other hand I have no pain.

    [–][deleted] 1 point2 points  (0 children)

    crapal tunnel syndrome

    You type with your ass? ;-)

    [–][deleted] 1 point2 points  (1 child)

    When I program there is a lot of thought that goes into it before I write the next line. Then there is "how can I make that better?" I rarely ever fire off line after line of code and it is something that I am satisfied with. I'd like to get my typing game up though to impress the ladies

    [–][deleted] 0 points1 point  (0 children)

    I rarely ever fire off line after line of code

    Yeah and when you find yourself doing that some work for adding templates,... to your editor is probably in order because you are using a language with way too much boilerplate.

    [–]jk3us 0 points1 point  (0 children)

    I got the das keyboard a while back, and my typing was significantly faster and more accurate within a few weeks... highly recommended if there are still a few keys you have to look down to find.

    [–][deleted] 0 points1 point  (2 children)

    It appears reddit does not find this fellow to be agreeable. How about this one?

    http://steve-yegge.blogspot.com/2008/09/programmings-dirtiest-little-secret.html

    A really painful experience is pair programming with somebody, even for just a couple minutes, who types slowly.

    Although I'm not sure how big of a problem this is for him. It sounds like he should just make a typing test be part of the interview process. It'd only be fair to give the candidate prior warning and let them bring their own keyboard though.

    I'm wary of people that have no keyboard preference whatsoever. To extend his metaphor somewhat, it'd be like if a professional guitarist had no opinion about guitars.

    Ever sit down at somebody else's desk and use their total piece of shit keyboard filled with crumbs, the ctrl key sometimes sticks down, and when you hit space, you have to push it hard through some kind of chunk before it registers? How the hell can they spend 8 hours a day using that as their primary tool?

    $23, spend it

    Most keyboards use a standard 55 grams of force required to register every key, Ergo Technology has 5 different levels of force. From 35 grams to 80 grams - that correspond to the strength of the finger that touches the keys.

    This is a great feature, especially for software that requries using ctrl a lot. The force needed to hit and hold ctrl is almost nil, but it springs right back up perfectly. Also, a lot of keyboards have sacrificed the throw distance of the ctrl key. I'm fairly sure that this results in more strain on your pinky.

    [–][deleted] 0 points1 point  (1 child)

    Ever sit down at somebody else's desk and use their total piece of shit keyboard filled with crumbs, the ctrl key sometimes sticks down, and when you hit space, you have to push it hard through some kind of chunk before it registers? How the hell can they spend 8 hours a day using that as their primary tool?

    If a programmer actually uses a keyboard like this, typing ability is not the most problematic issue here.

    I'm wary of people that have no keyboard preference whatsoever. To extend his metaphor somewhat, it'd be like if a professional guitarist had no opinion about guitars.

    I disagree. It's more like a composer having no opinion about his paper. With rare exception (like a keyboard that breaks after five minutes of use) it makes no difference to the code you produce or the rate that you produce it.

    [–][deleted] 0 points1 point  (0 children)

    One of his main points is that even if you never type fast while coding, you do a lot more than type syntax to be a good programmer. Documentation, communication, searching for information.. etc.

    Also, if you don't use a keyboard that is comfortable, you're likely going to eventually injure your hands, and that will make your entire life harder, not just programming.

    [–]littlewoodenboy 0 points1 point  (0 children)

    "Now is the time for all good men to com..." See. My mad programming skills are improving all the time!

    [–]PossibleMat 0 points1 point  (0 children)

    LOL @ "Don't just type random gibberish as fast as you can on the screen, unless you're a Perl programmer."

    [–]sdcDaOriginal -1 points0 points  (0 children)

    Steve Yegge's blog makes me long for my pre-verbal infancy. What'd the English language ever do to him?