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.
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ó? 🙂
¡Buenas tardes Alberto!
Muy interesante la entrada. Me gustaría replicar tu proyecto sobre la información encontrada de los OVNIS pero basándolo int egramente en google maps y en un entorno Android. ¿Podrías compartir el csv que generaste con los datos de latitud y longitud? ¡Muchas gracias!
Hola Juan,
acabo de ver que se pueden descargar los datos de OVNIS directamente desde la web de CartoDB en varios formatos (CSV, SHP, GeoJSON…):)
Ahí va la URL: https://alrocar.cartodb.com/tables/ufo3/public/map
Ya me cuentas cómo acaba la cosa! Saludos 🙂
Muchísimas gracias Alberto, intentaré ponerme a ello en cuanto tenga algo más de tiempo libre 🙂