Ir al contenido principal

Inspiración + Trabajo = Magia

Hace algún tiempo que vengo trabajando con el generador para Smart Devices (iPhone, iPad, iPod touch, Android, BlackBerry) que es una de las principales nuevas funcionalidades de Genexus X Evolution 2.

Creo que no es necesario ahondar en lo importante de esta “ola” de los “Smart Devices”. No solo se trata de una “ola tecnológica” sino de modificaciones sustanciales en el comportamiento de los usuarios, sus expectativas respecto a las soluciones, accesibilidad de la información y operativas, etc. Pero en fin, dije que no iba a ahondar así que pueden buscar en internet o directamente ver algunas de las conferencias al respecto en el XX Encuentro GeneXus de Set/2010.

Volviendo al tema, si bien había hecho alguna aplicación de “ejemplo”, recién esta semana dejé una aplicación realmente en producción, se trata de la aplicación que maneja la agenda (Oradores, Conferencias, Salas) del VIII Encontro Genexus Brasil.
Es una aplicación bastante sencilla, el objetivo es facilitar el acceso a la agenda del Encuentro a través de estos dispositivos así como la posibilidad de agendar conferencias en el propio "device".

Quienes quieran la pueden instalar  desde aquí de acuerdo al dispositivo/SO que estén usando (Android, iPad, iPhone, iPod touch o BlackBerry, no disponible para WP7 aun) ¡es gratis!

Mi primera impresión

Con el “Smart Devices Generator” tuve un “deja vu”.

Hace +20 años empecé a trabajar con GeneXus, primero haciendo una aplicación para el manejo de flotas de vehículos y talleres en PC/DBase III Plus con DBFs (ambiente que dominaba) y luego haciendo una Solución Financiera para el AS/400 (iSeries) en Cobol (ambiente que desconocía totalmente).

Si bien para el sistema de flotas me sirvió mucho, lo diferente se produjo cuando desarrollé mi primera aplicación para Cobol/iSeries. Este ambiente solo lo conocía como usuario de una “terminal tonta” cuyo cable se perdía misteriosamente en un ducto y vaya uno a saber dónde terminaba. La habitación donde estaba aquella máquina misteriosa estaba vedada para todos los mortales y solo los cables y los semidioses llamados “Operadores” podían entrar a ella.

Sin tener más conocimiento que ese, mucha fe y ganas, logré poner mi sistema en producción. Ahí  sospeché que había algo grande, importante, diferente.  ¿Cómo yo un “pichón” de 20 y pico iba a hacer algo tan grande y atrevido? ¡Qué insolencia! ¡¿Qué magia era esa?!

Con el tiempo descubrí que no se trataba de magia sino de visión, ciencia y trabajo. En cualquier caso con el tiempo ratifiqué mi sospecha: realmente estaba ante algo importante.

Claro que hubo problemas, utilizaba la 1.2 de Genexus y luego pasé a la 1.4, para dar una idea: ¡no existían los “procedures”! No había modo de actualizar los datos de modo “batch”, lo cual en ese momento era “pecaminoso”. Escollos hubo, pero ninguno hizo que dejara de ver el valor de lo que tenía entre manos.

Hoy con el “Smart Devices Generator” tengo la misma sensación: estoy desarrollando aplicaciones para no una sino, por lo menos, tres plataformas (iOS, Android y RIM, proximamente WP7), todas diferentes pero con algo en común para mi: casi totalmente desconocidas y digo “casi” porque las conozco como el AS/400: simplemente  como usuario.

Seguro que hay y habrá escollos, como dice Gastón en su blog “Because our way to develop software is different, we focus on the model first and after we generate code.”,  pero la “magia” (como resultado de la visión y el trabajo) está nuevamente presente.

Por eso lo del “deja vu”, esa magia que me permite llegar con soluciones a mundos que no conozco, no domino y tal vez nunca llegue a conocer del todo antes de que, eventualmente, desaparezcan bajo otra ola.

Sobre la aplicación

Dejando la parte “mágica” y yendo a los resultados, como decía al principio, la aplicación maneja la agenda de un evento, donde existen Oradores que dan Conferencias en diferentes Salas y esas son las tres entidades.

