miércoles, 9 de noviembre de 2011

Video: Arquitecturas y Organizaciones, por Diego Fontdevila (+ invitación)

Diego Fontdevila

Comparto con ustedes otros de los vídeos de la reciente Jornada de Arquitectura de Software organizada por el MUG en UADE. Esta vez le toca el turno a Diego Fontdevila y su sesión sobre las similitudes y ecos entre las arquitecturas de software y las organizaciones que las construyen o mantienen.

Diego es uno de los socios fundadores de Grupo Esfera, una empresa dedicada a consultoría, desarrollo y capacitación con fuerte foco en la plataforma Java y otras tecnologías de software libre. Diego también es docente en la UBA, UNTREF y UNLAM, y está estudiando en el programa de Software Engineering Management de Carnegie Mellon y el SEI.

Nos conocimos durante Agiles 2008, la primer edición de las jornadas latinoamericanas, y nos hicimos amigos a través de los años y las actividades conjuntas en torno a esta comunidad. Tuvimos la oportunidad de colaborar en algunos proyectos e incluso publicamos juntos un paper sobre arquitectura y métodos ágiles que también presentamos varias veces, siempre agregando detalles.

En esta sesión Diego habla sobre la relación entre las formas de las organizaciones y las estructuras tecnológicas que engendran, y cómo es altamente improbable poder quitarles la impronta que una impone a la otra, aportando visiones de diferentes disciplinas e ideas de varios autores y vertientes. La sesión da para un intenso debate o mas participación, y para eso Diego va a repetirla la semana próxima en la próxima reunión de Agiles @ Buenos Aires. Como siempre, este evento es abierto y gratuito, pero requiere registro previo.

Les dejo el video, en 4 partes de 15 minutos aproximadamente.

martes, 8 de noviembre de 2011

Video: Arquitectura Orientada a la Web, por Diego Gonzalez

Diego Gonzalez

Siguiendo con las sesiones de la reciente Jornada de Arquitectura de Software organizada por el MUG en UADE, esta vez publico el video de la sesión de Diego Gonzalez acerca de arquitecturas centradas en la web.

Diego es uno de los fundadores de Lagash, una consultora argentina que se ha expandido a algunos otros puntos de América Latina, y que es reconocida en el mercado por la capacidad de su gente y por un espíritu innovador y creativo a la hora de resolver problemas, del que Diego es parcialmente responsable con sus socios. Desde hace muchos años tengo el placer de trabajar de tanto en tanto con Diego y su equipo, e incluso hemos llegado a compartir una cátedra de Arquitectura de Software.

En su sesión, Diego realiza algunas consideraciones generales en cuanto a arquitectura, y después indaga en las características que la web ayudó a establecer, y a una serie de tendencias que le parecen las más importantes a tener en cuenta en aplicaciones modernas.

Dejo a continuación las cuatro partes del video, de unos 15 minutos cada una.

lunes, 7 de noviembre de 2011

jQuery 1.7 disponible

jQuery

La más popular de las bibliotecas de JavaScript, instrumental en cambiar el panorama de este lenguaje, ha sido actualizada una vez más.

Esta versión 1.7 ya está disponible para descarga tanto en el sitio oficial (versión completa o minimizada) como en las redes de distribución de contenido de Google y Microsoft, desde donde conviene apuntarlas en nuestros sitios web para garantizar la mejor eficiencia de acceso.

Algunas de las novedades principales, además de correcciones y mejoras generales, son:

Nueva API de eventos on / off:

Esta sintaxis unifica diferentes maneras de enlazar eventos como las anteriores delegate() o bind(). La sintaxis completa es:

$(elements).on( events [, selector] [, data] , handler );
$(elements).off( [ events ] [, selector] [, handler] );

Ejemplos de uso:

$('form').on('submit', { val: 42 }, fn);

$(window).off('scroll.myPlugin');

$('.comment').on('click', 'a.add', addNew);

Enormes mejoras en el rendimiento de eventos delegados

Muchos otros frameworks basados en jQuery, al igual que muchas aplicaciones complejas hoy día, usan eventos delegados en forma cada vez más intensiva, por lo que el equipo hizo un arduo trabajo de investigación de los escenarios más típicos y logro mejorar el rendimiento de muchas operaciones en forma dramática. Vean el siguiente cuadro comparativo de velocidad de ejecución de las pruebas en diversos navegadores:

