Versión 0.3 final del proyecto BDCUT_CL y el nuevo script de auto-generación

27 enero, 2018 at 16:53

En Diciembre de 2017 logramos terminar la versión 0.3 final de nuestra base de datos de códigos territoriales para Chile o también conocida como la mejor Base de Datos de Regiones y Comunas de Chile disponible hasta el momento de forma libre.

Esta nueva actualización tiene 2 mejoras importantes:

  1. Actualización de la base de datos de códigos territoriales, incluyendo la nueva región de Nuble. Nueva división, que entrará en vigencia el día 6 de septiembre de 2018.
  2. Posibilidad de generación automáticas de múltiples formatos de Base de datos, a partir de una sola fuente única.

Debemos agradecer a Gustavo Alfredo Marín Sáez, quien colaboró con el diseño y código inicial del script generador de formatos.

 

Lista de cambios.

 

Script para generar archivos en diferentes formatos

La introducción de este script supone una notable mejoría en el momento de generar nuevos formatos de la Base de datos, ahora es posible que nuevos desarrolladores generen las pautas para nuevos formatos  y estos sean fácilmente actualizables cada vez que sea necesario.

Lista de Archivos en formatos independientes y el script de generación.

El script principal se llama csv_to_sql.js Pero no solo puede transformar de formato CSV a SQL, sino que puede interpretar cualquier formato fuente con instrucciones en JSON para dar como salida el archivo final en el formato deseado. Lamentamos no haber tenido el tiempo para cambiarle de nombre.

Este csv_to_sql.js  está escrito en Javascript (por qué este lenguaje?, no lo sé, habría que preguntarle a Gustavo Alfredo Marín Sáez)  y para ejecutarlo se le debe entrar una archivo con las instrucciones para el nuevo formato y el archivo maestro de la BBDD que está en CSV.

Aqui un ejemplo

node csv_to_sql.js formatos/postgres.json ../BD/PosgreSQL_utf8/BDCUT_CL__PosgreSQL_utf8__generado.sql ../BD/CSV_utf8BDCUT_CL__CSV_UTF8.csv

Como sabemos que escribir todos esos comandos no tiene clase, hemos generado un makefile para automatizar la actualización de todos los arhivos, de esta forma solo debe ejecutar desde tu terminal favorita algo como esto:

cd bdcut-cl/SCRIPT/
make clean
make all

Si tienes más ideas, estamos atentos en la página del proyecto en Github

 

 

10 años de ediciones en OpenStreetMap, 6 ciudades de Chile 2007 -2017

12 septiembre, 2017 at 11:49

Mediante la ayuda del script https://github.com/MaZderMind/osm-history-renderer logré generar este video time lapse con datos de 10 de años de ediciones en la Base de datos de OpenStreetMap, se pueden ver como 6 ciudades de Chile prácticamente partieron de la nada y gracias a miles de voluntarios se logró construir un mapa libre de Chile.

Te recomiendo seguir el tutorial oficial: https://github.com/MaZderMind/osm-history-renderer/blob/master/TUTORIAL.md

Para generar la animación de la zona de Concepción, también puedes especificar el espacio de tiempo (periodo) que quieres las animaciones, en este caso quiero todos los años disponibles. (los datos más antiguos datan del 2007)

./osm-history-renderer/renderer/render-animation.py -s /opt/OSM/osm-mapnik-style/osm.xml --bbox -73.1104946,-36.8467274,-73.004837,-36.7949211 --label "%d.%m.%Y" --label-gravity SouthEast -x 1920x1080 -S days=+14 -f Concepcion

Generar un video de las pantallas generadas
ffmpeg -r 10 -f image2 -i Concepcion/%010d.png -crf 0 -pix_fmt yuv420p Concepcion.mp4

Si quieres editar el video en un mac, es posible que tengas algún problema con el codec de video, por lo que es necesario recodificar nuevamente el video con el siguiente comando

