All posts#javascript7 posts with this tag28 March 2026I Wanted Course Authors to Write Tests. I Built a Language.How a simple request to let course authors write assertions turned into building a domain-specific language — and what that taught me about every API I use.28 March 2026Using My Own DSL Taught Me More Than Building It DidBuilding a DSL is the tractable problem. Using one on something real — a calculator, five clicks, a failing test — showed me the part I'd missed.26 March 2026Rick ASCII — Turning a Rickroll into CharactersWhat would a video look like if every pixel became a character?26 March 2026Why Async Code Feels UnpredictableJavaScript runs code in a single thread — sync, then microtasks, then one macrotask, repeat. Once you see the queues, async stops feeling random.22 March 2026Why State Management Becomes HardState gets hard not when you store it, but when several places change it. One store, one dispatch, one reducer — and every update has a reason you can trace.19 March 2026Debounce vs Throttle (With a Real Example)Debounce waits until things stop; throttle limits how often things happen. One demo, two functions, and a subtle trailing-edge detail most implementations miss.14 November 2024Arrays ExplainedIndexed, multidimensional, and associative arrays are one idea wearing three outfits — store something, give it an address, retrieve it later.2026 © Jordan O’Hara