SpotReg

Our Solution

We have created SpotReg as a coding system that turns your GPS coordinates into a handy string. The string can then be split up into chunks with each chunk being represented by a word. The words form a sentence with nouns, adjectives and verbs, often sounding very silly indeed. The sillier they are, the easier they are to remember.

It works like this:

We start high above a map of the earth and split it up into 25 squares making a 5x5 grid.

We label each square with a single character from a list of 25 possible numbers and letters (chosen to avoid similarities as much as possible )

We split each of these squares up into 25 smaller squares and label each one in the same way. We append this new character to the previous character.

By this point we can identify 625 different areas of the world with just a two character code. We can repeat this process to any depth, each time adding another character and reducing the area of each square.

Using some trigonometry we can also go from a square back to latitude and longitude coordinates - in other words we don't need a database or a server to work this out - it can all be done in a simple function in the browser or app. That means no server costs and no data costs.

The Codes

These are the characters we have chosen:

2 3 4 5 6 7 8 9 C D F G H J K L M N P Q R T V X Y

Which in a 5x5 grid look like this:

Map at 1 level deep

(Note that the satellite and map imagery is copyrighted by other suppliers, not us)

At two levels deep the codes look like this:

Map at 2 levels deep


Precision

A SpotReg of 10 characters represents an area of about 4m x 4m at the equator and the sizes are smaller/more precise the further you go from the equator. That's sufficiently precise to get our pizza delivered.

Choice of Characters

The choice of characters we have made is based on the idea that when they are spoken or written they are unlikely to be confused with the other characters and ideally can be spoken clearly with a little punch. Also the vowels were removed to avoid the chance of obscenities. Our list is made up of the characters that weren't rejected:

  • A,E,I,O,U - rejected because they are vowels and also look like numbers in the case of I and O. The numbers 0 and 1 were removed for the same reason.

  • The letter B looks like the number 8.

  • F and S sound the same on the phone so we chose to keep just one, F

  • W is a bit of a mouthful - 3 syllables

  • Z looks a bit like the number 2 and can be pronounced in multiple ways

We think being able to communicate where we are with a 10 character code is a good start, but we have taken it a step further by mapping the codes to words.