⌨️
DevType.site

JSON & YAML Typing Speed Test

Config files are where developers spend more typing time than they admit: package manifests, CI pipelines, Kubernetes manifests, compose files. JSON's quote-colon-comma discipline and YAML's indentation-plus-dash structure each have their own failure modes worth training.

Target Categorylanguage DrillMode: JSON & YAML
LV 1
Level Progress0 / 100 XP
High Score0 WPM
Badges0 / 5
πŸ“…
Daily Challenge
A new snippet every day β€” same for everyone. Keep your streak alive.
Snippet Language
Custom
Difficulty
Test Length
Keyboard Layout
Visual Theme
Key Switch Sounds
Volume
WPM00
Accuracy00%
Timer0s
πŸ“„ main.js
Ready
1
Click here or press any key to focusTAB / ANY KEY

Config Syntax: Strict and Stricter

JSON is unforgiving: every key double-quoted, every pair colon-separated, every element comma-delimited β€” except the last, where a trailing comma breaks the parse. The quote-word-quote-colon rhythm (`"name": `) repeats for every field, and nested objects stack closing braces and brackets in sequences (`}]}`) that demand bracket-matching awareness while typing.

YAML swaps braces for indentation and adds its own vocabulary: the dash-space list marker (`- uses:`), bare keys with colons, and multi-level nesting where two spaces of drift changes meaning entirely. Real-world YAML β€” GitHub Actions workflows, docker-compose services β€” mixes both styles with inline arrays (`[push, pull_request]`) and quoted port mappings (`"3000:3000"`). Typing configs accurately the first time saves the debug cycle a stray character causes.

Key Drills for JSON & YAML:

  • Quote-colon rhythm: JSON keys follow `"key": ` exactly. Make quote-word-quote-colon-space one continuous motion.
  • Dash-space lists: YAML list items start `- ` β€” drill the marker so sequences flow line to line.
  • Watch the closers: Practice `}]` and `}}` stacks. Deep JSON nesting closes in bursts that cause most config typos.

Sample Drill: JSON Config Object

Nested JSON with arrays, strings, and boolean flags.

json-package Β· easy
{
  "name": "devtype-api",
  "version": "2.1.0",
  "private": true,
  "scripts": {
    "dev": "node --watch server.js",
    "test": "vitest run --coverage"
  },
  "keywords": ["typing", "developers"]
}

The Symbols That Slow You Down

The keystrokes below are where JSON & YAML typing speed is won or lost. Key positions shown for QWERTY β€” the pattern transfers to any layout, just on different physical keys.

SymbolUsed ForKeysHow to Drill It
"key":Quoted key pairQuotes as Shift+Apostrophe, then : as Shift+SemicolonJSON's core rhythm: quote-word-quote-colon-space. It repeats for every field, so it must be one continuous motion.
}]Nesting closers} as Shift+], ] as Shift+[Deep objects close in bursts β€” `}]}`, `}}`, `]}]`. Bracket-matching while typing is a trained skill.
,Element separatorUnshifted commaEverywhere except the last element β€” where a trailing comma breaks the parse. Know when NOT to type it.
- YAML list item- unshifted, then spaceThe dash-space marker starts every list entry. Consistent rhythm keeps YAML indentation honest.
#YAML commentShift+3Comments in config files. Shift-3 mid-edit shouldn't break your indentation flow.
---Document separatorThree hyphensOpens YAML documents and front matter. Three even hyphen strikes.

Common JSON & YAML Typing Mistakes

  • βœ—Trailing commas in JSON β€” the parse breaks exactly where your typing rhythm says a comma belongs.
  • βœ—Indentation drift in YAML: two spaces change meaning, so type structure deliberately, not by feel.
  • βœ—Quote-style confusion: JSON demands double quotes, YAML accepts both β€” drill them as separate dialects.

What's a Good JSON & YAML Typing Speed?

Config typing is about accuracy more than speed: 25–40 WPM with 98%+ accuracy is the goal. A single wrong character in CI YAML costs a re-push and a re-run β€” accuracy is the metric that matters here.