El último hackathon en el que participé fue patrocinado además de por Prodevelop por CartoDB

Para el que no lo conozca, CartoDB es un servicio en la nube para publicar y visualizar fácil tus datos geoespaciales. Está basado en software libre, de hecho aunque no está muy documentado, puedes desplegar CartoDB en OSX tú mismo (tengo que probarlo algún día).

El tema está en que a los que participamos en el hackathon nos dieron un cupón para crear una cuenta de prueba de CartoDB, así que decidí usarla.

cartodb ufomap

El proceso para crear un mapa en CartoDB lo dividí en 3 pasos:
 

1. Preparando los datos

 
Esto es casi lo más importante, sin datos no hay mapa. No sé cómo llegué, pero encontré un dataset interesante. Un archivo con 60.000 registros de avistamientos de OVNIS

El problema: No estaban georeferenciados, sólo incluían el nombre de la ciudad en el que habían sido vistos.

La solución: No fue la mejor, pero tampoco quería dedicarle mucho tiempo. Decidí importar un dump de ciudades de geonames en PostGIS y escribir un cutre-algoritmo de fuerza bruta en Java para obtener la geolocalización de cada OVNI.

No lo voy a explicar con detalle, pero al final el resultado fue un fichero CSV con los datos del dataset descargado más la longitud, latitud.
 

2. Creando el mapa de OVNIS con CartoDB

 
Esta parte, sin duda es la interesante y mi sorpresa fue lo fácil que resultó. Me basé en este vídeo, así que no voy a entrar en detalles, porque seguí los pasos casi al pie de la letra, sólo variando un poco el estilo…

Por ser algo crítico hay dos cosas que no me gustaron de CartoDB. La primera es que me dio varios “petazos” al subir la capa, ahora mismo no recuerdo, pero serían unos 20MB de ficheros y tuve que probar varias veces hasta que conseguí subirla. La segunda cosa que no me gustó, es que para registrarme, aún con un cupón, me pidieron la tarjeta de crédito. No tuve que pagar nada, pero bueno, no mola.

Por lo demás, bien, me gustó mucho como cuidan la UX. Eso sí, cuando me caducó el cupón hice un downgrade de la cuenta de CartoDB y ahora estoy usando la cuenta gratuita 🙂 (soy pobre).
 

3. Publicando el mapa en una landing page

 
Por no compartir el mapa en plan cutre, decidí crear un pequeña landing page, utilizando la plantilla Landy y publicando la web utilizando la rama gh-pages de Github.
 

Resultado final: un mapa de OVNIS con CartoDB

 
El mapa se puede visualizar desde la web de UFO Map en Github, otra web de backup en el dominio donde subo las aplicaciones web que hago y aquí debajo el resultado embebido en un iframe con el API de CartoDB (si no se ve nada es porque se ha superado el límite de visualizaciones de la cuenta gratuita de CartoDB)


 

Por cierto, que dio la casualidad que justo a los pocos días la gente de CartoDB abrió un concurso de mapas creados con su servicio y a los dos ganadores les regalaban una entrada al Mobile World Congress. ¿Adivináis quién ganó? 🙂