¿Qué tipo de informático eres?

Cuando trabajas con gente, de este gremio en concreto (aunque es aplicable a muchos otros), te das cuenta que hay gente de todo tipo: altos, bajos, guapos, simpáticos, frios, amables, meticulosos, solitarios… Pero cuando agrupamos aún mas a la gente (en mi opinión), tenemos a dos grandes grupos…

Grupo de los «busca vidas»: Es gente autodidacta, que les gusta investigar y a la vez que programan tienen preparado el google, el msdn, codeproject, codeplex… y cuando les surge una duda, consulta, investiga, busca una segunda opción, por lo general, comprueba que el método que acaba de escribir es optimo o incluso antes de escribir una funcionalidad, se da unas vueltas por la red buscando lo que tiene que hacer, (no vaya a ser que ya esté hecho), repasan y comentan el código a la vez que piensan en la siguiente tarea. Interpretan la labor de programar como un «arte», en el que cada trozo de código adquiere una parte de ellos, lo ven como una forma mas de expresión, justificando las decisiones que toman, aportando comentarios en el código (aquí he utilizado una función recursiva por que mejora el rendimiento, bal bla bla). Que, a veces, cuando llegan a casa siguen pensando en la resolución del problema, que no solo se limitan a programar, a cumplir, sino que buscan la manera de mejorar, de innovar, pero lo mas importante de todo esto, es que este tipo de programador, aporta un valor añadido fundamental en los desarrollos, la calidad.

Grupo de los «Esqueeee»: Les suele caracterizar la parsimonia y la apatía, generalmente son gente desmotivada, que no les gusta demasiado su trabajo y carecen de vocación. Cuando se encuentran un problema, que no está en su guión de trabajo habitual, les identifica la frase: «Es que eso no se puede hacer» o «Es que no sé como hacerlo (pero tampoco me he molestado en buscar como)». Solamente ven líneas de código, no piensan, solo programan, están convencidos de que solo hay una manera de hacer las cosas, la mas rápida. Es gente que les tienen que dar apoyo constante al desarrollo y no mejoran su actitud con la experiencia adquirida. Generalmente es necesario explicarles el problema, orientarles y guiarles hasta la solución. Ven su trabajo como una cadena de producción, en la cual, únicamente, tienen que cumplir sus 8 horas diarias y esperar el ingreso a final de mes, sin preocuparse demasiado de la calidad del desarrollo, solo lo justo, solo cumplir «Yo hago lo que me mandan…». No dan valor añadido al desarrollo, solo programan, mecanizan instrucciones, líneas de código, limitándose al requisito 36 del documento de requisitos, ¡sin mas! y ¿para que van a hacer mas? Les van a pagar lo mismo.

Una vez definidos, a mi modo de ver, estos grupos, quiero aclarar y puntualizar que esto no es siempre así, que las cosas no son o blancas o negras, que cada persona tiene características y cualidades diferentes a otras, que cada uno somos de nuestro padre y nuestra madre y que hay muchas factores que nos caracterizan, por no hablar de los estados de ánimo, que es al final, lo que define las acciones de las personas. No quiero que nadie me ubique de racista, machista o generalista por hacer 2 grandes agrupaciones, es solo una opinión, un pensamiento, una idea que seguro… si pensáis un poco, vais a identificar dentro de estos grupos al 80% de la gente con la que trabajáis.

¡Bien! Una vez dicho esto tenemos que hacer examen de conciencia, ver donde estamos, hacia donde vamos y hacia donde queremos ir, es necesario preguntarnos que, si ahora mismo nuestros ideales, son los mismos que en nuestro primer día de trabajo… y si cuando empezamos en este mundo, nos identificábamos con un grupo, no nos estaremos desviando hacia otro (el lado oscuro de la fuerza 😉 ), o incluso, si tenemos compañeros de trabajo que han cambiado de grupo ¿cual es el motivo? ¿El síndrome del funcionario?

Y para terminar… recomendar este artículo a todo oveja descarriada, que no piense que el desarrollo es un arte… ¡que corra hacia la luz!

¡¡¡Vamos a cambiar el mundo!!!

¡Algo está cambiando… en el desarrollo de software!


Cuando se estudia Ingeniería de software, es común estudiar los mitos del software y en concreto hay un mito de los gestores que dice lo siguiente:
¿Por qué debemos cambiar nuestra forma de desarrollar software, si estamos haciendo el mismo tipo de programación ahora que hace 10 años?
Evidentemente las funciones del software son las mismas (como por ejemplo, sacar los datos de una base de datos y mostrarlos en un monitor), pero los requisitos han cambiado, el software ahora controla procesos de fabricación mas sensibles, el nivel de tolerancia al fallo tampoco es el mismo, las necesidades de escalabilidad y reusabilidad no son las mismas, el nivel de seguridad, la accesibilidad, los interfaces de usuario, la multitarea, … Porque ahora además de mostrar datos en un monitor, hay que presentar un informe con los datos, exportarlo a PDF, JPG, Excel y rtf…, Además tiene que tener la lógica de negocio publicada mediante servicios Web, integrarse con un gestor documental, actualizar los datos de 4 gestores de bases de datos diferentes, mostrar los datos en una PDA y en un Spectrum…  ¡¡¡nada es lo mismo!!! Bueno! los bucles, los condicionales y la declaración de variables, apenas ha cambiado… pero evidentemente la manera de hacerlo funcionar no es la misma, ahora tenemos arquitecturas en capas, programación modular, orientada a Objetos, orientada a Aspectos, orientada a Servicios, …


Este mito, también está en muy presente en algunos desarrolladores estancados en el «cuaternario», habilidosos con el Visual Basic 5, cuyo único argumento es que para hacer un desarrollo, es que son más productivos utilizando la tecnología que conocen y dominan. Son muy comunes comentarios del tipo: los informes vamos a hacerlos con Crystal Reports 7, que así los llevo haciendo yo siempre y nadie nunca se ha quejado. No os olvidéis: «Así se ha hecho siempre» y el «nunca nadie se ha quejado», son las frases que identifican a este tipo de desarrolladores. ¡Ojo! No hay que huir de ellos, ni obligarles a cambiar ya que su experiencia es muy valiosa cuando hay que hacer mantenimientos en entornos «Natural/Adabas»…, simplemente hay que aceptarlos y convivir… y ¿si podemos? enseñarles los nuevos entornos, metodologías, sistemas, tecnologías y herramientas, pero no imponérselos, porque de la imposición sale el rencor, y del rencor el odio, y del odio sale la desmotivación y la baja productividad.


¿Entonces? ¿Tenemos que cambiar nuestra manera de crear software?
La respuesta: Si ¿y mañana? También ¿pasado mañana? ¡Seguro!


Por todo esto doy un grito de «ÁNIMO» a las nuevas generaciones de desarrolladores, de mentes abiertas e inquietas, cuyo afán es mejorar, innovar, probar las nuevas tendencias y tecnologías, y todo esto tiene como trasfondo el aplicar procesos de mejora y calidad al desarrollo de software.



 

Comenzamos …

Hoy inicio mi andadura en Geeks…, espero no ser muy pesado y contribuir a la comunidad aportando artículos de calidad e interés.
El objetivo de este blog será el de contar y compartir mis vivencias y experiencias en el desarrollo de software… siempre con el afán de mejorar, con todo lo que esto conlleva (aprender, investigar, compartir…) y darlo a conocer.
Espero, a partir de ahora, poder ampliar y compartir la experiencia y conocimientos acumulados a lo largo del tiempo, aplicando procesos de calidad en el desarrollo de software.


Espero no aburrir a casi nadie 😉