miércoles, 22 de febrero de 2012

Video: Agiles @ Buenos Aires - Caso de éxito ágil, por Pablo Francavilla

Agiles

En la última reunión mensual de Agiles Buenos Aires, organizada por la comunidad local aproximadamente los segundos martes de cada mes, Pablo Francavilla vino a contarnos los detalles de un caso de éxito para su compañía, GetSense, pero fundamentalmente una experiencia enriquecedora desde el punto de vista de las técnicas que utilizaron.

Una de las claves en este caso, para Pablo, fue la utilización de Story Mapping, una técnica para la definición del producto de manera colaborativa, utilizando un esquema visual con post-it de colores en una pared o mesa, entre todos los participantes: clientes, equipo y cualquiera de importancia en el contexto del proyecto.

Pablo destacó que aprendieron lo básico sobre esta técnica en una reunión prevía de Agiles @ Buenos Aires, lo que también es una referencia interesante en si misma.

La sesión completa, como siempre, llevó casi 120 minutos, y está dividida en 7 partes de unos 17 minutos cada una. Queda a continuación el primer video embebido, y los enlaces a los siguientes debajo. Sepan disculpar mis movimientos un tanto torpes como camarógrafo en los primeros minutos, pero el movimiento del público hacia un lado de la sala al iniciar la sesión me tomó por sorpresa.

Parte 2 de 7

Parte 3 de 7

Parte 4 de 7

Parte 5 de 7

Parte 6 de 7

Parte 7 de 7

viernes, 17 de febrero de 2012

Se liberó la Beta de ASP.NET MVC 4 (+ video)

Para los lectores interesados en .NET, esta es una muy buena noticia. La nueva versión de ASP.NET MVC ya está en Beta, y al parecer bastante estable, siguiendo el estilo de este equipo, que se diferencia de otros de Microsoft en su ciclo de producto sumamente iterativo y muy basado en pruebas.

Otra particularidad de este equipo es que termina liberando (ya que no arrancan así durante el desarrollo, lamentablemente) el producto como código abierto. Scott Guthrie, padre de ASP.NET MVC y buena parte del viejo ASP.NET, confirmó que esta versión también será licenciada como código abierto (la actual tiene licencia Apache 2.0), ante la pregunta de Miguel de Icaza en Twitter, lo que implica que podrá utilizarse con Mono próximamente.

The Gu le contesta a Miguel

La versión Beta, que ya está disponible para descarga y puede usarse en paralelo con MVC 3, tiene las siguientes mejoras principales:

  • ASP.NET Web API - la versión final del modelo para servicios REST, evolución de la WCF Web API.
  • Plantillas de proyecto nuevas y mejoradas, con código HTML mucho más cuidado, código más prolijo del lado del servidor, y uso de rendering adaptativo para que se vea correctamente en múltiples dispositivos.
  • Nueva plantilla para sitios móviles - aunque la plantilla básica se adapta bien a teléfonos, esta nueva está específicamente pensada para ese escenario, incluyendo de entrada jQuery Mobile para mejorar la experiencia táctil.
  • Modos de Display es la característica que permite cubrir el escenario mixto en que la misma aplicación debe tener vistas especializadas para diferentes dispositivos, con el mismo código servidor y mínimos cambios en el código cliente, pero que implican una gran diferencia en la experiencia del usuario.
  • Recetas para generación de código - facilitan a los autores de paquetes NuGet utilizar generación para alterar la generación ante los comandos de agregado de vistas, controladores, etc.
  • Soporte para Tasks (tareas asincrónicas) en los controladores.

Probablemente una de las novedades más importantes es la inclusión de la Web API, que permite generar servicios que pueden exponerse incluso fuera de IIS, y mejora mucho las capacidades para construir aplicaciones RESTful. Dejo un video (en inglés, 70 minutos) de Daniel Roth, del equipo de MVC, demostrando sus capacidades principales.

miércoles, 15 de febrero de 2012

Bootstrap 2.0: de Twitter para el mundo

Twitter

El equipo de la interfaz web de Twitter publicó ya hace tiempo como código abierto y gratuito Bootstrap, un conjunto de herramientas para trabajar interfaces web de manera consistente y basada en los nuevos estándares.

Bootstrap está basado en HTML5, incluye hojas de estilo en cascada (CSS) y componentes en JavaScript que brindan muchísimas flexibilidad y consistencia para lograr páginas limpias y sencillas, que a primera vista resultan familiares y fáciles de usar, como este ejemplo (sumamente básico, pero ilustrativo):

Ejemplo de Bootstrap

Hace unos días los responsables de Bootstrap, que está alojado en GitHub y es uno de los proyectos más exitosos en el sitio, que recibe además múltiples aportes de la comunidad, liberaron la versión 2.0, que agrega un esquema de trabajo sobre una grilla de 12 columnas que facilita la ubicación de elementos que pueden reacomodarse en diferentes formatos de dispositivo, y permite crear elementos anidados, relativos, etc.

