Skip to content

Typing Practice for Coding, and Why the Number Drops

Published: · Updated: · 8 min reading time

Six of the 29 characters in for (int i = 0; i < n; i++) { need Shift on a US ANSI layout, and that ratio is most of the answer to why a comfortable 80 WPM prose typist works far below that figure inside a source file. Code is slower to type than English, for reasons that have nothing to do with skill.

Where does prose speed go?

English is predictable. Common letter pairs live near each other, word endings repeat, and a touch typist is already moving toward the next few characters while reading the current ones. None of that survives contact with an identifier like getUserByEmail followed by (, ) and ;.

Three things change at once. The proportion of characters that require a modifier rises sharply. The sequences are not drawn from a familiar vocabulary, so there is nothing to anticipate. And indentation, brackets and quotes come in pairs that have to be closed, which turns typing into bookkeeping.

Then there is the honest explanation nobody likes. Most of the time spent in an editor is not spent typing. The pauses are the work, and a figure that measures characters per minute measures the least interesting part of writing software.

Advertisement

Which characters pull the hands off the home row?

On a US ANSI layout the punctuation used by nearly every language sits in three places: the right hand edge of the alphabet block, the digit row, and the bottom row under the right hand.

CharacterUS ANSIGerman QWERTZFrench AZERTY
[key right of P, unshiftedAltGr and 8AltGr and 5
{Shift on that same keyAltGr and 7AltGr and 4
\key above Enter, unshiftedAltGr and the ß keyAltGr and 8
;home row, unshiftedShift and commabottom row, unshifted
:Shift on that same keyShift and periodbottom row, unshifted
< >Shift with comma and periodown key left of Y, unshiftedown key left of W, unshifted
@Shift and 2AltGr and qAltGr and the 0 key

The pattern in the right two columns is the point. Everything a European layout gains in accented letters, it pays for in code, because the characters that moved out of the way to make room are the ones a source file uses most.

That distribution is why the two fingers doing the most work in code are the right little finger and the left little finger, one reaching for punctuation and the other holding Shift. Fatigue in code typing shows up there first, not in the index fingers.

How does AltGr change the count on European layouts?

On a European layout the same line of code needs a third modifier. A German T1 keyboard puts the opening brace on AltGr and 7, and the French AZERTY puts it on AltGr and the 4 key. The brace becomes a two hand movement, or a one hand contortion, on layouts used by a large share of programmers.

That is the practical case for learning where these characters live on the layout in front of you rather than assuming the American positions. The brackets and symbols guide lists the AltGr positions for the main European layouts, and the difference between ISO and ANSI explains why the physical key next to the left Shift exists at all on one of them.

Advertisement

Why does autocomplete make the measurement meaningless?

Any modern editor closes brackets and quotes for you, completes identifiers after three or four characters, and inserts whole blocks from a snippet. The characters on screen and the keystrokes you produced stop being the same quantity, so words per minute stops describing anything. A typist who accepts a completion after two keys has typed less and produced more.

This is why coding speed tests are hard to interpret. If the test disables completion, it measures raw punctuation work that you would never do unaided. If it allows completion, it partly measures how well you know the editor. Neither figure compares with a WPM measurement taken on prose.

There is a second measurement problem underneath the first. Editors and messaging tools quietly change characters: straight quotes become typographic ones, two hyphens become a dash, and a first letter is capitalized for you. In prose that is helpful. In code it produces a file that looks correct and will not run, and it is the reason experienced developers turn those substitutions off rather than learning to spot them.

What is actually worth practicing?

Three things repay attention, and none of them is speed on English text.

The punctuation reaches, one pair at a time, until braces and brackets stop needing a glance. The navigation keys, because moving the cursor is half of editing. And the layout specific combinations, which are pure memory rather than dexterity. If a symbol never appears no matter how you press for it, check the hardware in the keyboard test before rearranging your fingers.

Prose still has a place in this, as the thing that keeps the underlying touch typing honest. Michael Faraday’s account of the shadow of a candle flame is a good candidate: 460 characters from the Christmas lectures printed in 1861, one explanation nested inside another, which is about as close as English prose gets to the structure of code. Washington Irving’s 499 characters on going into the country, from The Sketch Book of 1820, run on semicolons from the first word to the last. And the Encyclopaedia Britannica of 1911 lists old English standards with a year in brackets and a semicolon between each pair, 315 characters that read almost like a line of configuration. All three are waiting in the typing test, each with its author, year and source on its own page.

Advertisement

Who should practice this, and what to practice

Yes, drill the punctuation reaches if you glance down for braces, if you work on a German or French layout where they hide behind AltGr, or if your right little finger tires before the rest of your hand. Those are the three cases where the keyboard, rather than the thinking, is the bottleneck.

No, do not chase a coding words per minute figure. Most of the time in an editor is not spent typing, autocomplete means the characters on screen and the keystrokes you made are different quantities, and the number describes the least interesting part of writing software.

Where to start: the pairs, one at a time. Braces, then square brackets, then angle brackets, until each stops needing a look. After that the navigation keys, because moving the cursor is half of editing. The typing test has a field for your own text, so paste a real file from your own project rather than an invented row of symbols.

When a lower figure is not a problem to fix

Advertisement

FAQ

Why is my typing speed so much lower in code?

Three things change at once. The share of characters needing a modifier rises sharply, six of 29 in a plain for loop on US ANSI. The sequences come from identifiers rather than a familiar vocabulary, so there is nothing to anticipate. And brackets and quotes arrive in pairs that must be closed, which turns typing into bookkeeping.

Which fingers do the most work when coding?

The two little fingers, one reaching for the punctuation along the right edge and the other holding Shift. Fatigue in code typing appears there first rather than in the index fingers, which is the opposite of what happens in prose.

Is a coding speed test worth taking?

It is hard to interpret. With completion disabled it measures raw punctuation work you would never do unaided; with completion allowed it partly measures how well you know your editor. Neither figure compares with a WPM measurement taken on prose.

Should I switch to a US layout for programming?

Only if you write mostly code in one language and own the machine. A US layout removes the AltGr reaches for braces and brackets, and it removes your accented letters along with them. The full arithmetic is in Dvorak and Colemak compared for alternative layouts, and in the brackets and symbols guide for the AltGr positions on European ones.

How do I practice the symbols without inventing exercises?

Paste real code. The typing test accepts your own text, so a short file from a project you actually work on gives you exactly the character mix you need, in the proportions you meet every day.

Sources checked on August 21, 2026: the Windows layout files for the US, German and French arrangements, downloaded as KLC files from kbdlayout.info.

Pick a text

Advertisement

More from the blog

What you can do here

Keyboard test

Press a key and watch it light up. It shows keys that stay silent, keys that fire twice, and how many keys your board reads at once.

Check your keyboard

Type texts worth knowing

A hundred short passages, from Lewis Carroll to the US Constitution. You type one and find out where it comes from and what it is about.

Pick a text