ffmpeg -i Concepcion.mp4 -pix_fmt yuv420p Concepcion_2007_2017__2.mp4

Después que tienes las animaciones individuales, el resto es pasarlo a post-producción con tu editor de videos favorito.

Disfrútenlo en HD.

Quieres descargar el video? sigue este link: https://www.flickr.com/photos/dalacost/36274330474

Debilidades de Strava y mi colección de Hack tools

15 marzo, 2017 at 10:46

Hace 1 año exactamente que publiqué estos script en Github ( https://github.com/dalacost/strava_hack_tools ) y no había tenido mucho tiempo para hablar de ello. La idea de fondo detrás de este script ( strava_traces_downloader.py ), la cual es permitir múltiples descargas de muchos tracks de ejercicios en Strava de forma rápida y sencilla, con un solo comando.

Hay que destacar que Strava si tiene un API bastante desarrollada, que permite acceder a un montón de datos, pero eso está disponible principalmente para los usuarios logeados. Es decir si no tienes una cuenta de strava no tienes mucho que hacer.

 

En Strava no puedes bajar los GPX de otros usuarios si no eres Premium, pero si reconstruirlos ilegalmente.

Es el primer problema que tienen los usuarios cuando quieren de alguna forma poder tener en su poder y manipular las rutas, ya sea por que desean tener una copia en sus gpx, teléfonos o algo más.

Lo que te encuentras cuando no eres usuario Premium y ni hablar si no eres Usuario.

Esto es algo que en lo personal no le encuentro mucho sentido, pues esta supuesta «seguridad» se ve afectada por una de las mejores «habilidades» de la plataforma, los mapas interactivos. Como muchos programadores ya sabrán, al utilizar las APIs más comunes de mapas interactivos, normalmente se requiere que se precarguen los puntos de las lineas o polígonos en algún lugar, de preferencia oculta al usuario. Y Aquí está lo interesante de todo esto, pues si los puntos existen, entonces ya podemos comenzar a reconstruir el archivo original del track.

Una solución para evitar este problema es cargar estas líneas como imágenes, pero pienso que no lo hacen por que reduce notablemente la interacción con el usuario. En resumen, es una ventaja para nosotros.

Los mapas interactivos tienen los puntos definidos en algún lugar, en este caso en el XML streams, con lo que podremos reconstruir el GPX

Suena sencillo no? Unir toda esta información que está en el mismo mapa para reconstruir manualmente nuestro track original con la información mas o menos verídica. Y es que no solo podemos tener los puntos sino que con algo de trabajo podríamos reconstruir totalmente el GPX original (Algo que todavía no he completado al 100%).

El resto de la información necesaria.

 

En Strava los registros son correlativos, ups..

Algo que me llamó la atención y que facilita notablemente la manipulación masiva de información en strava, es que los registros son correlativos a partir de su ID, el truco está en la URL.  Tanto las actividades como los números de los Atletas son correlativos.

mi actividad ha sido la numero 857millones! impresionante. Cambia el número manualmente y será más impresionante.

Si nos pusiéramos a trabajar con esto podríamos tener un montón de cálculos, solo por decir algunos podríamos tener el numero de actividades por día/hora/mes/etc…  número de usuarios activos x día, etc.. Lugares del mundo donde tienen más usuarios, etc … un sin fin de información que Strava no comparte pero que potencialmente está disponible.

Lo mismo sucede con las URL correspondiente a las fichas de los Atletas, con lo que también se podría acceder potencialmente a un montón de información de cada uno.

Los invito a hacer una prueba y cambiar el número de su actividad o el numero de su Atleta por el inmediatamente siguiente.

strava_traces_downloader.py

Este Script en resumen aprovecha estas 2 debilidades en un solo script de multiples funciones :), Reconstruye el archivo GPX a partir de estos datos disponibles, evidentemente sin necesidad de ser Premium, ocasionalmente cuando no estas logeado la cantidad de puntos disponibles es menor, en algunos casos puede llegar a ser 100 puntos máximo. Por lo que es recomendable utilizar un usuario de Strava para descargar el track.

