lunes, 16 de julio de 2012

Agile Open Buenos Aires - Educando y Aprendiendo

NewImage

Ágiles Argentina organiza este evento de difusión e intercambio de experiencias sobre el proceso de Educación y Aprendizaje.

Es parte del continuo Agile Open Tour que la comunidad local organiza desde hace hace años, recorriendo el país.

Como todos los Agile Open, este evento tiene formato Open Space, y en esta ocasión se unirán algunas técnicas nuevas como Training from the Back of the Room, actividades disparadoras y facilitadoras del aprendizaje, experiencias en la planificación de contenido auto-organizada, educación a distancia, y lo que proponga el público.

Como en todo los casos, el evento es gratuito pero requiere inscripción previa, y se realizará el sábado 4 de agosto, de 9 a 18 horas en la UNTREF, Sede Centro Cultural Borges, Viamonte esq. San Martín piso 3. Hay más información y una agenda preliminar de espacios.

Tomado directamente de la página de difusión del evento:

Los eventos Agile Open se originan en Bélgica en el 2005 pero se realizan en todo el mundo. El primero en Latinoamérica se realizó en Buenos Aires en marzo del 2009. En el país ya se han realizado cerca de 25 eventos en 8 ciudades (Buenos Aires, Córdoba, Tandil, La Plata, Bahía Blanca, Mar del Plata, Rosario y Paraná) con temas tales com Educación, Organizaciones Flexibles, Seguridad, Software Libre, Calidad y Arquitectura. Los eventos Agile Open se organizan y realizan usando Open Space Technology.

Open Space Technology

Esta forma de organización de eventos permite con relativamente poca preparación previa realizar eventos de alta calidad en forma auto-organizada. Funciona para reuniones desde 5 personas hasta reuniones de varios miles de personas.
Es particularmente apto para encuentros en los que se discuten temas que son relevantes, complejos y que los asistentes tienen interés y pasión por tratar.
El interés y la pasión se logra por un proceso de autoselección en la registración: ya que una vez definido el Tema de la conferencia, los asistentes a los que les interesa el tema se anotarán, y al ser en un día no laboral, no dependen tanto del interés de las empresas en las que trabajan como en su deseo personal de participar. A su vez, los temas a tratar en cada sesión son propuestos y votados por los asistentes.

La dinámica durante el evento es:

Se explica el formato y sus pocas reglas
Los asistentes proponen sesiones (presentaciones, paneles, workshops, ...)
Votación de sesiones (todos los asistentes votan)
Armado de agenda (se asignan las sesiones votadas a los horarios y aulas)
Se realizan las sesiones.
Cierre

Auspician el Tour: Kleer (quienes sortean 16 lugares para curso de un día: "Introducción a Scrum" o "Estimación y Planificación con Scrum") e Inicia.

viernes, 13 de julio de 2012

Aprendiendo y enseñando: Principios SOLID (+video)

NewImageLos amigos de Kleer siguen impulsando actividades gratuitas de todo tipo, como sus ya tradicionales Yoseki Coding Dojo, a los que ahora se suman estas sesiones que llaman "Aprendiendo y enseñando", en las que el "pago" simbólico de los asistentes es enseñar a otros lo aprendido en el grupo.

La idea es que cada uno multiplique el conocimiento adquirido en su empresa, grupo de usuarios, blog, vídeos, etc, siguiendo técnicas surgidas del libro "Training from the back of the room", según Fernando Claverino comentaba en este post.

De la primer sesión que efectuaron el mes pasado (espero poder avisar a tiempo de la próxima), sobre principios SOLID algunos de los participantes se conjuraron para publicar ejemplos en sus blogs.

Al menos han cumplido hasta ahora Nelo Pauselli y Fernando (uno de los organizadores de la sesión junto al amigo Carlos Peix). La sesión inicial estuvo basada en ejemplos publicados en http://solidexamples.codeplex.com/, y posteriormente Nelo y Fernando publicaron sus ejercicios de cómo resolver un ejemplo que viola el Principio de Responsabilidad Unica (Single Responsibility Principle).

Para quienes quieran más detalles sobre SOLID, pueden ven una Virtual Alt.NET Meeting de Carlos Peix sobre el tema, o leer sobre estos directamente de la fuente, Uncle Bob Martin.

 

Finalmente, pueden ver los pasos que aplicó Fer en su blog, y les dejo debajo el video con Nelo refactorizando el ejemplo en vivo, pero pueden leer más detalles en su post.

 

Unable to display content. Adobe Flash is required.

Video: BrowserID - otro mecanismo de Identidad en la web

NewImage

Mozilla Persona es la implementación en en FireFox de BrowserID, un nuevo Identity Provider impulsado por Mozilla Identity misma junto a otros interesados.

