Lembre-se de um local em qualquer lugar do mundo com apenas três palavras.
Experimente: http://these3words.herokuapp.com/
Alguns locais interessantes:
Este aplicativo foi inspirado em http://what3words.com/
>>> import thesethreewords as these
# the home of particle physics
>>> CERN = (46.232355, 6.055419)
>>> three = these.three_words(CERN)
>>> print three
'turks-yunnan-salant'
>>> these.decode(three)
(46.232335567474365, 6.055419445037842)
Veja onde isso fica no mapa These3Words.
Você precisa instalar as bibliotecas geohash e garrafa:
$ pip install geohash
$ pip install bottle
Existem muitos quadrados de 3x3m na superfície da Terra. Codificá-los em apenas três palavras requer uma longa lista de palavras, e como resultado algumas palavras bastante obscuras aparecem nela. Se você consegue conviver com a necessidade de lembrar seis palavras, a lista de palavras é muito mais curta. A lista de palavras de seis palavras vem da incrível biblioteca humanhash. As palavras foram escolhidas para maximizar a clareza na comunicação humana; elas deveriam ser mais familiares do que as palavras da lista de três palavras:
>>> six = these.six_words(CERN)
>>> print six
'spaghetti-carolina-kentucky-oscar-iowa-table'
>>> these.decode(six)
(46.232335567474365, 6.055419445037842)
Cada par de latitude/longitude é convertido em um geohash de nove caracteres. Isso fornece resolução de cerca de 3 metros em todas as latitudes. O geohash é então convertido em um número inteiro que é codificado como uma sequência de palavras.
A lista de palavras usada para codificar o geohash
em apenas três palavras usa o dicionário do seu computador local. Algumas tentativas são feitas para remover palavras realmente obscuras, mas poderia ser melhor. Você precisa usar a mesma lista de palavras ao codificar e decodificar um hash these-3-words
.
O hash these-3-words
compartilha a propriedade de um geohash
que os locais próximos compartilham e têm hashes semelhantes these-3-words
>>> other_CERN_site = (46.256811, 6.056792)
>>> six = these.six_words(other_CERN_site)
>>> print six
'spaghetti-carolina-kentucky-utah-seventeen-neptune'
>>> these.decode(six)
(46.256797313690186, 6.056792736053467)
O outro site do CERN está aqui no mapa.
O arquivo server.py
fornece um pequeno webservice que permite exibir uma localização dada por três palavras em um mapa do Google Maps.
O servidor requer que o Bottle.py esteja instalado. Ele pode ser executado localmente digitando ./server.py
ou python server.py
respectivamente.
trazido para vocês pelas produções @betatim e @kdungs