The tale of one startup on a budget, wading through the tile wars
FOSS4G Boston | August 18th, 2017
I am:
Bill Morris, Cartographer at Faraday Inc.
What I do:
Customer Intelligence Platform
This requires piles of data
A map-centered application
But it wasn't always this way . . .
Phase 1 (2014): Just let Carto[DB] handle it for us
Establishing the visual style . . .
Side note:
OH @faradayio: "We've heard vector tiles are awesome; let's try them out!"
Phase 2: Use Tilestache (Thanks, @michalmigurski), serve GeoJSON into a hacked-together d3.js-based client (Thanks, @nelson)
Phase 3: Build Tilesplash, serve TopoJSON into a dedicated canvas-based client layer (Hoverboard)
Scale troubles:
Phase 4: Update Tilesplash to serve MVT
Phase 5: Rewrite the client. Again. Try out the new Mapbox GL hotness.
. . . and prepare to introduce multivariate maps. Experiments:
Phase 6: Start over. Consider old adages.
"What if we . . . drew dots on a bitmap really fast?"
Enter Rust, and "Grout".
Node begs PostGIS for some coords:
Rust devours the output, renders pngs:
Current status: Speed and Stability
Q: Why might you go raster these days?
A: Speed + reliability in very narrow, million-point use cases
Q: Why might you just ride the vector wave?
A: Lord. A million reasons, but here's one from just this week
Thanks! Hit me up with any other questions: bill@faraday.io @vtcraghead on Twitter