Les dejo algunas imágenes y pueden encontrar más detalles en el sitio del proyecto en GitHub (https://github.com/dalacost/strava_hack_tools)

Bajando un Track reconstruido de una actividad específica. Sin hacer Login.

 

Si bajas la actividad con tus datos de usuario de Strava puedes tener la posibilidad de bajar más puntos, en este caso 6916puntos v/s 6375 sin login.

 

Descargando todo el rango de actividades a partir de su id, en este caso desde la XXX08 a la XXX20, algunas fallan pues esas actividades no están disponibles, son privadas o fueron borradas.

 

Los invito a descargar el https://github.com/dalacost/strava_hack_tools y ver que pueden hacer todos los datos.

 

BDCUT_CL, Nuestro proyecto SQL Códigos territoriales de Chile, ahora es abierto en github.com

24 septiembre, 2011 at 17:54

BDCUT_CLPor que una buena idea no puede quedar botada y después de ver lo útil que ha sido nuestro aporte al liberar el sql de la comunas, provincias y regiones de chile hace algún tiempo hemos decidido junto con el aporte de Skimbio Ltda, liberar un proyecto que contenga estos datos, que por lo demás son muy útiles para todos los desarrolladores en Chile.

Por sobre todas las cosas, lo que nos inspira a liberar este proyecto, es lo útil que ha sido para la comunidad de desarrolladores Web en chile, desde la primera publicación de los SQL en este mismo sitio, ya han existido miles de descarga y han aparecido referencias y agradecimientos por toda la web, incluso se han generado algunos proyectos específicos que han hacen uso a los datos que en esa época se publicaron.

Estos datos en general son estáticos, pero aún así requieren que sean actualizados constantemente. De esta forma es más cómodo tener un sitio referencial en un proyecto abierto a la comunidad, que un proyecto privado aquí en Lacosox.org

BDCUT_CL es el nombre bajo el que se han liberado las versiones BDCUT_CL 0.1 y BDCUT_CL 0.2 de los SQL que contienen los datos territoriales de Chile. Esperamos que el proyecto siga creciendo y que los aportes de privados y apasionados del software hagan de este proyecto el proyecto referencial en Chile para este tipo de datos.

Estamos totalmente abiertos a recibir cualquier aporte.

SQL Códigos territoriales Regiones, provincias y comunas de Chile ACTUALIZADO A 19 Septiembre 2011 DECRETO 817

20 mayo, 2010 at 02:48

sqlchile_0

Hoy necesitaba estos datos de manera actualizada para un proyecto que estaba desarrollando, al buscarlos en la web econtr{e varios pero todos desactualizados ya que la última actualización se realizó en el Decreto Exento Nº 817, del Ministerio del Interior, publicado en el Diario Oficial del 26 de Marzo de 2010, después de que se creó la provincia de Marga Marga (con las comunas de Quilpué y Villa Alemana, anteriormente de la provincia de Valparaíso, y Limache y Olmué, antes de la provincia de Quillota) es hizo que se le asignara un código a la nueva provincia y se modificaran el de sus comunas constitutivas. Esto último no ha sido considerado por nadie en Internet aún y sólo poseen actualizaciones del año 2009 sin incluir la última que es la de Marzo de 2010.

ACTUALIZACIÓN (19/09/2011):

El proyecto fué migrado a https://github.com/knxroot/BDCUT_CL

Si utilizaste la versión antigua publicada en este blog (versión 0.1), favor leer: https://github.com/knxroot/BDCUT_CL/wiki/changelog para que puedas actualizar tu proyecto a la versión 0.2.

DESCARGAR LA ÚLTIMA VERSIÓN DISPONIBLE EN GITHUB DE ESTA FUENTE DE DATOS AQUÍ