Herramientas de gestión de backlog: estas NO

No voy decir qué herramienta no utilizar. En lugar de ello voy a contar cómo me gusta trabajar y cuales son incomodidades/limitaciones que me he encontrado con ciertas herramientas pero sin dar nombres.

Parte de la motivación de escribir este artículo tiene que ver con que en más de una vez veo equipos trabajando de una determinada forma que ni a ellos mismos les convence y ante la pregunta de porqué lo hacen me dicen cosas tales como «Es que la herramienta lo maneja así» o «Nos gustaría hacerlo de otra forma pero nuestra herramienta no lo soporta«. Estas situaciones caen dentro de lo que yo suelo denominar «Poner el caballo delante del carro». En fin, voy con mi lista.

Identificación de ítems: me gusta poder referirme a los ítems del backlog de forma rápida con un número, onda: «el ítem 14», «el ítem 182». Resulta muy práctico y directo sin ambigüedades. Hay herramientas que en lugar identificador los ítems con secuencias numéricas por proyecto, utilizan identificadores largos tipo GUID o tienen una secuencia global para todos los proyectos entonces estos IDs tienden a ser números muy largos como «1234599934» y resulta incómodo utilizarlos para identificar los ítems en una charla.

Ítems linkeables: me gusta poder compartir links directos a cada ítem, es algo que parece trivial pero he visto herramientas que no lo soportan, solo es posible compartir un link al backlog y luego uno manualmente debe posicionarse en el ítem en cuestión.

Libertad en los tipos de items: en general tiendo a no hacer distinción en los tipos de ítems, por eso me resulta indiferente si la herramienta soporta o no distintos tipos de ítems (story, tasks, etc). Pero hay herramientas que fuerzan a que todo ítem sea de algún tipo (hasta ahí, ok) y junto con ello «le imponen ciertas reglas» (por ejemplo: cierto tipo de ítem no se puede estimar) mmm, esto ya es demasiado.

Prioridad y costo: todo ítem de backlog tiene una prioridad para el negocio y un costo (estimado) asociado de construcción, entonces espero que la herramienta provea soporte explícito para estos dos datos. No todas las herramientas lo hacen. El hecho de poder tener estas propiedades individualizadas permite a posteriori hacer ciertas operaciones de reporte 7 análisis.

Iteraciones: generalmente me inclino por un esquema de entrega continua pero igualmente me gusta trabajar en iteraciones para así poder establecer una cadencia de reflexión y planificación. Hay herramientas que no soportan iteraciones.

Reporting: al cabo de un par de iteraciones me gusta poder sacar algunas métricas y proyecciones de la evolución del proyecto. Hay herramientas que vienen con un nutrido set de reportes, otras tienen algún reporte pero permiten exportar la información. Pero hay otras que nada de eso.

Para cerrar, soy consciente que aún cuando la herramienta no soporte cierta funcionalidad, es posible que podamos, como decimos en Argentina, «atarlo con alambre», buscarle la vuelta, onda: si la herramienta no tiene soporte para indicar la estimación entonces la podemos cargar en la descripción. Mmmm, demasiado rudimentario para mi gusto.

En fin, el mercado está plagado de herramientas para gestionar el backlog, cada uno que use lo que guste pero procuren no poner el carro delante del caballo.

Herramientas para desarrolladores Windows

Herramientas para desarrolladores Windows

Para quienes trabajamos habitualmente en mundo unix-like (Linux, MacOS, etc), trabajar en Windows puede resultar extremadamente molesto. Personalmente he encontrado dos herramientas que me han ayudado a mitigar mis tareas en Windows:

  • Chocolatey es un gestor de paquetes para Windows, es en cierto modo un equivalente al apt-get de los sistemas Debian.
  • Cmdler es un emulador de consola. Simplemente excelente pues más allá de los típicos comandos POSIX también provee un editor vi, un esquema de colores muy agradable y prompt muy cómodo.
  • Firefox, creo que no hay mucho que decir
  • Visual Studio Code es un «Power editor» al estilo Sublime. Su nombre me parece una triste elección pues causa confusión y poco tiene que ver con el famoso Visual Studio, pero es una muy buena herramienta de edición de código.

 

Website Performance Tools

During these days we (project A2 team) have been working on this topic. We are working on training material about website performance, so we had to review some tools to measure performance.
Below is a list of tools we have reviewed during the last week.

  • FireBug: is a very popular FireFox add-on for allowing to edit, debug, and monitor CSS, HTML, and JavaScript, but it also provides lower level information such as http headers and others.
  • YSlow: is a FireFox/FireBug add-on developed by Yahoo! It analyzes and qualifies web pages from A to F suggesting ways to improve their performance based on a set of rules for high performance web pages. The reports it generates are very nice.
  • Page Speed: is a FireFox/FireBug add-on developed by Google. It performs several tests on web pages that are based on a set of best practices known to enhance web page performance. A score is provided for each page as well as helpful suggestions on how to improve its performance.
  • MSFast: is a browser plugin that help developers to improve their code performance by capturing and measuring possible bottlenecks on their web pages. It has been developed by MySpace.com and currently supports Internet Explorer.
  • dynaTrace: It integrates with Internet Explorer and allows you to diagnose and prevent AJAX performance issues.
  • Visual Round Trip Analyzer: is a standalone application that examines the communications protocol, identifying the causes of excessive round-trips, and recommending solutions. It is browser-independent. You open the tool and it starts recording what happen at network level. Then you browse your website and finally stop the recording. The tool helps you analyze what have happened.

There are some more tools we have reviewed but these are in my opinion the most interesting. You might be wondering why I didn’t mentioned Fiddler. The reason is that Fiddler does not provide any suggestions, it’s a passive tool: just captures the network traffic because its focus is not performance analysis.

On future posts I would like to drill down on each of these tools and I will also provide information about JavaScript profiling and server-side analysis.