Como en otros casos, este es otro mecanismo de Single-Sign-On para la web, y aunque todos lo plantean como el mecanismo único para identificarse, en la práctica sigue habiendo mucha fragmentación porque no todos los sitios (o navegadores) soportan todos los protocolos, que sin embargo, son generalmente interoperables (en esta interoperabilidad, casualmente, se basan las herramientas que genera en este espacio la nueva empresa de mi amigo Mati Woloski, Auth10; a quien menciono por ser de las personas que más saben de este tema sobre la Tierra).

 Lo cierto es que Mozilla agrega a este nuevo protocolo, basado en certificar la identidad utilizando una cuenta cualquiera de email, el soporte dentro del navegador, para poder brindar una experiencia de usuario mejorada. Como siempre, los desafíos son que otros navegadores adopten el modelo (cosa en la que no tengo enormes esperanzas), y que muchos sitios comiencen a soportar el mecanismo (o más probablemente, que productos como Auth10 o Janrain Engage) agreguen soporte para este nuevo proveedor.

Para los interesados en el tema, hay documentación para desarrolladores y un completo post de Lloyd Hilaiel, del equipo de BrowserID, explicando todo el mecanismo.

NewImage 

Y finalmente les dejo un video corto demostrando como funciona:

viernes, 6 de julio de 2012

Try GitHub - Aprender GIT en 10 minutos

NewImage

En estos días me crucé con este notable recurso para aprender GIT y GitHub, creado por la gente de Code School (tal vez los recuerden de éxitos anteriores como Rails for Zombies).

Se trata de un simulador en línea de una consola y una ventana estilo Finder de Mac OS donde se puede ver el contenido de un directorio, y 25 pasos muy breves en los que se crea un repositorio, se hacen diferentes commits, se ven diferencias, se abren y mezclan branches, etc.

No agrego mucha más información en este post porque lo más práctico es ir al sitio y probarlo. Para cualquiera que ya utilice GIT frecuentemente no hay novedades, pero es una buena herramienta para familiarizar a nuevos miembros de un equipo o para evangelizar a algún amigo que todavía sufre usando Source Safe o Clear Case.

jueves, 5 de julio de 2012

Video: Desarrollando en Node.js desde Mac OS y desplegando en Azure Web Sites

Desde hace años vengo trabajando con Windows Azure, la plataforma de cloud computing de Microsoft. Hasta ahora, más allá de haber logrado algunos proyectos interesantes, la plataforma no me entusiasmaba demasiado por varios motivos:

  • Estaba muy orientada a un modelo de desarrollo específico (Platform as a Service)
  • Estaba muy orientada a .NET (había maneras de utilizar otras plataformas, pero siempre complejas)
  • El mecanismo de despliegue y actualización era muy poco eficiente

En las últimas semanas finalmente se liberaron nuevas características que me parecen mucho más interesantes. Dos en particular (que están aún en preview, pero utilizables dentro de la prueba gratuita por tres meses) son:

Azure Virtual Machines

Este servicio finalmente abre los data centers de Azure por completo. Desde el panel de control se pueden generar imágenes pre-configuradas de varias distribuciones de Linux, además de Windows, obviamente. Vean las opciones disponibles hoy:

Imagenes disponibles 

Azure Web sites

Es un servicio de hosting de aplicaciones web genérico, soportando múltiples lenguajes y con más flexibilidad que un host tradicional. Además de cubrir (por ahora) ASP.NET, ASP, Node.js, Java, PHP, Python y C++, el mecanismo de despliegue es todo un avance con respecto al anterior: se puede subir directamente desde el portal, por FTP, GIT o TFS. En cuanto la aplicación llega a Azure, prácticamente en forma inmediata queda disponible en línea.

Además de los diferentes lenguajes, otro cambio impresionante viniendo de Microsoft es que los SDK y las herramientas de consola son todas abiertas (admitiendo contribuciones; todas en GitHub) están disponibles para Windows, Mac OS y Linux, con lo que nuestra plataforma de desarrollo puede ser cualquiera.

Algunas cosas en mi lista de deseos hacia adelante:

  • Mejorar la usabilidad del portal exigiendo menos Login (ahora insiste varias veces ante distintas operaciones)
  • Soporte para autenticación por certificados en GIT (ahora hay que usar la password en cada push)
  • Soporte para Ruby (creo que el problema principal por ahora son las gemas que requieren compilación nativa)

Como ejemplo de todo esto, les dejo este cortísimo video (~6 minutos, en inglés) en el que Glenn Block, alguien a quien respecto mucho y que siempre impulsó las plataformas y paradigmas abiertos dentro de Microsoft (¡presten atención a su camiseta!), muestra como desplegar una aplicación Node.js (usando Express) desde Mac OS. Microsoft aún no puede sustraerse a sus carteles publicitarios al inicio y fin del video, pero el resto es recomendable.