I have shipped features that looked beautiful and worked perfectly with a mouse, only to discover later that they were nearly impossible to use with a keyboard. It felt like building a grand stone keep with polished banners and glowing torches, then realizing I forgot to add doors. Users could admire it from afar, but they could not enter. Fixing keyboard navigation after the fact is humbling. It forces me to examine every assumption I made about interaction. It also reminds me that accessibility is not an optional side quest. It is part of the main campaign. When I return to an existing codebase to repair keyboard support, I approach…
-
-
The first time I truly understood the DOM, it felt less like learning a new API and more like discovering the rulebook behind the dungeon screen. For years I treated the browser like a mysterious Dungeon Master who simply made things appear. Click a button, something happens. Submit a form, data vanishes into the ether. Change a class, styles rearrange themselves like obedient goblins. It felt magical. It is not magical. The DOM is structure. It is state. It is a living tree of nodes that the browser maintains with ruthless logic. When I stopped treating it like a spell system and started treating it like a rules engine, everything…





