La necesidad de liberar APIs y datos

En este post voy a tratar un poco de los beneficios de abrir la información al público, la apertura a la competitividad para la mejora constante de las apps del día a día.

Publicado el jueves 4 de octubre de 2016, a las 07:20pm

Hoy en día estamos moviéndonos hacia un mundo más liberado, no sólo en lo social, sino también en lo ideológico.

Varias empresas deciden liberar sus proyectos como código abierto para que nosotros, los desarrolladores, los mejoremos y favorezcamos las vidas de los ciudadanos comunes y corrientes.

Día tras día, hora tras hora, segundo tras segundo, vivís rodeado de información. Mirás un cartel en la línea B que te dice “Próximo tren en 2 min”, desanclás una bici, la usás y la anclás en la estación de destino, Google Now te dice en cuánto está llegando el colectivo mientras abajo salen los resultados parciales de un partido con cada jugada realizada por cada equipo, entre más información que no para de generarse incluso cuando estás durmiendo.

Todo esto es posible gracias a las APIs y datos digitales. Antes todo eso que mencioné no ocurría hace varios años atrás. Hoy por hoy es algo de lo que hasta estos días sigo sin poder creerlo, tener toda la información para poder decidir. Es como jugar una novela visual (los que están en la cultura otaku me entenderán) y poder tomar una ruta diferente e intentar llegar a un objetivo distinto como en las mismisimas novelas visuales.

Aunque hoy en día hay datos que siguen sin liberarse por algún motivo que desconocemos, por ejemplo los tiempos de llegada de los trenes o los de los colectivos que están en bases de datos de diferentes prestadoras. De mi parte deberían liberarse esos datos ya que se pueden crear alternativas mucho mejores, con soporte de notificaciones push o con otra disposición de elementos en cuanto a diseño se refiere.

Liberar los datos que generás y las APIs que crean esos datos permite no sólo transparentar lo que ocurre por detrás de los productos que armaste, también permite que haya competitividad con otros desarrolladores, haciendo aplicaciones y servicios alternos que pueden funcionar mucho mejor que el producto oficial, y motiva a que el producto oficial mejore para alcanzar a la app alternativa y así sucesivamente.

Día tras día las personas se van dando cuenta que pasamos de tener productos pagos a tener servicios gratuitos en la nube que van mejorando diariamente gracias a la comunidad de programadores que aporta su ración de código.

El caso en cuestión

Mientras desarrollaba el proyecto “Próximo tren” y al mismo tiempo el sub-proyecto “Viaje en vivo”, decidí buscar la API base de los datos generados para los tiempos estimados, estaciones e incluso el número de servicio y formación que corre en ese trayecto. Tomó media hora sacar la URL donde salen los datos, pero acá viene el problema: Necesita una key diferente.

Lamentablemente esta API parece ser privada, dudo que me den la key para acceder a esos datos y usarlos para diferentes necesidades, como por ejemplo saber a qué velocidad va la formación, si entró a la estación a la velocidad permitida y más datos.

¿Cómo sé que genera esos datos? Fácil, la clase presencial que tuve en CNRT para una de las materias de la facultad me permitió conocer en persona la nueva plataforma de información que se implementó en el Sarmiento y en el Mitre, en un entorno oscuro agradable para la vista.

Mirando a simple vista y sin tocar ninguna computadora de ahí, sabía que la información mostrada en tiempo real era generada mediante Ajax. El tema era saber cómo extraerla. Intenté acceder a las páginas que se utilizan ahí pero no hubo caso, el famoso 403 apareció dando a entender que hay que loguearse para ver esas páginas.

Hasta el día de hoy me sigo diciendo porqué no me metí en el código fuente para al menos tener la key y usar estos datos.

Sobre “Próximo Tren” y “Viaje en Vivo”

Estos son dos proyectos, el primero es el principal y el segundo es el secundario. Por el momento los desarrollo como proyectos separados pero los unificaré más adelante.

Todo empezó con “Próximo Tren” como proyecto principal, haciendo una adaptación de las pantallas de las estaciones pero con el agregado de responsive y con colores más acordes. Luego decidí transformarlo como una webapp con diversas funciones.

Cabe aclarar que lo que intento hacer actualmente es una webapp alternativa a “Trenes en Vivo” que de por sí esa app tiene una interfaz que es lo mismo que una patada a los ojos (no a la cara, a los ojos directamente). Unos verdes chillones con degradado a un azul no quedan para nada bien.

En la webapp se colocaron varios fondos que van rotando según la hora y se liberaron varias líneas que no aparecen en la app oficial, las cuales algunas están en pruebas y fallan cada tanto.

Después de desarrollar esta, decidí empezar con “Viaje en vivo” que sirve más que nada para hacer un tracking de la formación y saber en cuanto tiempo llegás a la próxima estación. Aún está verde y le faltan funciones para que sea más sencillo al usuario. Lo que sí ataco en esta aplicación es el famoso “me consumió 200MB en datos” con el agregado de 6 diferentes métodos de actualización, desde “Tiempo real” hasta “Económico”, y dicha función se va a trasladar también al proyecto principal “Próximo tren” para su uso en mobile.

Concluyendo…

Tenemos que adaptarnos a estos nuevos tiempos y publicar datos que posibiliten tomar decisiones para nuestra vida diaria, aunque claro está que no todos los datos tienen que estar a la vista a menos que quieran ver el mundo arder, cosa que no creo que mucha gente quiera ver, pero una gran mayoría debería quedar a libre disposición de cualquier persona que quiera contribuir a facilitar y facilitarse la vida.

Al fin y al cabo, con estos datos todos salimos ganando.


Gracias por leer!


El contenido de mi Sitio Personal está licenciado bajo Creative Commons Reconocimiento 4.0 Internacional.

Esta web utiliza tecnologías demasiado recientes, tan recientes que Internet Explorer no los soporta.

Por favor bajate un navegador apto para webs del siglo actual.

Ir a bajar un buen navegador de verdad
Continúo con el riesgo de tener la peor experiencia del mundo