lunes, 10 de junio de 2013

Los Pecados Capitales del Desarrollador - Soberbia




“Los Pecados Capitales del Desarrollador”  está dirigida a las personas del área de TI que ejecutan alguna actividad de carácter técnico que servirá finalmente para la producción de algún Software (análisis, diseño, codificación, pruebas o administración de proyectos).

Primero debemos entender el concepto de la analogía (que no es religiosa, aclaro), un pecado es una desviación a un objetivo o una omisión  de algo que se requiere para lograr un objetivo, y el calificativo capital  se refiere a lo principal o al Origen de, por tanto aquí hablaremos de los Pecados Capitales o Desviaciones Principales que puede cometer un Desarrollador de Software y con los cuales se pueden, en mayor o menor medida, afectar los objetivos de un proyecto siendo el origen de la mayoría de problemas que se presentarán en el proyecto mismo, podemos a su vez hacer una analogía con el principio de Pareto indicando de forma no exacta que el 20% de las desviaciones en un proyecto (pecados) generarán el 80% de los problemas más graves del Proyecto. Trataré de alguna manera exponer lo que llamaré Pecados Capitales del Desarrollador, para conocerlos y entender sus efectos en un proyecto así como las virtudes con que se pueden atacar para tener una conciencia más orientada a objetivos al momento de desarrollar un Software y comprender entonces que, lograr el Objetivo de un Proyecto es lo más importante aun cuando las Tentaciones de los Pecados sean muy poderosas.

Cada quince días publicaremos un pecado  capital hasta exponer los siete pecados capitales del desarrollador.


SOBERBIA




















La soberbia se refiere en sí, al sentimiento de superioridad que uno mismo puede tener sobre los demás. Un desarrollador que actúa con soberbia, puede poner en riesgo el cumplimiento de sus compromisos en las diferentes circunstancias que vive un proyecto, la más común se presenta con los retos.
Algo que agrada a los desarrolladores son los retos y lograrlos no sólo satisface la necesidad constante de todo desarrollador por auto-superarse, sino que alimenta su soberbia al haber “incrementado su nivel” con un reto logrado. La situación es común, el reto se presenta y de inmediato se libera una sensación de vacío que debe ser satisfecha -¿Cómo es posible que no sepa hacer esto?- pero –No debe ser tan difícil, no para mí al menos– y se inicia un proceso intelectual difícil de contener, el tiempo se detiene y lo único importante es encontrar la solución al reto, superarlo, a como dé lugar, -No puede ganarme, no a mi–

Lo cierto es que en algún momento, el Desarrollador superará el Reto y lo hará muy bien y se sentirá satisfecho y quizá se sienta aún más superior que antes. Pero algo pasó durante este proceso: el Desarrollador sin darse cuenta se perdió en su propio mundo lógico y finalmente regresó al mundo real con su reto superado. Lo que se perdió fue el tiempo transcurrido; sin darse cuenta pasaron horas y horas, quizá días, quizá semanas, y lo único que logró fue pasar un obstáculo, uno sólo de muchos en una larga carrera por concluir el proyecto. Y lo peor es que no se tomó la molestia de preguntar si era necesario pasar por ese obstáculo, porque quizá alguien más ya había invertido el tiempo para resolver el reto, no se dio cuenta que el reto no era sólo para él, su soberbia no le permitió darse cuenta que para otros no era un reto, ni siquiera un problema, quizá sólo algo de rutina que se resuelve en 5 minutos. La soberbia aleja al Desarrollador de la realidad de una empresa de Desarrollo a la Medida, y más aún cuando dicha Empresa tiene muchos años superando todo tipo de retos y obstáculos. El remedio entonces es adquirir la virtud de la humildad ante el equipo de trabajo, siempre que se presente un problema, un reto o un obstáculo, cuando a su mente llegue el no deseado pero sí muy común pensamiento de “¿¿¿Y cómo rayos voy a hacer esto???”. Lo primero que deben hacer es preguntar si alguien más ya lo ha hecho antes, y si es así, con humildad, aprender de él. En caso de que no haya nadie que conozca la solución, lo siguiente por hacer, y muy importante, es comunicarlo al respectivo Administrador de Proyectos o al Líder del Proyecto para que la situación se administre como un Riesgo del Proyecto y se le dé el trato, tiempo y seguimiento correspondiente.

Los problemas derivados de no aceptar responsablemente que alguna tarea asignada, está fuera de las capacidades y conocimientos que poseemos en ese momento, son varios y mencionaré algunos:
  • Consumir tiempo no estimado del proyecto.
  • No lograr cumplir compromisos.
  • Agotamiento del recurso (es común dedicar mucho tiempo extra con el reto atorado en la cabeza).
  • Desviaciones a las normas o reglas de codificación definidos (durante el proceso creativo del desarrollador todo parece estar fuera de lugar y comienza a fabricar sus propias reglas y normas).
  • Complicaciones innecesarias en el diseño (cuando un problema se presenta la primera vez que se resuelve suele utilizarse una solución mucho más compleja de lo requerido, si el problema es común lo más seguro es que ya se tenga una solución más acotada).
  • Omisión de atributos de calidad requeridos (cuando se enfoca demasiado en el reto, suelen perderse de vista conceptos como performance, portabilidad, manejo de volumen, etc., que podrían ser requerimientos específicos del proyecto).

En conclusión, hay que darnos cuenta si estamos actuando con soberbia y por difícil que pueda ser intentar ser humildes, trabajar enfocado en los objetivos del proyecto, y no en los retos que éste pueda darnos, pero no se pongan tristes, si lo que están buscando son retos, siempre habrá alguno y existe una fase en todo proyecto que se enfoca en diseñar lo “diseñable”, prototipar lo “prototipable” y simular lo “simulable”, si su inquietud es resolver problemas sólo hay que enfocarlo en la Fase correcta del Proyecto, o en su defecto, en el Área correcta de la Empresa.

Avaricia…Ira… Gula… Envidia… Pereza…? Lujuria???
Aún quedan varios pecados  capitales que analizar, tendremos que esperar la próxima publicación para continuar, ¡Hasta la próxima!


 Armando Olmos
 Director de Producción
 Dawcons




1 comentario: