skip to main content
lessons
1 / 15
4 languages · real lines · no account

typing practice for code

The keys a prose course never asks for — brackets that have to close, quotes that have to match, and the number row under your weaker fingers. Real one-liners from 4 languages, then 80 small programs that run.

WPM0
ACC—
DONE0%
print("hello, world")
Right Pinky

why code breaks a typing speed

A course built on prose teaches you the letters, the comma, the full stop and the shift key, and stops there. Code spends its time somewhere else entirely: brackets that must close, quotes that must match, semicolons, arrows, underscores, and the number row struck by the fingers that get the least practice. The first time a fast typist opens an editor their speed roughly halves, and it is not because the words are hard — it is because half the keys are ones they have barely pressed.

real lines, not symbol soup

It is easy to generate a drill of random brackets, and it teaches almost nothing, because the thing that makes code hard to type is the shape of the sequences rather than the characters in isolation. An arrow function, a dictionary literal, a WHERE clause — each is a run your hands can learn as one movement. Every line here is something you would actually write, in Python, JavaScript, TypeScript or SQL.

then the ladders

Beyond these lines, code mode is four ladders of small programs, each rung adding exactly one new thing to the one before it. Every rung is a program that runs, so you are typing working code rather than a fragment, and the new characters arrive a few at a time instead of all at once. The indentation is shown but never typed — you type what a person types, and the editor's job stays the editor's.

it watches which keys go wrong

The same engine that runs the lessons runs this, so the keys and pairs that slow you down are recorded as you type, and the practice that follows leans on them. That matters more for symbols than for letters: nobody has a weak e, but plenty of people have a weak brace, and it will not fix itself while the drill keeps offering words.

free, and nothing leaves the device

No account, no ads, no tracking, and no server to send anything to. Your progress is stored in this browser and nowhere else, which is why it works offline and why there is nothing to delete elsewhere if you stop using it.

what you'll type

  1. print("hello, world")
  2. const total = items.length;
  3. SELECT name FROM users WHERE id = 42;
  4. let count: number = 0;
  5. if (x > 0) { return x * 2; }
  6. def greet(name): return f"hi, {name}"
  7. for (let i = 0; i < 10; i++) sum += i;
  8. values = [3, 5, 8, 13, 21]
  9. arr.filter((n) => n % 2 === 0)
  10. import { useState } from "react";
  11. UPDATE cart SET qty = 6 WHERE id = 79;
  12. user = {"id": 1, "name": "ada"}
  13. export type Point = { x: number; y: number };
  14. assert total >= 0 and total <= 100
  15. path = os.path.join(base, "src", "main.py")

questions

is this good practice for programmers?

It is aimed squarely at them. The characters a developer types thousands of times a day — brackets, braces, quotes, operators, underscores and digits — are the ones a general typing course touches least, so practising them specifically is the fastest way to close the gap between your prose speed and your code speed.

which languages does it cover?

Python, JavaScript, TypeScript and SQL. The lines on this page are drawn from all four, and the ladders behind it are one per language, written here rather than scraped, so each rung introduces its new characters deliberately instead of wherever they happened to fall.

do i have to type the indentation?

No. Indentation is displayed so the code reads correctly, but it is never something you type — your editor inserts it for you in real life, and drilling the space bar four times is not practice. You type the characters a person actually types.

should i learn touch typing first?

If you still look at your hands for letters, start with the lessons and come back — symbols on top of hunt-and-peck compounds the problem. If your prose typing is comfortable and it is the punctuation and brackets that break you, this is the right place to start and there is nothing to unlock first.