Archive for the '18367' Category

Aplicaciones Dinámicas en Node.js

Saturday, April 19th, 2014

El año pasado participé de la competición Node.js Knockout organizada por Nodejitsu. Fueron dos días de programación (sábado y domingo), enviando código a sus servidores. Trabajé solo (en general se trabaja en equipos), en el Solo Ninja team. Mi idea era empujarme a escribir algo que tenía pendiente. Mi proyecto, en gran parte escrito siguiendo el flujo de TDD, trata de definir una o más aplicaciones, en forma interactiva. Cada aplicación puede tener una o más entidades. Cada entidad tiene propiedades, como campos de texto, o imágenes, enlaces, etc. Tengo que agregar relaciones uno a varios entre entidades.

Pueden ver mi presentación en video para los jueces en:

http://youtube.com/watch?v=GQdyyNWCasI

[View:http://www.youtube.com/watch?v=GQdyyNWCasI]

Despues de la competición, publiqué el código en mi cuenta de GitHub:

https://github.com/ajlopez/MyApps

Me parece interesante esto de explorar el definir dinámicamente una aplicación, en lugar de escribirla manualmente o de generar código para un modelo. En otros años pasados, yo sería más excéptico, pero lenguajes dinámicos como JavaScript son muy poderosos y flexibles. Y combinado con Node.js, es un dúo imparable para ayudar en la implementación de este tipo de aplicaciones. Quiero extender estas ideas para generar clientes no sólo web, sino mobile (primer paso, usar Phonegap), y quizás aplicaciones nativas que sepan interpretar la definición de una aplicación. Me imagino agregando también algo de código definible por el usuario en algunos puntos de extensión. Estoy estudiando Force, de Salesforce, y las semanas pasadas estuve viendo el modelo de aplicaciones de SharePoint online. Algunas ideas, entonces:

– Agregar tareas escritas en lenguaje de programación (un JavaScript controlado, digamos)
– Más programas cliente, que tomen una aplicación (definida simplemente, por ejemplo en un JSON), y la ejecuten para web, mobile, nativo, etc.
– Tener application stores, públicas y privadas
– Poder instalar para nuestra aplicacion o sitio de aplicaciones, aplicaciones de otros

Tengo también “in-pectore” una implementación más sencilla de lo que era Hypercard, pero eso es tema para otro post.

Esta noche el mundo, Pinky! 😉

Nos leemos!

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