Otra novedad es que todo el manejo de hojas de estilo ahora está basado en LESS, un lenguaje dinámico que extiende y mejora CSS a través de manipulación en JS.

Un último detalle que me parece muy bueno es la posibilidad de configurar el conjunto de herramientas necesarias para un proyecto en particular y poder descargar el paquete mínimo necesario, pero con todas las dependencias y configuración perfectamente resueltas. Así se puede optar por incluir o no cualquiera de estas múltiples características:

Componentes

  • Scaffolding
    • Normalize and reset
    • Body type and links
    • Grid system
    • Layouts
  • Base CSS
    • Headings, body, etc
    • Code and pre
    • Labels
    • Tables
    • Forms
    • Buttons
    • Icons
  • Components
    • Button groups and dropdowns
    • Navs, tabs, and pills
    • Navbar
    • Breadcrumbs
    • Pagination
    • Pager
    • Thumbnails
    • Alerts
    • Progress bars
    • Hero unit
  • JS Components
    • Tooltips
    • Popovers
    • Modals
    • Dropdowns
    • Collapse
    • Carousel
  • Miscellaneous
    • Wells
    • Close icon
    • Utilities
    • Component animations
    • Responsive
    • Responsive layouts

Y también se pueden seleccionar los plugins de jQuery, como transiciones, modal dialogs, dropdowns, tooltips y muchísimas cosas más.

Finalmente también se pueden personalizar los valores básicos de una serie de variables de LESS que se toman como base inicial.

La mejor manera de conocer y valorar Bootstrap es mirar un poco el sitio y descargarlo para probar.

viernes, 10 de febrero de 2012

Video: Bjarne Stroustrup presenta el estilo de C++11 en Going Native 2012

Como comenté hace unas semanas, en los primeros días de febrero se llevó a cabo la conferencia Going Native 2012, dedicada a los desarrolladores C++, y enfocada en el flamante estándar 11 del lenguaje, que está llegando a todos los nuevos compiladores de cada plataforma, desde Unix a Windows.

En la conferencia participaron Stroustrup (el creador de C++) y los principales impulsores del lenguaje en Google, Facebook, HP y Microsoft (anfitrión del evento, que se realizó en uno de sus auditorios).

Este post es principalmente para informar que ya están disponibles en video todas las sesiones, y dejarles a mano la apertura, que arranca con la dedicatoria del evento al recientemente fallecido Dennis Ritchie, creador del lenguaje C y co-creador del sistema operativo Unix, muy emotiva para cualquier geek de corazón.

Queda debajo entonces el video (~90 minutos), y recuerden que en la página principal del evento están los enlaces a todas las demás sesiones.

jueves, 9 de febrero de 2012

¿MacBook con teclado en inglés?

Argento Layout

Los lenguajes de programación, no importa de qué origen, están pensados para escribir con un teclado en inglés. Es cierto que se puede escribir código con cualquiera, pero siempre es más complicado al alejarse del clásico "US Layout". Por eso siempre busco computadoras con teclas en inglés, como en el caso de mi MacBook.

Pero claro, también tengo que escribir frecuentemente en español, como en este blog. Mac OS X tiene una serie de secuencias de teclas por omisión para ingresar vocales con tilde, diéresis, etc, pero la mayoría de nosotros estamos acostumbrados a teclear la tilde primero y después la vocal, etc. Como no encontré un esquema de teclado con las combinaciones que me gustaban, construí uno, y para ahorrarle tiempo a quien venga detrás, lo comparto con ustedes.

Argento Layout es un esquema de teclado (Keyboard Layout) para Mac OS X, pensado para computadoras con teclado en inglés (US) de fábrica, que facilita escribir en español.

Las combinaciones de tecla habilitadas son las vocales acentuadas (minúsculas y mayúsculas) que se logran pulsando la tilde (debe estar entre las teclas ";" y "return"), y adicionalmente pulsando la tilde y luego la "n" (mayúscula o minúscula) se obtiene la "ñ".

Como también escribo frecuentemente en inglés, mantuve un detalle importante: si se escribe algo diferente de vocal o "n" luego de la tilde, el caracter resultante es una comilla simple, no una tilde, lo que evita que un texto en inglés quede como:

I'm a coder (correcto)

...en lugar de:

I′m a coder (incorrecto - en inglés el caracter correcto para las contracciones es un comilla recta, no unan tilde)

Los interesados solamente deben copiar el archivo "Argento.keylayout" descargado dentro de la carpeta "~/Library/Keyboard Layouts" (~ indica su carpeta de usuario) si quieren tener el esquema disponible solamente para su perfil. Si quieren que esté disponible para todos, copien el archivo en "/Library/Keyboard Layouts" desde el directorio raíz.

Para poder usarlo hay que hacer "Logout" y "Login" nuevamente. Si quieren poder cambiar el modo de teclado, pueden modificarlo en las Preferencias de Teclado, y pueden dejar el icono disponible en la barra de menú para poder alternarlos fácilmente (como se ven en la imagen más arriba).

Espero que a alguno de ustedes le resulte útil.