Coding Typing Test

Typing prose is one skill โ€” typing code is another. This test uses the real vocabulary of modern software engineering, not synthetic word lists.

Time1:00
WPM0
Acc100%
class maybe state undefined order switch high rust then service tree-shake while object push session token controller cookie is javascript let pull ref endpoint during javascript else could database export cookie build cookie then login build middleware again of react never wait build query never undefined var code let toml know view reset test template body props checkout close view limit should xml play response reject false update function var tree-shake this state order python later between back object branch false screen much cookie python test service reducer fetch auth view because insert never case component compile tuple join finish string where type begin model fetch delete around around boolean down group header login we object component win session dom course only stop the commit extends there string start store or kotlin during dom lifecycle request branch select is where make different async view string interface ref home us finally for saml down update resolve toml team body default been array stash lose later old during state react dom foreign delete limit reducer deploy response index type endpoint feel enum with through virtual compile both can continue update they lifecycle never saml response void database request foreign why branch commit secret foreign start win token false no is high there react different promise saml switch order where service service component been index under most true props push react next better order to new mount render const database void reducer lose where begin minify sentence seem could stash push json undefined index two json export state foreign sentence type oauth every focus session because array middleware some who where deploy rebase about limit feel endpoint we null unmount hook config from bundle deploy query checkout while env service token continue flow return yaml void break update endpoint index javascript react secret it type delete or ready auth work undefined was rebase hook merge primary throw screen dom test default login finish right golang update promise then database find jwt later through dark other state var or context oauth first could yaml route on ready and super class test while login auth some import route year delete just primary for header false world rank ref after just build if null to typescript promise import there primary boolean component cookie pull index level push index sentence golang deploy press yaml string hook focus offset header continue typescript group order controller golang offset primary try reducer try update implements quick body commit lint template yaml dom request new javascript type function endpoint model migration login by view end much next toml different endpoint bright select through context config resolve home type then service fast render best case tree-shake pull life reducer function token tuple extends request continue limit effect from number auth promise request look world response light love component word export make reject compile yaml last when build see migration xml only true would case select reject offset where next delete header while oauth login at cookie object an dark was context high

Start typing to begin ยท Tab or Esc to restart

Why this test matters

Engineers don't type 'the cat sat on the mat' for a living. They type identifier names like `useEffect`, `async`, `props`, `callback`, `migration`, and the connective tissue of code reviews and PR descriptions. The vocabulary here is 70% programming words drawn from TypeScript, React, Node, databases, git workflows, deployment, and auth โ€” with common-English glue in between so the prompts read like sentences in a code review rather than a token dump. Symbols and indentation aren't included yet (that's the full code-mode test, coming in a later phase) โ€” this is the prose-with-engineering-vocabulary halfway step. Expect a 15-30% drop from your standard prose WPM, mostly because engineering identifiers don't fit common bigrams. Used as a warm-up before pair-programming or a real coding session, it's surprisingly effective at clearing fingers' rhythm without the friction of full code syntax.

Frequently asked questions

Are symbols and indentation included?
Not in this test โ€” that's the dedicated code mode (coming soon). This is engineering vocabulary in prose form.
Will this make me faster at writing code?
Directly, modestly. Indirectly, the bigram drilling transfers โ€” code identifiers share many bigrams with normal English.
Why is my code-vocab WPM 20% slower than regular WPM?
Programming words don't fit the common-English bigrams your fingers have memorized. Practice closes the gap in 4-6 weeks.

Related typing tests