Archive for the 'Internet of Things' Category

Programando para Internet of Things

Sunday, February 8th, 2015

Como saben, siempre practico programar todos los días, especialmente aplicando TDD (Test-Driven Development). Y si bien hay proyectos no públicos, la mayor parte de esa práctica la pueden ver en mi cuenta pública de GitHub. Y como escribí en el post de ayer, Node.js es una tecnología muy interesante, por su poder y simplicidad, para implementar muchas ideas que en otras tecnologías (Java, .NET, Scala, Ruby, Python, Clojure, Smalltalk) no me parece que sea tan fácil (aclaro lo de siempre: el precio a pagar por programar en el paraíso de Node.js son los “callbacks”).

Hay muchas ideas e implementaciones interesantes (en aplicaciones, proyectos, “startups”) dando vueltas. Pero un tema interesante que ya está entre nosotros, pero que va ir creciendo todavía más, es el tema Internet of Things. ¿Habrá lugar para que “startups” puedan luchar e imponerse en este campo? ¿será deglutido por Google, Apple, Microsoft? Veremos. Pero independientemente de eso, es época para programar e implementar ideas, en código abierto. Si se puede montar una “startup” encima de eso, mejor (pienso que para una “startup” lo principal es la EJECUCION: ideas hay a millones, e implementaciones hay a miles).

Mientras, algunas ideas (con alguna implementación incipiente en mis proyectos públicos de GitHub, ya vieron algunas ideas e implementaciones en mis charlas) (por supuesto, hay YA implementaciones, y también “startups”, pero siempre es interesante explorar por uno mismo un campo):

– Recolectar información de dispositivos, conectados a la red. Tener un repositorio de datos, enviados desde un SDK cliente para cada dispositivo. Luego, explotar esos datos.

– Aplicar Inteligencia Artificial (bueno, es un término amplio, lo admito, pero el mejor que tenemos por ahora) a todos esos datos, descubriendo patrones, aplicando “machine learning”, “deep learning”. Hábrán visto algunas implementaciones en JavaScript en mis proyectos

– Tomar decisiones, usando sistemas expertos u otros, y ejecutar comandos, acciones. De nuevo, habrán visto implementaciones mías en JavaScript/Node.js. Tener algo como IFTTT abierto, listo para usar, alimentado por eventos y datos colectados de Internet of Things.

– Aplicar para todo esto, computación distribuida, no solamente escalabilidad horizontal transparente en la nube. Hay mil estrategias para implementar, y Node.js es un vehículo interesante para experimentar. Luego, se puede pasar a un lenguaje y tecnología compilado, si hace falta ganar en rendimiento de serialización, por ejemplo.

Disculpen la auto-referencia a proyectos míos, pero quería pasar en limpio el panorama por el cual estoy haciendo esos proyectos.

Y además, me diviegto como logco! 🙂

Nos leemos!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez