Little Earth Spatial Programming

Field Notes

From the bench

Long-form write-ups on spatial tooling, web mapping, data visualization, and the occasional 3D-printed mountain range.

Jun 2026 · Spatial R&D Skywatch: real-time 3D viewshed analysis in the browser An R&D project computing what's visible across terrain as a live 3D mesh — one Rust core compiled to both a CLI and WebAssembly, rendered with Three.js. Dec 2025 · GIS & Fabrication 3D Printing Vancouver Island A GIS-to-physical-model journey: turning a digital elevation model into a multi-tile, two-colour 3D print with QGIS, custom Python, and a Bambu P1S. May 2015 · Data Visualization Morphing Between SVG Shapes Smoothly animating from one SVG shape to another comes down to a single rule — both paths need the same number of nodes. Sep 2014 · Data Visualization Animating a Geographic Boundary into a Circle A D3 + SVG technique for morphing a geographic boundary into a circle and back again — building both paths from the same set of nodes. Apr 2011 · GIS & Terrain Analysis Creating a Terrain Wetness Index from a DEM Deriving a topographic wetness index from a digital elevation model in GRASS by combining mean-elevation variance with aspect variance. Jan 2011 · GIS & Terrain Analysis Calculating Topographic Exposure with GRASS Modelling topographic exposure (TOPEX) from a DEM with GRASS, r.mapcalc neighbourhood operations, and a little trigonometry.