Hace unos días, publiqué mi resumen del 2018 donde básicamente muestro datos interesantes sobre algunas mediciones que tengo personalmente.
Algunos servicios que tengo, como TodoIst, o Rescuetime, anualmente me envían estos resumenes chulos en forma de infografía, pero este año, Wakatime me quedó a deber, y no recibí nada.
Wakatime para aquellos que no lo conozcan, es un servicio hecho para programadores, para ayudarles a medir el tiempo invertido en desarrollo. Es decir, saber cuanto tiempo al día (horas) le metemos duro al código (Y para lograr medirlo, brindan una serie de plugins para los IDES mas populares).
Recuerden, medir siempre es bueno (hay que evitar caer en excesos), y no hay nada mejor para los programadores que saber a ciencia cierta, cuanto tiempo nalga pasamos frente al ordenador trabajando en un proyecto X o un proyecto Y.
Por día, Wakatime te envía un reporte, indicando cuanto tiempo estuviste trabajando, si estas cumpliendo tu meta (por que claro, puedes establecerte metas), y como vas con respecto a los anteriores.
Aunque suena bien, uhm, aveces se queda muy corto para un análisis mas adecuado sobre ti. Si bien es cierto, su sitio web ofrece algunas gráficas, la versiona gratuita es muy pero muy simple (supongo la versión Premium te ofrece reportes mas avanzados, pero, eso no lo sé).
Sin embargo, existe la opción de exportar toda tu actividad (formato JSON) que después puedes manipular a tu antojo. Por lo que me vi en la tarea de crear un pequeño script que "convierte" ese json en una pequeña base de datos SQLite, para después hacer las consultas que necesite.
El script en cuestión, es este:
Recibe como parámetros el archivo json de entrada, y el nombre del archivo de salida.
Ejemplo:
$ ./wakatime2sqlite.py -i actividad-wakatime.json -o wakatime.db
Ojo: el script solo toma en cuenta los datos que a mi me sirven, y omito todo aquellos que no considero importantes
El resultado final son 2 tablas:
- wakatime_day: Básicamente, cuento tiempo total del día estuviste programando.
- wakatime_record: El track registrado por "tipo" (proyecto, sistema operativo, lenguaje, ide, etc) por fecha.
Y creo que con esto es mas suficiente para obtener reportes que nos brindan bastante información. Actualmente uso Data Studio para generar mis reportes, por ejemplo, la siguiente gráfica es un resumen de mi actividad 2018.
Probablemente escriba otro post referente al uso de Data Studio (solo de ser necesario), y muestre como usar los datos obtenidos hasta ahora para crear un reporte muy chulo.
Imagen del Header de Kevin Ku
Jorge Hernandez :: http://jorgeluis.com.mx