11 ms·
Typing fast is an underrated skill for developers. A lot of the value added by various intelligent tab completion and LLMs is easily replicated by typing variab
by dawnofdusk 1y ago
Typing fast is an underrated skill for developers. A lot of the value added by various intelligent tab completion and LLMs is easily replicated by typing variable and function names at 100+ wpm.
Not a fan, however, of the desire to disparage the "right" way of doing things that's done in this blog. I type the "proper" way, home row and all, and can reach 150+wpm with high accuracy. So, based on this evidence, you're wrong and would be better off having learned the proper technique...
is an argument which I could make, and the evidence would be true, but it doesn't sound extremely convincing, does it?
- erikpukinskis 1y agoI also wonder if it’s a bit better for your hands. I feel like having my pinkies just kind of hanging there while I type causes the nerves to atrophy.
- jchw 1y agoNot a home row typer but I believe that's generally the idea; it's supposed to minimize the amount of travel. I learned to type home row for a brief period though and it just felt very uncomfortable, I never got used to it. It feels a lot more natural to me to let my hands linger around the keyboard, even when using a split ergo keyboard.
- dylan604 1y agoatrophy? if you're not using your pinkies, how are you hitting shift/enter or other keys like [,],=,/,\? (that's an actual question, not trying to escape the punctuation)
- wonger_ 1y agoNot OP but I pivot my wrists and use my ring fingers. I always found it difficult to reach and press keys with my pinkie. Small hands, I guess? Does anyone else do this?
- dylan604 1y ago> I always found it difficult to I used to find it difficult to a lot of things, until I practiced enough to be able to do them, which is usually what that predicate implies. It's like people that say they have to use one foot for the brake pedal and the other for the accelerator because they find it difficult to use one for both.
- wpm 1y agoMy pinkies are double jointed. They lock up the second I try to bend them on their own without also flexing my ring finger/that half of my hand. Easier said than done.
- tmtvl 1y agoHow do they use the clutch? If they're doing reverse heel-and-toe braking then I don't get how they find standard driving difficult.
- Izkata 1y agoAlso small hands here. My own style involves using my shoulders and elbows for coarse movements, and when I need to type the symbol keys on the right I move my hand over to roughly index finger on ";", middle finger on "[", and ring finger on "enter". Moving further up or down for "+" or "/" usually also involves further hand movements instead of twisting or reaching.
- kccqzy 1y agoI also never learned the proper way of typing with home rows and all. And like the article author I also type at 100wpm. It's sufficient for me. I now need to try the author's suggestion of just typing as a therapeutic session. I suspect ~100wpm is enough for this therapeutic purpose whereas 60wpm isn't.
- hx8 1y agoMy goal has always been to type as fast as I can think, and if I need to move a lot of text around in a dumb way to use tools to help. Vim commands, text macros, refactor tools, formatters, etc. I type at about 90wpm, but when actively developing rarely go above 65.
- jimbob45 1y agoThe only time typing speed has helped me is when people try to gish gallop me when I’m messaging them and I’m able to gish right back faster than they can respond. That’s…not exactly healthy though.
- jchw 1y agoI used to type >140 WPM at high accuracy when I was younger without home row. These days I think I likely sit closer to 90 WPM or so, since I really just don't really need to type super fast very often and am pretty out of practice. I reckon home row is probably not terrible or anything, but like a lot of weird old ergonomics advice, I just don't trust the idea that you must or possibly even should use home row. For example, the best advice regarding ergonomics I've ever had is not to have proper posture at all times, but rather to get up more frequently and not sit in the same position for too long. Likewise, it feels a lot more natural to let my hands move around a bit, and as it would turn out my mouse arm is the one that wound up having more discomfort from long term computer usage. So clearly, YMMV. But a lot of us who didn't do home row are confused; some people will go as far as to say it's literally wrong not to, and I say, burden of proof is on you all.
- dylan604 1y agoI don't even come close to groking how one types without home row hand placement. How does that even work? Where are your hands if not starting at home row?
- n42 1y agoI’m not sure if this how other people do it but my hands sort of float around as I type rather than being fixed in one place. They gravitate towards home row but I was never trained “classically”. I type (peak) 140wpm. my understanding of the homerow style is that you have a sort of assigned finger for each key. while I type, there is plenty of overlap between fingers and it's constantly adapting based on where my hands are currently vs resetting to one position
- rconti 1y agoI'd never say I'm a classic home-rower, but I do use it as a starting point. My left hand mostly conforms, but I really only use my thumb and first two fingers on my right hand, so i get what you're saying about your hand moving all around. And, yeah, 120-150wpm. I wonder if "kids these days" don't type as fast because they didn't grow up with IRC and AIM and so on. Of course, they're way faster with their thumbs than I am. My phone typing started bad and gets worse every year (somehow).
- jampekka 1y agoLearning to touch-type effortlessly is IMHO one of the most useful thing to learn, for anyone typing regularly, but especially for programmers. It doesn't have to be fast, but just fast (and automated) enough not to cause a bottleneck. Unpopular opinion nowadays: This bottleneck is what makes needlessly verbose programming languages annoying. Having to wait for your fingers (or eyes) to catch up with your toughts tends to kill the flow.
- 98codes 1y agoWhen I was in the 8th grade (back in the 1900s), I took a typing elective class, because I figured if I was going to be in front of a keyboard typing for a living as a programmer, I should learn to do it right. That was a rare very good decision for kid me back then, and it's paid off ever since.
- sevensor 1y agoSame. Can touch type accurately while maintaining eye contact during a meeting. Young people find it unnerving.
- Boogie_Man 1y agoJust did this today. When people ask I tell them I'm a big Ray Charles fan.
- stavros 1y agoWhat? You guys are talking about this as if touch typing is some rare skill. I'm pretty sure everyone around the office touch-types, all my friends definitely do.
- sevensor 1y agoA shocking number of my colleagues never learned. It’s no longer routinely taught in school. Many people have to look at their fingers when they type. This includes people who write code for a living.
- absoluteunit1 1y agoI worked at FAANG and at a few mid tier companies and in my experience that hasn’t been the case with majority of my coworkers surprisingly
- stavros 1y agoHuh, really? I'm very surprised, I'll look around the office with more intention and take an informal mental poll.
- bee_rider 1y agoI sorta disagree, however fast you can type, the computer can manipulate text faster. Our brains are huge slow things. We should employ them at what they are good at, coming up with better abstractions and better frameworks. The desire to type faster is a strong signal indicating that you need better macros.
- malfist 1y agoSaving five minutes by typing faster is less valuable than spending five minutes thinking. Typing speed is not a limiting factor for writing good software. And I say that as someone who can type faster than most of my peers
- yokljo 1y agoPeople typing faster can make a huge difference at work: I get asked for help a lot, and when I ask someone to do something on their computer and they do it painfully slowly, that can represent a lot more time that I spend helping them rather than thinking about my own tasks. I thought this perspective was missing from the discussion, so now I've added it.
- scripturial 1y agoYou could save five minutes by typing faster _and_ also spend five minutes thinking. You are not considering all of the indirect effects. I.E. Someone who types twice as fast is more likely to be comfortable to throw in that extra line of docs/comments that explains that whacky line of code. Someone who has taken the time to improve the speed of the thing they are supposed to do for most of the working day, is a little more likely to be someone who cares about their job.
- Jcampuzano2 1y agoI spent basically all my life not typing correctly at all, since I learned from online gaming without a teacher. I ended up with a technique that had my whole hand shifted to be over WASD like when gaming with pinky only used for modifiers. It was even worse for my right hand as only recently I actually monitored how I typed, and I highly underuse my ring and pinky fingers on that hand. Worst part is I never use my thumbs for spacebar, I found out I literally shift my entire right hand to use my index finger every time I hit spacebar. Despite all of this I regularly typed ~120wpm. I think when it comes to speed almost everybody adopts at least some peculiar techniques. I only say typed past tense because I recently got into split ergonomic keyboards with keywells and columnar layouts and my old typing technique literally just does not work. I had to learn how to "correctly" type from scratch, but relatively quickly got to the similar speeds. Now I can easily swap between the two techniques depending on whether I'm using my laptop keyboard or not and type almost the same speed, I'm still a tad bit slower using "correct" technique. But I will say it is a hell of a lot less movement and tension in my hands typing correctly.
- ryandv 1y agoI am at least 99th percentile on typeracer. I wonder how much of these alleged LLM speedups are from people with low WPM and/or vim fluency.
- rgoulter 1y agoIf you're working with a language you're not-so experienced in, then the completion for `// read data from file f into x` is going to be significantly quicker than looking up the documentation for this.
- deleted 1y ago[deleted]
- ryandv 1y agoDepends on the language. Recently I got stuck on some issues with line-based processing of stream input with Haskell conduits and resorted to ChatGPT out of desperation. It wasn't of much use to me either, and then I ran out of free tier usage. I suppose for emitting boilerplate or other ceremonial code LLMs serve as an augmented "copy/paste from stackoverflow" and increase your KLOC/time, but this is not really an interesting metric and production of source code was never the rate-limiting step in creating software.
- nottorp 1y agoYou used the wrong language. Switch to one that has enough LLM training data :)
- nottorp 1y agoRead data into x? Taking into account that the file may not exist or error half way? Taking care that your buffer doesn’t overflow or simply eat all your available ram? Do you only work with trusted inputs?
- DontchaKnowit 1y agoMost the time, yeah, actually. Also- in my experience so far, LLMs do a far better job of accounting for things like this than I do. For example I had claude 4 write something to recursive search the whole filesystem on a windows 11 machine and included a few checks for windows 11 file system specific things I wasnt aware of
- zZorgz 1y agoWhile I was learning a new keyboard layout (Colemak) I went from > 100 WPM to starting from ~20 WPM. I think I got pretty productive when I reached 60/70 WPM and was surprised how much tab completion and computing assistance I relied on anyway. After that experience I think fast typing speed is overrated. (Now I’ve a somewhat useless skill of being able to type > 100 WPM on two different keyboard layouts.) Edit: note if you are a typist and transcribe a lot of text for long periods of time without break, typing speed is important. But that’s mostly not any of us. But hey maybe I don’t write enough documentation and comments..
- userbinator 1y agoI use "dynamic finger allocation", close to the standard fingering but not exactly. It's hard to describe as anything other than "closest finger that isn't currently in use". My burst speed is over 200 (peaked roughly 240) but I usually stay around 160-170 in 1-minute tests. Try typing words like "number", "bus", "zany", "excretion", etc. and you'll soon learn why sticking with the "proper" fingering is absolutely idiotic if you want speed and comfort. You can waste time and effort moving the "right" finger all the way from the bottom to the top of the keyboard, or just hit the key with the perfectly usable one sitting there idle. To elaborate, when typing "number" I use the index and middle finger to chord "nu", then "mb" is the next chord with the left index and right middle, which naturally pulls down my left hand enough that "er" is easily done as a final chord with the left ring and middle fingers.
- seanmcdirmid 1y ago> A lot of the value added by various intelligent tab completion and LLMs Saving typing was never a value add for intelligent tab completion, it is mostly used for discovery and recall (what members does the type of this expression have?), not to accelerate your WPM. After around 20-30 wpm, typing speed is not a bottleneck in programming, but size of the API and how much you can fit into your head most definitely is.
- nottorp 1y agoExactly. I wish I had tasks where typing at 120 wpm would be helpful. Because that would mean I’m writing new simple code. Problem is, you run out of new simple code to write pretty fast and then you have to start thinking and typing speed becomes irellevant.
- deleted 1y ago[deleted]
- thrance 1y agoTyping is not an underrated skill at all though. It's probably one of the most gatekeepy "you can't call yourself a programmer if you're bad at it" thing I've ever seen.
- blitzar 1y agoRegular off the shelf keyboard - no chance you can type fast enough on that to be a programmer.
- hiAndrewQuinn 1y ago>A lot of the value added by various intelligent tab completion and LLMs is easily replicated by typing variable and function names at 100+ wpm. The contrapositive of this is that, if you don't type at 100+ wpm, intelligent tab completion and LLMs add a lot of value you wouldn't otherwise get. Most of us don't, so this ends up being a vote in favor of the AI.
- Flemlo 1y agoI type fast. I don't think I could Mimik a LLM. But I'm prompting fast so that helps
- HPsquared 1y agoEven just knowing how to move the cursor quickly (ctrl+arrow keys, using shift as necessary) is a good reflex to have. I always see people pressing arrows / backspace etc repeatedly rather than moving a word/block at a time.