sábado, 17 de abril de 2010

Primeros pasos con Google App Engine

Había oído hablar de Google app engine (GAE), y sabía que ya daba soporte para Java, pero no me había puesto a probarlo. Así que el fin de semana pasado me creé una cuenta y estuve "jugando" un poco. A modo de recordatorio, apunto los pasos seguidos. Si ya sabes cómo empezar una aplicación de este tipo, o simplemente no te interesa, salta directamente al último párrafo, pues igual sí que te interesa la propuesta ;)

En primer lugar accedí con mi cuenta de Google a la página de GAE.


Tras la autentificación, se muestra un botón para crear una nueva aplicación.

Como sistema de seguridad, Google pedirá un número de teléfono móvil al que enviarán un código para poder continuar con el proceso.

Cuando hayamos introducido el código que nos facilitan, debemos indicar un nombre para la aplicación (comprobando que no exista ya) y una descripción.


En este punto, ya podríamos subir nuestra aplicación a los servidores de Google. Para poder implementarla, usaré Eclipse y para ello he instalado el plugin correspondiente que puedes descargar usando esta url: http://dl.google.com/eclipse/plugin/3.4. Cuando tengamos este plugin, podremos crear un nuevo tipo de proyecto (Web Application Project) asociado a un icono con la imagen de una 'g'.


Tendremos que seleccionar un nombre para el proyecto (que no tiene que coincidir con el nombre que dimos a la aplicación en GAE) y un paquete. También nos debemos asegurar de que no está marcada la casilla "Use Google Web Toolkit".

Por defecto se crean algunas clases y vistas. Para ejecutarlas o depurarlas, al pulsar con el botón derecho sobre el proyecto tanto en la opción "Run as" como en "Debug as" veremos nuevamente un icono con la 'g' y la etiqueta "Web Application".


Desde Eclipse podemos desplegar la aplicación en Google, pulsando con el botón derecho sobre el proyecto Google -> Deploy to App Engine. Debemos indicar nuestra cuenta y contraseña en Google para poder subir la aplicación. También hay que acceder a la opción "App Engine Project Settings..." y rellenar los campos "Application ID" (nombre que dimos en GAE a la aplicación) y un número para la versión (en GAE tendremos un historial con las versiones que se van subiendo y en un momento dado se puede indicar que se use cualquiera de ellas).

Como ven, es realmente sencillo. Aquí pueden ver el estado actual de las pruebas que he ido haciendo. Mi intención es ir añadiendo funcionalidad a la aplicación y me gustaría hacerlo de forma colaborativa (Google permite asociar a varias personas a un proyecto para poder colaborar). El primer hito es permitir hacer estimación de poker y me gustaría que lo hiciéramos juntos. Ya intenté algo parecido hace tiempo, pero al no haber nada definido todo quedó en el aire. Ahora ya hay una idea, un entorno, ... faltan ganas. Y si tienes... pues a currar que yo estaré encantado. Creo que esto ofrece muchas posibilidades de aprender entre todos. Puedes mandarme un correo, comentar esta entrada, o rellenar el formulario que he incluido en la aplicación (opción "Participar" en el menú principal).

viernes, 9 de abril de 2010

Responsabilidad de todos

Si me preguntaran qué se debe cambiar para salir de la crisis en la que lleva metido el desarrollo de software tanto tiempo, no tendría claro del todo la respuesta ¿La relación con el cliente, las metodologías (producto, proyecto y gerencia), las herramientas, …? Probablemente le pase lo mismo a la mayoría, o ya no tendríamos este problema.

Aunque si me preguntaran quién es el responsable del cambio sí que lo tendría claro: TÚ, ... YO, ... TODOS. No importa el papel que juegues en la empresa, cuál sea tú rol ni la posición en la jerarquía… todos podemos/debemos contribuir al cambio.

Es frecuente escuchar que hacemos propuestas pero nadie nos escucha. La verdad es que muchas veces cuando hacemos esas propuestas creemos que nuestros jefes, o quienes deben tomar las decisiones, son los reyes magos. Creemos que basta con entregarles nuestra lista de peticiones y listo.

Debemos ser honestos con nosotros mismos: una propuesta sola no vale nada. Es la responsabilidad, la convicción y la capacidad de trabajo que acompaña a la idea lo que hace que pueda prosperar. Si crees en lo que haces, estás dispuesto a luchar por ello y lo haces de forma responsable, al final acabarás consiguiendo tus propósitos. La pregunta es: ¿estamos dispuestos?

No digo que debamos convertirnos en héroes y arrastrar por los demás. Simplemente creo que debemos “darles un empujoncito” para que miren hacia el camino que consideramos correcto y andarlo juntos. No me resulta fácil expresar lo que pienso sobre este tema, pero gracias a Ángel he descubierto un vídeo que expresa a la perfección lo que quiero reflejar:


