Hexmap: Motivation
In 2005, I was sad at how difficult I found it to reconstruct where I’d been while on holiday and bought a GPS logger. I also started using quantified self tools to log my everyday location, from Plazes through Moment, Moves, and Wanderings. I also used Gowalla until Facebook Meta killed it, have used Foursquare Swarm daily since then, and log rides and, recently, walks in Strava. I have a lot of personal location data in dispierate formats, and have long wanted to visualize it all. There have been two problems.
First, I continue to collect and so want a system to automatically ingest new logs. That rules out most of the advice online.
Second, the arbitrary precision of all this data makes it difficult to correlate and deduplicate. After extensive experimentation with geohash and arbitrary coordinate bucketing with sample data from various latitudes, it became clear a DGGS was needed. When Niantic’s Pokémon Go happened, I was inspired and started a Node.js project aggregating with Google’s S2, which worked fine but the state of mapping SDKs took the fun out of the exercise. Then Uber dropped H3 on the world, which I found more beautiful. I shelved the project but tracked the progress of H3.
Over the Christmas holiday of 2024, I learned Rust and needed a project, so Hexmap was born. I kept a diary of sorts at …/devlog.