Geohash: text representation allows you to sort locations by proximity
en.wikipedia.org
en.wikipedia.org
https://code.google.com/p/s2-geometry-library/
The key difference with geohash is that it uses a Hilbert curve instead of a z-curve and it projects the world in a cube instead of using directly cartesian coordinates.
That said, geohashes like this are bad because they rely on lat/long without normalizing for distance first
It wraps around a java jar file. I can't study the code to see how it's implemented.