4 ms·
I find this argument bullshit. After 15 years, the best code I write is the stuff I think about the most and spend the least time typing. If I have anything vag
by collyw 9y ago
I find this argument bullshit. After 15 years, the best code I write is the stuff I think about the most and spend the least time typing. If I have anything vaguely complex and algorithmic, I sit with a pen and paper and draw diagrams, or write pesudocode until I have worked out what I am going to do. When I was far less experienced I liked typing a lot and enjoyed programming Java. Now I see that every extra line of code is an extra place that bugs could hide and I prefer more expressive languages and more functional / declarative styles of code. I like writing SQL, despite being a crappy language in terms of syntax - I prefer the way I have to think about the problem.
(I did try learning Dorvak for RSI reasons a few years back, but I spent too much effort thinking about the typing that relatively easy coding became difficult. So maybe I proved his point to a degree).
- vikiomega9 9y agoThe argument made here isn't to type out more lines of code but to match the speed of your typing to your mental model such that the slow typing does not get in the way
- collyw 9y agoThat's why I use a pen and paper. A diagram is far faster and more expressive than most code.
- NiveaGeForce 9y agoOr a pen-capable tablet or 2-in-1.
- grecy 9y agoI agree, and I have always found "programming" to be about 10% actually pressing keys on a keyboard and about 90% thinking about what I'm going to press long before I'm even near a keyboard.
- mamcx 9y agoI don't remember where I read this idea (because now I'm also in the "build your own keyboard" thing and read a lot about this), but the main take is that when you have fluency in mundane task you focus better in the more intensive ones. in fact you already say this: "I sit with a pen and paper and draw diagrams, or write pesudocode until I have worked out what I am going to do. When I was far less experienced I liked typing a lot and enjoyed programming Java. Now I see that every extra line of code is an extra place that bugs could hide and I prefer more expressive languages and more functional / declarative styles of code" ie: You have optimized typing, using something else! ---- I have tried VIM and Emacs a few times and after some few minutes with them I think "This is stupid. Relearn everything will slow me too much, terminal is too limited, and I'm fast enough with "normal" editors." Being slow a typing on vim/emacs make me appreciate how "fast" I'm with native editors like sublime. Also, I have a MS Ergo Keyboard and building a close clone with the minimal changes that I imagine will close the small things that bother me.
- tzakrajs 9y agoBy driving a car, I have not optimized walking but instead have stopped walking and optimized transportation. Similarly, by doodling (or whatever), I have not optimized typing but instead have stopped typing and optimized programming. edit: made sentences make sense and stuff
- girzel 9y agoI find the argument convincing with the addition of a little tweak: it's not about how fast you type, but your facility with the editing. I use Emacs, and plugins like ace-jump (which I think is a copy of a Vim plugin) and paredit reduce friction between thought and code, not because I'm hammering out a certain number of words per minute, but because these tools abstract the manipulation of text away from twiddling characters on the screen, and towards "manipulating" text as a proxy for ideas. Edit: Formatting