I've been working on this stuff for a long time. I've worked on projects that took off, and projects that never saw the light of day. At this juncture, I'm working on Mapbox Studio and Mapbox GL JS as much as I can, and am honestly very optimistic about the next few years in mapping. This would suggest that I should just talk about Mapbox Studio and GL JS and how cool they are.
But I'm going to take a guess that you like your demos on your own computer rather than a projector, and since you're here you aren't just shopping for technology, you're building it. So apologies if you're completely unsold: I'm not going to try.
Given all of the hype you see in the mapping industry, you might think that these are the parts that matter: that vector tiles are fancier and faster and CartoCSS or MapCSS or Mapbox GL Style Spec or JavaScript is the thing that unlocks all of this amazing potential
And, yeah, that stuff is cool and we've been working on it a lot, but the axis of maps turns elsewhere.
See http://dev.openlayers.org/examples/wms-untiled.html for an example of this
untiled wms is what we call nowadays just straight-up 'static maps'. it used to be way more common and is pretty much the only reliable way to request non-mercator maps.
These tiles are called XYZ tiles nowadays, and OpenStreetMap has the best specification for them: http://wiki.openstreetmap.org/wiki/Slippy_Map It's a folksy spec with no real governing body, but it's worked out pretty fine because it's so simple.
The subtext is that we have vectors already, and have had vector rendering in one form or another since the very early days (fun fact that the earliest computer monitors were vector, and were super cool). But the place where it sits in the mapping world is just short of "actually powering a map": tech like SVG and Canvas is pretty neat but not good enough or fast enough to render complex base maps.
No, but seriously, PostScript is a true language nerd's language: it's a turing-complete concatenative language that everyone just thinks is for printers. It's hella cool https://en.wikipedia.org/wiki/PostScript
The astute reader might point out: but you can unproject those pixels back to geographical coordiantes. Indeed you can! But that's not the driving intent of the format: vector tiles are designed as a processed data representation, not a raw one.
Shoutouts to Open Science Map, the project that created some really early but amazing specs for vector tiles. It takes a really really really long time to get the details right on vector tiles, and so it's not super surprising that Mapbox's are more or less the only (open) horse in the race, but I welcome the eventuality of competitors. As long as they actually improve on it, not just rebrand.
props to google for protocol buffers and kenton for captnproto and sandstorm - he's doing a good thing for everyone.
This probably pushes people in separate directions, right? like half the audience is pumping their fists that their CS educations are finally paying off and other half find 'datastructures' to be an even more intimidating word than databases
Okay, so I've given the thousand foot description of vector tiles: let's return to the phases of mapping within this information and see how it connects.
Look at that: closing the narrative loop.
This caching really happens on lots of levels: MBTiles at the first, and then memory caches like memcached on the server level, and Cloudfront and Fastly at the CDN level, and finally in the browser. Caches on caches.
yep, this is kind of a subtweet of stuff like topojson and torque. much love to those specs - they do amazing, fantastic things to data that rule, but it's really important that they don't just represent the same information in less space - they fundamentally change what the information is, at its core, irreversibly
Fun sidenote: in information theory, and cringe at my vast oversimplification, but compressibility is the other end of entropy: the more entropy, the less simplicity.
Obviously fuzzy numbers, but this is roughly 400kb / 29gb
TileMill: remember that? That's a project we did on a Knight News grant, a desktop tool for map creation. It was the reason CartoCSS got built, and a real cool experience. It's still around as an open source project.
Yeah, this one's kind of weird for us too - it's some parts a stepping-stone and also sort of a vector tile processing powertool more similar to tippecanoe than like Mapbox Studio https://github.com/mapbox/tippecanoe
see https://www.mapbox.com/studio for the deets on studio
troll me about open standards, i dare you.
There are lots and lots of demos of animated data, and lots of proposals for heavily-optimized formats, but no unoptimized simple formats. We need to just finish the GeoJSON-LD time series spec and adopt it.