Si lo quieren ver como un diagrama de tablas:

primer-app-diagrama-tablas.PNG

Su desarrollo se trató básicamente de la definición de esas entidades y el ajuste de los patterns a aplicar sobre ellas, para lograr algo como:

emu1.PNG

emu2.PNG

emu3.PNG

emu4.PNG

(perdón por las imagenes, son del emulador del Android)

Igual es un poco tarde para profundizar sobre el tema, pido disculpas a quienes dejé con "sabor a poco" pero creanme que lo importante es lo que digo acá, el "cómo" prometo profundizarlo en futuros posts.

Comentarios

  1. No solo magico, sino tambien adictivo como el dulce de leche

    todo bien con los que siguen laburando a manopla, pero bue los picapiedras eran felices con la traccion a pata .)

    ResponderBorrar

Publicar un comentario

Entradas más populares de este blog

El miedo, ese asesino silencioso

Hace unas semanas compré por Mercado Libre un tejido de alambre (de esos electrosoldados que se usan para cercos, pérgolas, etc) para armar una pérgola en casa. Como me suele pasar: compré de más. Así que decidí vender el resto del alambre por el mismo medio (Mercado Libre). Lo publiqué un Miércoles a las 13:00 y 4 horas después recibo un aviso de Mercado Libre que lo había vendido. Perfecto! Incluso lo había puesto al mismo precio x metro que la compra original así que notable! Revisé la compra y me pagó mediante Mercado Pago usando una tarjeta VISA, en fin, todo normal. Un rato después del aviso me llaman de un teléfono fijo al celular un tal Juan Rodriguez que coincidía con el nombre del comprador que me había llegado. Capitulo 1: ¡para qué abrís la boca! No sé cómo decir esto de un modo "políticamente correcto" pero la manera de expresarse parecía de alguien que no tenía un gran nivel de educación. Demasiado "lunfardo" para hablar con alguien que no con...

Liberar una versión: el fin del principio

Quienes desarrollamos software buscamos afectar positivamente la vida de las personas a través de nuestras aplicaciones. Ese es nuestro objetivo final, ese es nuestro éxito. Quienes desarrollamos , que ayuda a nuestros colegas en esa misión, solo tenemos éxito cuando ellos tienen éxito, por eso solemos decir que cuando liberamos una versión es "el fin del principio". Es un escalón fundamental, pero solo el primero. Tuve el privilegio de formar parte del equipo de y de su pero a su vez no he podido dedicarle tanto tiempo   como quisiera, casi no he podido  , ni  he podido leer. El mundo siguió girando, hay  , hay que me perdí y . Casi de casualidad me enteré del encuentro del a partir del 16/marzo en Montevideo. En cualquier caso: ¡el esfuerzo valió la pena!. Ahora que está siendo liberada en el   , hay que celebrar porque aplica aquello de "release is a feature". Podría tirarme en mi casa y estrenar mi  con una buena peli o sino aprovechar ir al un poco má...

Sobre plomeros y sanitarios

Hace unos días estaba en casa de mi madre, quien sigue viviendo en la ciudad donde yo nací (Florida-Uruguay), cuando sonó el timbre. Fui a atender y me encontré con Martín, un ex compañero de liceo que hacía años no veía. Luego de preguntarle cómo andaba y el saludo de rigor, le pregunté que estaba haciendo por allí y me dijo "estoy trabajando aquí", ahí noté que venía con baldes y herramientas y recordé que es hijo del plomero que toda la vida trabajó en mi casa. El baño de mi madre estaba con problemas en la presión de agua así que llamó al plomero "tradicional" y este le comentó que estaba retirado pero que enviaría a su hijo. Allí pues estaba Martín. Es interesante encontrarse con compañeros de escuela/liceo que uno no ve hace muchos años, da para otro post seguramente. La cuestión es que seguimos conversando mientras él trabajaba. Le pregunté por el padre y me dijo que estaba bien pero ya medio cansado del trabajo y que nunca se había podido adaptar a los cambi...