Generación de Código con AjGenesis para Ruby (1)

Ya hace unos meses porté el AjGenesis clásico (de .NET) a Ruby. Ver avance en:


https://github.com/ajlopez/AjGenesisRuby


Tengo un simple ejemplo de Hola mundo


https://github.com/ajlopez/AjGenesisRuby/tree/master/samples/hello


y un ejemplo un poco más interesante, de “scaffolding” sobre Sinatra, desde un modelo con dos o más entidades:


https://github.com/ajlopez/AjGenesisRuby/tree/master/samples/site


Elegí Sinatra porque algo había estado practicando en mis anteriores charlas de Ruby. Espero armar un ejemplo con relaciones uno a varios, y con interface JSON/Ajax entre cliente y servidor, así como luego portar los templates a uso de Cuba. Podría generar desde AjGenesis Ruby código para Node o C#, es lo mismo.


Bien, para dar cuenta del estado actual de ese trabajo, di una charla en la pasada Meetup de Ruby en Buenos Aires, el miércoles 28 de Agosto. Resultado (con UNA RAPIDA INTRO A ANGLISH!!!):


http://www.youtube.com/watch?v=y8DxmSgxKow


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


Donde trato de explicar la historia y la motivación para mi interés en la generación de código. No es mi intención proveer plantillas/templates para distintas tecnologías. Mas bien, es motivar a que Uds, en su equipo, consultora, línea de negocios, hagan el experimento de “raise the level of abstraction” y vean cuánto pueden codificar en este “pichón de sistema experto” que es AjGenesis. Quiero llegar a expandirlo para que sea un sistema experto, como explico en la charla, donde sea fácil incorporar nuevos agentes que se encarguen de solucionar un problema, por ejemplo, guardar un documento en un NoSQL, o validar una fecha en una interface web, o en una interface Android, etc. Una vez identificados los problemas, cada uno puede escribir el agente que le parezca.


Nos leemos!


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

This entry was posted in 17837, 17933, 2643, 6145, 8115. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>