La parte más dura de la vuelta a C# y Java

La semana pasada volví a C# y Java. Por un lado venia trabajando en un proyecto en Groovy y por ciertas cuestiones de contexto me ví obligado a hacer algunas cosas en Java. Por otro lado empecé un nuevo proyecto en C#.

En ambos casos hubo dos cuestiones que me “dolieron mucho”.

  1. Los entornos de desarrollo: acostumbrado a trabajar con Ruby y Smalltalk, usando Sublime Text, Pharo y vi, me resultó durísimo tener que volver a usar Visual Studio y Eclipse.
  2. La falta de un entorno interactivo donde poder jugar con mis objetos, lo que seria irb en Ruby  o el workspace Smalltalk.

Continuará….

Una semana comunitaria

La semana pasada participé de 3 eventos comunitarios. El primero de ellos fue Fail Fast, en el contexto de Ágiles Colombia, hace unos días escribí al respecto.

El segundo de ellos fue el miércoles por la tarde en una actividad de Universidad Nacional  de la Patagonia Austral en el contexto de la Semana de la Ciencia. Mi participación fue como orador en un webcast sobre métodos ágiles.

Finalmente, ayer  facilité el encuentro mensual de ágiles argentina, el cual estuvo dedicado a Continuous Delivery. Me gusto mucho una frase de uno de los asistentes luego del encuentro:

Excelente la charla, fui con la idea que estaba a pasos de tener Continuous Delivery y me volví que acabo de empezar con Continuous Integration. Vamos a avanzar esperando una segunda charla mas avanzada.

Fail Fast en Agiles Colombia

El martes pasado participé virtualmente de este evento, por invitación de Luis Mulato. La idea era compartir algunas experiencias del uso de Scrum y de la práctica de Integración Continua. El otro invitado fue Lácides Guzmán.

Creo que nos complementamos muy bien, pues mientras la experiencia Lácides es principalmente en el desarrollo de producto, la mía es en desarrollo de proyectos. O sea Lácides trabaja en un empresa que desarrolla un producto que luego comercializa. Por mi parte, casi siempre he trabajado en empresas dedicadas al  desarrollo de software para terceros.

Toda la actividad estuvo facilitada por Luis, quien con algunas preguntas orientadoras guió muy bien el desarrollo de la sesión y supo manejar de forma apropiada las preguntas de la audiencia, aportando algún bocadillo de su experiencia en algunas de respuestas.

La experiencia me gustó mucho y algunas de las preguntas me hicieron reflexionar sobre cuestiones que nunca me había puesto a pensar explícitamente.

¡Gracias Luis y Agiles Colombia por la invitación!

El dilema del conocimiento pasado

Gran parte de mi desarrollo profesional lo hice trabajando con tecnología Microsoft (C#, Asp.Net, Sql Server, SharePoint, Biztalk, etc, etc) pero desde hace unos dos/tres años di un giro y comencé a trabajar con tecnologías “abiertas” (por llamarlas de alguna forma genética), principalmente Ruby, Smalltalk y últimamente Grails.

Hoy por hoy soy más “feliz” trabajando con tecnologías abiertas que con tecnología Microsoft, pero paradójicamente conozco mucho más de tecnología Microsoft que del resto. Al mismo tiempo me parece una picardía “tirar por la borda” todo ese conocimiento y experiencia acumulado durante años.

En fin, ya puse a descargar Visual Studio 2012.

Charla: Estrategias para la adopción de Continuous Delivery

El próximo Jueves 19 de Septiembre, en el contexto del encuentro de la comunidad ágil de Buenos Aires, estaré dando la charla de referencia.

La cita es a partir de las 18.30 en las instalaciones del MUG, como siempre la entrada es gratuita pero requiere registración.

Algunos detalles más sobre la charla los pueden encontrar en la página de registración.

Interesante experiencia en el curso de Scrum Developer

La semana pasada participé junto a MartínS en el dictado del curso de Scrum Developer avalado por la Scrum Alliance. Si bien no era la primera vez que participaba de un curso así, esta ocasión tuvo como desafio el tamaño de la audiencia: 20 personas. En general el curso solemos dictarlo para un máximo de 16 personas, pero dado que en este caso fuimos dos instructores, pudimos estirarnos un poco más.

El curso está divido en 3 módulos, los dos primeros enfocados en cuestiones de organización y planificación  y el tercero en cuestiones de desarrollo. En este tercer módulo que dura 24 horas (generalmente en 3 días), trabajamos con Ruby dada la facilidad de uso/aprendizaje de sus herramientas (aunque también tenemos chances de hacerlo con otros lenguajes). Durante el curso se hace un simulacro de proyecto donde trabajamos en iteraciones de 2 horas, utilizando Scrum, BDD, TDD e integración continua para construir una aplicación.

Una vez más me sorprendió durante el curso, la gran influencia en la forma de pensar/diseñar que ejercen los lenguajes de programación. Al ver el código escrito por los asistentes del curso, saltaba a la vista que eran programadores Java. Lo mismo me pasaba a mi cuando comencé a trabajar en Ruby, recuerdo algunos colegas que miraban mi código y me decían cosas del estilo “¡Estas programando C# con Ruby!”.

Les dejo la foto de cierre del curso.

csd