But I am still productive enough without being able to touch type.
And it’s not at all obvious to me that touch typing is the most important thing I could learn. Improving my knowledge of CSS and learning Elixir feel like they would do more to make me more productive at work. Maybe even memorising advanced Typescript type hackery.
My keyboard changes somewhat every time I buy a new laptop or have to sit down in front of someone else's machine for a while, eg a pool machine at uni. Especially the UK/US thing. Or use my phone and its various virtual keyboards. My daughter has just acquired one of the older MacBooks with a soft/programmable bar at the top. That changes dynamically. Would have broken my use of one of the few keys I do 'touch' type with muscle memory: ESC for vi, so I skipped that round of Macs.
Please don't make careless absolute or other very strong (wrong) statements if you want to have useful conversations without infuriating those who are careful with words.
are you under the impression that learning to touch type is somehow going to make you worse at typing better code, or somehow hinder your ability to quickly decide what to type?
I'm in a weird halfway space when it comes to touch typing - I can't intentionally touch type, but I sometimes catch myself doing it unintentionally out of muscle memory. There is no significant change in my productivity between when I do or don't touch type, because I'm in the same boat as the gentleman above: I'm spending more time thinking about, designing and navigating code to build a mental map of the changes I need to make and its effects than I am doing the actual code changes, and I often find that means I only need to make those changes once.
You could, but we're here on a Sunday afternoon arguing about this when you could be learning about something with a greater payoff. If you were optimizing for that, you'd be somewhere else. In the time you took on this thread, you could have learned home row and done a touch typing lesson. Instead, it seems like you've made the decision not to learn it and are now just casting about for justifications why you're right not to. Which is entirely up to you, it doesn't affect me if you do or don't learn it, but at least be honest with yourself that you just don't want to because you're afraid or something instead of pretending that you're off learning about new programming techniques in place of learning to touch type, when you clearly aren't.
Touch typing is not "being able to type faster", it is "being able to type without looking at the keyboard".
It is useful, because you can focus more on the code on the screen, and/or reference material, than you could if you needed to be looking at what your fingers are doing on the keyboard.
Have you tried programming in something other than notepad.exe?
Modern IDEs have auto complete so impressive, that you don't need to type much anyway. I type several symbols then stop to let the editor suggest the rest of the word. Can I touch type it myself? Yes. Do I want to? No. There wouldn't be much difference if I typed slower.
NB. When I say "modern IDEs" I mean anything since around Visual Assist, which sorted suggestions not alphabetically, but depending on context. I don't even mean copilot.
I've touch typed since high school (on loud typewriters) and took up Emacs around 1989, but I think people are now less often generating complete chunks of code from scratch and more often refactoring existing code using awkward keybinds that didn't exist when they learned (or should have).
I can't really touch type. I have been a successful dev in finance (plus serial start-up founder) and retired early, and I am now doing a PhD.
IMHO touch typing is clearly not essential.
One reason I can't is because I spent a fair amount of time doing sysadmin and user support for multinationals, using lots of different keyboards with US / UK / other layouts. I simply didn't have the luxury of a fixed layout to get fast against.
And sysadmin / dev success is simply not measured in WPM.
> Here's the industry's dirty secret: Programmers who don't touch-type fit a profile. ... The profile is this: non-touch-typists have to make sacrifices in order to sustain their productivity.
I am a proficient touch typist myself by which code and vi placement fidgets flow endlessly from self guiding fingers. I have long passwords my fingers know and my brain does not.
An early intellectual mentor I had growing up, who was the hardest of hard core C developers, was a hunt and peck typist. Didn't seem to inconvenience him a bit.
I don’t think so. I can touch-type but I have worked with many excellent programmers who can’t. Consider Stephen Hawking as an extreme example. Productive?
Since we don’t have a way to measure “being productive” in an objective or meaningful way you just assume without evidence that inability to touch-type decreases productivity. Programming requires typing but only incidentally — the real work happens in the brain, not in the fingers.
I’d concentrate on requiring ability to solve problems in code first, and then ability to program. Typing falls much lower on the list of desired skills. Too many programmers can’t even program effectively.
I don't see why. Almost none of the devs I know can touch type, and it doesn't seem to affect them. At least, they aren't any less effective at their jobs than those who can.
I shouldn't think so. I've been touch typing since I was quite young, and I can type more quickly than most people do, but I don't believe that this makes me more productive: I spend far more time reading and thinking than I ever do writing, and I think this is true for most people.
(I did have one coworker, years ago, for whom this did not seem to be true: he routinely cranked out the largest volumes of code I've ever seen, by an order of magnitude - but his work was as notable for its sloppy repetition, bugginess, poor spelling, and total lack of abstraction as for its largeness. I think the team might have been more productive as a whole if he had been forced not to touch-type, perhaps by tying one of his hands behind his back while he worked.)
32 comments
[ 3.3 ms ] story [ 95.0 ms ] threadWhy do you say it is difficult to imagine being productive without this skill?
But I am still productive enough without being able to touch type.
And it’s not at all obvious to me that touch typing is the most important thing I could learn. Improving my knowledge of CSS and learning Elixir feel like they would do more to make me more productive at work. Maybe even memorising advanced Typescript type hackery.
Why do you think being able to type faster is a better win than being able to type better code, or being able to more quickly decide what to type?
My keyboard changes somewhat every time I buy a new laptop or have to sit down in front of someone else's machine for a while, eg a pool machine at uni. Especially the UK/US thing. Or use my phone and its various virtual keyboards. My daughter has just acquired one of the older MacBooks with a soft/programmable bar at the top. That changes dynamically. Would have broken my use of one of the few keys I do 'touch' type with muscle memory: ESC for vi, so I skipped that round of Macs.
Please don't make careless absolute or other very strong (wrong) statements if you want to have useful conversations without infuriating those who are careful with words.
what a weird career limiting decision to make.
It is useful, because you can focus more on the code on the screen, and/or reference material, than you could if you needed to be looking at what your fingers are doing on the keyboard.
Modern IDEs have auto complete so impressive, that you don't need to type much anyway. I type several symbols then stop to let the editor suggest the rest of the word. Can I touch type it myself? Yes. Do I want to? No. There wouldn't be much difference if I typed slower.
NB. When I say "modern IDEs" I mean anything since around Visual Assist, which sorted suggestions not alphabetically, but depending on context. I don't even mean copilot.
IMHO touch typing is clearly not essential.
One reason I can't is because I spent a fair amount of time doing sysadmin and user support for multinationals, using lots of different keyboards with US / UK / other layouts. I simply didn't have the luxury of a fixed layout to get fast against.
And sysadmin / dev success is simply not measured in WPM.
I suspect that you have a very narrow view of what are the realities and priorities for all the people that develop software all over the world.
That or you should maybe rein in the hyperbole.
> Here's the industry's dirty secret: Programmers who don't touch-type fit a profile. ... The profile is this: non-touch-typists have to make sacrifices in order to sustain their productivity.
Jeff Atwood commentary at https://blog.codinghorror.com/we-are-typists-first-programme... .
102 HN comments at https://news.ycombinator.com/item?id=300920 (plus a scattering of comments in the 9 other postings).
315 Reddit comments at https://www.reddit.com/r/programming/comments/70sqr/programm... .
An early intellectual mentor I had growing up, who was the hardest of hard core C developers, was a hunt and peck typist. Didn't seem to inconvenience him a bit.
Since we don’t have a way to measure “being productive” in an objective or meaningful way you just assume without evidence that inability to touch-type decreases productivity. Programming requires typing but only incidentally — the real work happens in the brain, not in the fingers.
I’d concentrate on requiring ability to solve problems in code first, and then ability to program. Typing falls much lower on the list of desired skills. Too many programmers can’t even program effectively.
No.
> It's hard to imagine a computer programmer being productive without this essential life skill.
To the extent this is not a failure of imagination, then, the problem is solved by requiring programmers to be productive.
Note that this also deals with the possibility that your impression is a failure of imagination.
(I did have one coworker, years ago, for whom this did not seem to be true: he routinely cranked out the largest volumes of code I've ever seen, by an order of magnitude - but his work was as notable for its sloppy repetition, bugginess, poor spelling, and total lack of abstraction as for its largeness. I think the team might have been more productive as a whole if he had been forced not to touch-type, perhaps by tying one of his hands behind his back while he worked.)