Como convertir una buena idea en un problema

En la época de la construcción de aplicaciones J2EE con tecnología Struts y JSP trabajé en una empresa de servicios en la que introduje el uso de las etiquetas personalizadas (Custom tags).

Estas etiquetas funcionaban como librerías y nos supusieron una gran mejora, ya que, por ejemplo, en vez de tener que hacer corta y pega con el código para una campo de fecha, poníamos la etiqueta que nos habíamos hecho y esta nos generaba el código. Todo el mundo estaba contento, era una tecnología muy sencilla que nos permitía evitar todos los problemas del corta y pega.

Pero no era todo de color de rosas. Un año más tarde, esa misma gente, estábamos poniendo esas, originalmente maravillosas, etiquetas como ejemplo del problema que teníamos. Me explico.

Cada jefe de proyecto en cada proyecto aplicaba un criterio diferente. Unos decían que era mejor validar los datos en la perdida del foco, otros en el submit, incluso hubo uno que hacia mezcla de las dos, el formato en la perdida del foco y el valor en el submit. Unos decían que había que validar los datos antes de pedir confirmación de la operación y otros al revés.

Conclusión, en cada proyecto la etiqueta era diferente, eso provocada que aparte de perder tiempo en adaptar la etiqueta, si un programador tenia que pasar de un proyecto a otro necesitaba un cierto aprendizaje, porque obviamente no solo era la dichosa etiqueta la que se cambiaba en cada proyecto, todos para el mismo cliente, había más cosas que cambiaban.

Es decir, incrementábamos el tiempo de desarrollo y no aportábamos absolutamente ningún valor a nuestro cliente.

Estos errores los he seguido viendo en otras empresas y con otros grupos de personas, porque la gente no parece que sea capaz de interiorizar ciertas cosas:

  • Hay que maximizar el aportar valor al cliente.
  • TU casa la puedes poner a TU gusto, pero el proyecto, por muy jefe que seas (y en alguno he sido bastante jefe), NO es tuyo, es del cliente.
  • Toda mejora supone un cambio, pero no todo cambio supone una mejora.
  • Si algo es razonable, aunque tu lo hubieses hecho de otra manera, déjalo y céntrate en mejorar cosas que estén realmente mal.