Eventos Delegados en jQuery 1.7

Soporte mejorado para HTML5 en Internet Explorer 6, 7 y 8

Aun utilizando bibliotecas como Modernizr o html5shiv, hay tags como <section> que eran eliminados por estos navegadores. Esta versión de jQuery (que no reemplaza las bibliotecas mencionadas) permite seguir manipulando estos elementos en métodos como .html().

Mejoras en jQuery.Deferred

El objeto jQuery.Deferred es parte del API para ejecución asincrónica. Este objeto representa una promesa de retorno de un proceso que está ejecutándose asincrónicamente, mientras nuestra aplicación puede seguir trabajando en otra cosa o atendiendo a eventos.

Esto ya funcionaba perfectamente, pero en la nueva versión se ha extendido el objeto para poder manejar notificaciones de progreso, de manera de poder reportar el avance, o poder preguntar por el estado en cualquier momento.

Otras mejoras generales

También se mejoró la activación y desactivación de animaciones para hacer más intuitivo el manejo cuando éstas operaciones están anidadas, se agregó soporte para el AMD API (definición de módulos asincrónicos), que unifica varias otras bibliotecas como RequireJS o curl.js para cargar módulos dinámicamente. jQuery contempla ahora estas operaciones correctamente y deja que los procesos de carga reporten realmente cuando el documento está ready. Finalmente esta versión agrega una función muy útil: jQuery.IsNumeric() que indica si un valor es numérico, algo que no siempre es tan fácil de determinar como parece en JavaScript.

jueves, 3 de noviembre de 2011

Video: Lenguajes dinámicos meta-circulares, por Hernán Wilkinson

Hernán Wilkinson

En la reciente Jornada de Arquitectura de Software organizada por el MUG en UADE, Hernán Wilkinson presentó esta sesión sobre lenguajes dinámicos en el contexto de entornos meta-circulares, un valor agregado a las características básicas de los tipos dinámicos.

Hernán es uno de los principales especialistas locales en programación y diseño orientado a objetos, uno de los miembros fundadores de FAST (la Fundación Argentina de Smalltalk) y organizador de la conferencia anual internacional Smalltalks que se realiza en Argentina en diversas localidades, en forma rotativa (la edición 2011 está corriendo hoy mismo en Quilmes).

Actualmente Hernán es uno de los socios de 10pines, una consultora de entrenamiento y desarrollo de software especializada en metodologías ágiles y buenas prácticas de ingeniería.

En la sesión (de una hora aproximadamente) podrán verlo explicar conceptos generales sobre lenguajes dinámicos, puntualizando la diferencia entre tiempos de evaluación y chequeo de tipos, y profundizando luego en la diferencia de flujo de trabajo al efectuar TDD en entornos meta-circulares como una imagen de Smalltak.

No tengo disponibles los slides de la sesión, pero una buena parte de la presentación incluye ejemplos sencillos en Java y en Smalltalk, con lo que el video es más importante. Van a continuación las cuatro partes de aproximadamente 15 minutos cada una.

miércoles, 2 de noviembre de 2011

Azure Hispano: un foro para discutir sobre Windows Azure en español

Azure

El viernes pasado en las oficinas de Microsoft Argentina, en Buenos Aires, hubo una reunión inicial de un grupo de gente de la comunidad de desarrollo interesada en intercambiar experiencias sobre los proyectos iniciales que se están dando en la región basados en Windows Azure, la plataforma de computación en la nube de Microsoft.

No pude asistir porque coincidía con la Jornada de Arquitectura del MUG, pero se que hubo varios amigos al menos invitados. Uno de los que iniciaron el movimiento fue el Tano Fabio Maulo, quien hizo el anuncio oficial en su blog.

El resultado de la reunión fue básicamente la creación de una lista de correo (o foro) para discutir sobre este tema. La dirección de la lista creada en Yahoo! es:

http://tech.groups.yahoo.com/group/azurehispano/

Por ahora sólo se dio una conversación sobre maneras de escalar automáticamente, pero es bueno ver muchos nombres conocidos en la lista, como el mismo Fabio, la anfitriona Guada CasusoGabriel Szlechtman, Julian Dominguez, Adrián Eidelman, Nico Bello Camilletti, Alejandro Labras, Jorge Fioranelli, Martin Legnoverde, y varios otros, solamente en unos pocos días.

Para los interesados en esta plataforma, un recurso prometedor.