5 ms·
> "I’m Glad I’m not a Touch-Typist." Yes, typing speed, when looked at in isolation, does not cause the production of high-quality code. But there is an argume
by elwell 12y ago
> "I’m Glad I’m not a Touch-Typist."
Yes, typing speed, when looked at in isolation, does not cause the production of high-quality code. But there is an argument to be made for reducing the friction between one's mind and the code on the screen. Insofar as we can ignore that transference of data from biology to technology, we can think more fully and clearly. So, emacs commands that are fully ingrained in one's subconscious may be good, but probably not the C-u 12 C-x TAB; at least for somebody simple like me.
- Swizec 12y agoThe less brain cycles you have to spend on your tools, the more you can spend on your product. :) (I believe in fast typing, usually I'm at some 120wpm, but it does help more with writing than it does with coding)
- kstenerud 12y agoActually, I've found that the act of moving what's in my mind to a source file is in itself an act of revision for my ideas. I don't need to type fast for it to happen, because I'm not going to write anything at all until I have a solid idea or path in my head. The actual act of typing consumes less than 10% of my programming time, and is for the most part a mere formalization of my thoughts. Would a 50% increase in typing speed make me finish the feature in 4 days instead of 5? Nope.
- hasenj 12y agoI used to believe that. It's why I picked up coffee script. I thought, the less there is to type, the more you can focus on the problem rather than the code. I found out I was wrong. The redundancy actually helps. There's somehow a calming effect in it. I don't know how to put it into words. I found out that I never actually think while typing per se. I have to first jot down my thoughts on paper. Typing out the code becomes almost a mechanical process. I already know what I'm typing, I've figured it all out and put it in paper (or some plain text note in another text editor or note taking app). There's stress in trying to hold it all in your head. That stress is released when you jot things down. Then you can just mechanically write out code with less levels of stress. The explicit syntax means you have more to type but less to think about. I know it sounds paradoxical. But that's been my personal experience.
- andyl 12y agoIt doesn't work that way for me - for some reason the syntax makes a huge difference in my productivity and level of energy. Coffeescript works way better than JavaScript, Elixir better than Erlang, Slim better than ERB. It shouldn't make that much of a difference, but it does.
- m_mueller 12y agoIt's not paradoxical at all. I think that the more syntax you have (thus shortening the code), the less you can reason about what you write while writing it, because the mental overhead of writing itself goes up. Compare stenography to latin in that regard - stenography is almost never used to write down ideas, only to transcribe.
- MichaelGG 12y agoMy hands sometimes get pain and there's a hardwired response that makes me feel awkward, physically, I've I start typing out a lot of repetitive code. When I read Java or most C# code, I just cringe at all the extra crap, at all the pomp and boilerplate. Every time I have to write it, I feel annoyed that I need to type more stuff out like an idiot, because some compiler writer had misguided ideas, or because they already dug enough technical debt to allow more expressivity.
- einhverfr 12y agoI agree with you to a point. I am a touch typist. There's something to be said about a lack of friction. However, at the same time, there is also something to be said for friction and learning to work with friction. It is about time and the amount of deliberation the concentration of holding a thought in your mind for longer. I am a touch typist and I appreciate that I am. However, I also find that spending some time periodically with a quill pen, writing thoughts down with that, is extremely valuable for the opposite reason. One of the core challenges is how to slow down thought. This is something which has many, many benefits, and touch typing at the speed of thought would not be conducive to quality code.