Speed Typing Games for Programmers

Type each falling keyword or command before it lands, starting with control flow such as while and return.

0 of 25 Ready Press Start, then type each word before it reaches the ground.
More options

31 words of 2 to 8 letters.

Speed

–This run

–Your best

–Last run

25 words fall, and 3 words on the ground end the run. Type a word to clear it. Your best is the most words cleared, and then the better accuracy.

No runs yet. Your last ten will show up here.

Level of the day

One level is picked each day, and its words fall in the same order for everyone. Finish a run and a badge counts your days in a row.

Saved in this browser

All 188 words

Level 1: control flow 31

  • assert
  • async
  • await
  • break
  • case
  • catch
  • continue
  • default
  • defer
  • do
  • elif
  • else
  • except
  • finally
  • for
  • goto
  • if
  • loop
  • match
  • pass
  • raise
  • range
  • return
  • select
  • switch
  • throw
  • throws
  • try
  • while
  • with
  • yield
Show all 188 words (157 more)

Level 2: declarations 40

  • abstract
  • as
  • class
  • const
  • crate
  • def
  • del
  • delete
  • enum
  • export
  • extends
  • extern
  • final
  • fn
  • from
  • func
  • function
  • global
  • impl
  • implements
  • import
  • interface
  • lambda
  • let
  • mod
  • mut
  • native
  • new
  • nonlocal
  • package
  • private
  • protected
  • pub
  • public
  • static
  • struct
  • trait
  • type
  • use
  • var

Level 3: types and values 37

  • any
  • bool
  • boolean
  • byte
  • bytearray
  • bytes
  • chan
  • char
  • comparable
  • complex
  • dict
  • double
  • error
  • false
  • float
  • frozenset
  • instanceof
  • int
  • iota
  • list
  • long
  • map
  • nil
  • null
  • object
  • rune
  • set
  • short
  • slice
  • str
  • string
  • true
  • tuple
  • typeof
  • uint
  • uintptr
  • void

Level 4: shell commands 40

  • alias
  • awk
  • cat
  • cd
  • chmod
  • chown
  • cp
  • cut
  • date
  • diff
  • echo
  • env
  • find
  • grep
  • head
  • kill
  • ls
  • make
  • man
  • mkdir
  • mv
  • nohup
  • patch
  • printf
  • pwd
  • read
  • rm
  • rmdir
  • sed
  • sleep
  • sort
  • tail
  • tee
  • test
  • time
  • touch
  • umask
  • uniq
  • wc
  • xargs

Level 5: version control 40

  • add
  • am
  • apply
  • archive
  • bisect
  • blame
  • branch
  • bugreport
  • bundle
  • checkout
  • clean
  • clone
  • commit
  • config
  • daemon
  • describe
  • difftool
  • fetch
  • gc
  • help
  • init
  • log
  • merge
  • mergetool
  • notes
  • pull
  • push
  • rebase
  • reflog
  • remote
  • reset
  • restore
  • revert
  • shortlog
  • show
  • stash
  • status
  • submodule
  • tag
  • worktree

How this list was compiled: Five sets of words chosen for a falling-words typing game and checked on 2026-10-09 against the public reference each word comes from; every word is written in lower-case letters only, with 2 to 10 letters, and no word is used twice. Levels 1 and 2 (control flow and declarations) are reserved words and words with a special meaning from the keyword lists of four languages: MDN Web Docs, JavaScript reference, Lexical grammar (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar); The Python Language Reference, section 2.3.1 Keywords and 2.3.2 Soft Keywords (https://docs.python.org/3/reference/lexical_analysis.html); The Go Programming Language Specification, Keywords (https://go.dev/ref/spec); The Rust Reference, Keywords (https://doc.rust-lang.org/reference/keywords.html). Level 3 (types and values) adds the predeclared identifiers of the Go specification and the built-in types listed in The Python Standard Library, Built-in Functions (https://docs.python.org/3/library/functions.html). Level 4 (shell commands) is taken from the utilities index of The Open Group Base Specifications Issue 7, 2018 edition, which is the POSIX standard (https://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.html). Level 5 (version control) is taken from the command list of the Git reference manual (https://git-scm.com/docs). All seven pages were read on 2026-10-09. The sorting of the words into levels is this page's own. No language, product or company name is a word of any level, and a word with a symbol, a digit or a hyphen in it is left out. Licence: own work (a selection of single reserved words and command names from the public references named in the source; single words are not works)

How it works

These speed typing games for programmers are one falling-words game in five levels. It opens on control flow, such as while, return and except. Declarations, types, shell commands and version control follow. Every word is letters only, with no symbols.

Read the full guide

What falls in each level

Level 1 is control flow: elif, switch, finally, defer. Level 2 is declarations, from const and lambda to impl and nonlocal. Level 3 is types and values, such as boolean, tuple and uintptr. Level 4 is shell commands: grep, chmod, xargs. Level 5 is version control: commit, rebase, bisect.

Why code words are harder than English

Many of these words are not English, so spelling habits do not help: mkdir, nohup, reflog and fn go in letter by letter. The two-letter ones, such as cd, ls and gc, get the least time to fall.

Questions and answers

Is this a code typing game with brackets and symbols?

No. Every falling word is a single reserved word or command in letters only; a name with a hyphen, such as cherry-pick, is left out. For whole lines with brackets, colons and quotes, take the code typing test, which gives words per minute.

Which languages do these coding typing games cover?

The keywords come from the published keyword lists of JavaScript, Python, Go and Rust, the shell commands from the POSIX standard, and the version control words from the Git manual. Many words, such as for and return, belong to several languages at once.

How fast do the words fall?

At Normal a word falls for 9 seconds plus half a second for each letter, a little less as the run goes on. Fast gives it six tenths of that time, and Gentle 1.6 times.