lunes, 5 de abril de 2010

Flexibilidad con Scrum: Conclusiones

Ya hace bastante tiempo que escribí sobre el curso “Flexibilidad con Scrum” que estaba organizando. Y mucho más tiempo desde que surgió la idea. Pero el tiempo pasa volando, y por fin el curso se celebró esta semana, así que hoy, tras despedir a Claudia Ruata (Juan Palacio ya se había marchado el viernes), es un buen momento para reflexionar sobre lo que ha pasado estos días.

Para mí ha sido una experiencia inolvidable. Las personas con las que pude hablar, al ir acabando el curso, estaban muy contentas y lo valoraban muy bien. Probablemente esa fuera una de las mayores recompensas por el tiempo que había invertido en la organización. Que algunos se acercaran a mí y me felicitaran por el trabajo o me agradecieran lo que había hecho es algo que me ha hecho sentir realmente bien. Cuando empecé con esto estaba convencido de que sería algo muy positivo para los profesionales de aquí, y es reconfortante comprobar que no estaba equivocado, y ver que estaban contentos con el resultado.

La segunda recompensa ha sido conocer a Claudia y su madre, y Juan y su familia. Hoy le comentaba a Claudia (y lo hacía de corazón) que hasta ahora la admiraba como profesional… pero ahora además la aprecio como persona. Lo mismo me ha ocurrido con Juan. Son personas fantásticas y el simple hecho de haberlos conocidos ya era un buen motivo para organizar el curso. Es muy agradable “trabajar” con personas así y espero que este sólo haya sido un primer punto de un largo camino, y que volvamos a coincidir pronto.

Carlos Ble ya ha grabado un podcast en el que Claudia y Juan explican qué es ScrumManager, entre otras cosas. Y en el que yo explico, en mi opinión, por qué tuvo tanta aceptación la convocatoria del curso. No voy a repetirme (a escuchar el podcast :-) ) pero sí que me faltó un punto muy importante, y ya no es por qué la convocatoria tuvo éxito, sino por qué me fue posible darle forma. Creo que básicamente, hay cuatro razones:

  • La principal es María, mi pareja. Tanto en esto, como en todo lo que hago siempre tengo su apoyo, y eso me da fuerzas para afrontar cualquier proyecto. No es que ella me apoye en mis proyectos, es que hace casi seis años que mis proyectos y sus proyectos se han convertido en nuestros proyectos, y juntos los hemos ido afrontando. Ella es la responsable de que muchos tuviéramos un sitio en el que almorzar durante los días del curso, que tuviéramos preparado el libro de ejercicios, etc., etc., … No soy muy ducho en literatura, así que hago mía una frase de la película “Una mente maravillosa” para expresar lo que pretendo decir: "He buscado en lo físico y en lo metafísico, y sólo en las ecuaciones del amor he encontrado alguna lógica. Estoy aquí gracias a ti, tú eres mi razón de ser, tú eres todas mis razones. Gracias"
  • Evidentemente, sin Juan y Claudia esto no hubiera sido posible. En el podcast, mientras definían qué es ScrumManager, Claudia decía que era un sueño. Cuando alguien vive su profesión con el corazón, siempre está dispuesto a colaborar. Desde el principio apoyaron mi propuesta y trabajaron para que se hiciera posible.
  • El tercer ingrediente fundamental ha sido la situación laboral privilegiada que tengo. Mis jefes siempre han procurado que en la empresa nos sintamos cómodos y que podamos llevar adelante nuestras inquietudes. El entorno que han creado permite que trabajar no sea una mera obligación para mí, y eso me hace crecer profesionalmente y mantener la ilusión para mejorar. Digamos que ese entorno mantiene viva la misma llama que me llevó a plantear este curso. Sin todo esto, y sin la flexibilidad que ofrecen, probablemente la situación hubiera sido bien distinta.
  • El último punto se refleja mejor con una anécdota: necesitaba unos altavoces para uno de los grupos, y Yeray Darias se ofreció a llevarlos. Justo el primer día de curso del segundo grupo, al llegar a la universidad y ver a Yeray, pensé que se me había olvidado recordarle que contaba con los altavoces, y se lo comenté. Pues al mismo tiempo que yo dije “pero sabía que podía contar contigo” él decía “tú sabías que podías contar conmigo”. Esto es una realidad, y saber que para cualquier proyecto de este tipo puedo contar con personas como Yeray y otros más, facilita mucho las cosas.

En resumen, puedo decir que ha sido uno de los mejores proyectos en los que me he embarcado, ya que ha servido a muchos, he aprendido muchísimas cosas (tanto por participar en el curso como por todo lo que ha ido ocurriendo en estos días) y ha sido un verdadero placer conocer a un grupo de personas increíbles.