A personal blog by a software engineer. Practical notes on JavaScript, Node.js, geospatial maps, and the occasional unexpected rabbit hole. No fluff — just things worth writing down.
A clear-eyed look at prototype-based inheritance in JavaScript — before ES6 classes made it easy, and why understanding the underlying mechanism still matters.
A curated list of small, focused programming challenges — designed to sharpen fundamentals, build problem-solving habits, and give you something to work on when you have 20 minutes and a code editor open.
Before WebSockets were everywhere, long polling was how you pushed data to the browser in real time. A practical walkthrough of implementing it cleanly with Node.js — and when you should (and shouldn't) still use it.
A very different kind of engineering problem — how to extend the adjustable steel legs on an IKEA UTBY table when you need more height. Part machinist puzzle, part documentation for future-me.
Every post, in order. JavaScript internals, Node.js patterns, geospatial experiments, hardware tinkering, and whatever else seemed worth writing down at the time. No categories, no algorithm — just posts.
go-left.com/blog/An interactive OpenLayers demo exploring vector feature selection and editing in the browser — built when OpenLayers 3 was still shiny and geospatial JavaScript was genuinely hard.
The demo implements click-to-select, drag-to-move, and vertex editing on GeoJSON features rendered to a canvas map tile. Still works. Still interesting.
Open the map demoInheritance patterns, prototype chains, closures, and the parts of JS that reward careful reading. Pre-ES6 and post-ES6 thinking both have a place here.
Server-side JavaScript patterns — from real-time long polling to async patterns and everything in between. Practical, not theoretical.
OpenLayers experiments, vector editing, coordinate systems, and the surprisingly deep world of browser-based mapping libraries.
100 small exercises designed to build programming muscle memory. The kind of thing you wish someone had handed you when you were starting out.
Occasionally software engineering bleeds into the physical world. IKEA hacks, workshop notes, and anything else that involves a measuring tape.
Everything published, in order. No editorial calendar. Posts appear when something seems worth writing down.
This is a personal blog by a software engineer who believes that writing things down is part of understanding them. Not every post is polished. Some are barely more than notes-to-self. That's fine.
The topics tend toward JavaScript (especially the parts that confused me until they didn't), Node.js server patterns, and geospatial experiments with OpenLayers. Occasionally something completely different — like modifying IKEA furniture.
The 100 little programming exercises post gets the most traffic. It started as a list for myself and apparently struck a nerve.