4 ms·
Typing for a programmer is like brake pedal technique for an F1 driver. Yes, it is important to be able to type effectively. No, it is not sufficient for being
by WJW 6y ago
Typing for a programmer is like brake pedal technique for an F1 driver. Yes, it is important to be able to type effectively. No, it is not sufficient for being a good programmer.
It's easy to get lost in fancy editing techniques that get you a win of minutes per day (as Carmack mentions), while learning to come up with a better design will save you weeks in overall development time. Learning more editor shortcuts is much easier and more flashy, of course.
- davnicwil 6y agoI completely agree - optimising tooling is converging on a local maximum. Past a certain point the returns are rapidly diminishing and you burn a lot of time and effort on very marginal gains that would be much better invested on bigger picture, higher impact stuff - namely, the actual thing you're building. I wrote a blog post on this that you may enjoy [0]. I like your F1 analogy, I used tennis :-) [0] https://davnicwil.com/just-build-the-product/ https://davnicwil.com/just-build-the-product/
- WJW 6y agoYou're right, I totally enjoyed that blog post! I might borrow your analogy of tennis, since it is a bit better than the F1 one. :)
- saberdancer 6y agoI don't think the comparison fits. You can be a slow typist and still a great programmer but you probably can't be a good driver if you are bad at brake technique.
- panpanna 6y agoHere is a better analogy: I knows a famous movie composer who plays the piano with his two index fingers.
- marvin 6y agoDitto I'm aware of a famous composer (leading productions involving tens of musicians on stage at once) who doesn't know how to read sheet music.
- zimpenfish 6y agoAs Deadmau5 says in his Masterclass trailer, "If I could play it, I would, but I can't, instead I have to draw it."
- sitkack 6y agoOf the programmers I have known that are also super high speed typists and focus on typing (coding) speed, they also tend to write the most code. Voluminous radiant bouquets woven with crystalline class hierarchies, layers of unit tests that would give string theorists a bow to play a multidimensional symphony with. Prototype in your head, then on paper, then in a dynamic language (Scheme, Python, Lua), then a PoC in your statically typed language (Rust, F#). If your prototype is 1kloc and your editor has a modicum of refactoring support, you don't need much else.
- jmull 6y agoI would go further... you can be poor at typing and be a great programmer. (Of course, most are at least competent at it, due to plenty of practice.) By a couple orders of magnitude, what’s going on in your head is a lot more important than what your fingers are doing.
- msh 6y agoSeems like a very wrong conclusion, like managers trying to measure programmer productivity by counting lines of code produced. I would say speed of typing and amount of code produced have no relationship to the quality of the programmer. Of cause there might be exceptions if people was trying to type with one finger at a time and other wierd things but above basic typing skills I cant see how it matters.