Read it. Run it. Prove it.
A post a day on web development and languages — most with an editable playground and a quiz that explains every answer. Free, and no account needed to read.
- 201 posts
- most with a playground you can edit
- and a quiz that explains every answer
Writing from the workshop

Stop Shipping Search Boxes With a Race Condition
Type fast into a search box wired to fetch(), and the result on screen isn't from your last keystroke — it's from whichever request happened to finish last. That's a race condition, and the fix is a one-line guard.
You're Blocking Scroll by Default. passive: true Fixes It.
Nov 6 · 5 min NestjsNestJS 12.2: Why validationError.target Is Now undefined
Nov 6 · 12 min JavaScriptStop Hacking Base64 With btoa(). toBase64() Fixes It Natively.
Nov 5 · 5 min Meetings and roomsRunning the meeting is a different job than being in one
Nov 4 · 7 minGames, free and in the browser
Nothing to install, no account needed. A new one drops every week.
Neon Snake
The one everybody already knows how to play.
Free · no account · about 2 min →Reaction Time
Green means click. Everything else is you being too eager.
Play →Block Fit
Three shapes at a time. No falling, no timer, no mercy.
Play →Daily Word
One five-letter word. Six guesses. Everybody gets the same one.
Play →Minesweeper
Thirty years old and still the best logic puzzle on a computer.
Play →Tools built in the open
A package a week, MIT licensed and fully typed — plus everything the community shares.
Vue 3 HEIC/HEIF image preview and converter for the browser: HeicImage component, useHeicImage composable, PNG/JPEG/GIF output, TypeScript, iOS photos,…
Not sure what to read next? Follow the map.
HTML and CSS first, then JavaScript, then Vue or React — every level an article and a quiz, every zone a checkpoint that opens the next.
- Pass a level's quiz to open the next one
- Beat a checkpoint to unlock the next stage — or skip one you know
- Free, and no account needed to start
HTML → CSS → JavaScript → Vue / React → Nuxt / Next.js → TypeScript → Ship it → certificate