Tipos de programador

Me gusta simplificar las cosas. Es algo que no puedo evitar, cúanto más simple es algo, más perfecto me parece. Por eso el otro día cuando leía a Jeff Atwood exponiendo los 8 tipos de programador que según él existen, no pude evitar pensar ¡¿8 tipos para algo tan sencillo?! ¿¿8??

Me vino a la cabeza uno de mis antiguos posts donde hablaba de cómo valorar a los miembros de un equipo. Pero esto es diferente, son tipos de programador. Así que intenté borrar el post de Jeff de mi mente, sobretodo la parte de hacerse famoso... y llegué a la conclusión de que sólo existen 3 tipos de programador:
  • El primer tipo sería el programador que es capaz de aprender por sí mismo.
  • El segundo tipo sería el programador que es capaz de aprender con la ayuda de otros.
  • El tercer tipo es aquel que no es capaz de aprender ni por sí mismo ni por los demás.
Los del primer tipo son superiores, los del segundo brillantes. Los del tercero son inútiles.

Es así de sencillo. Actualmente nuestro mundo vive una evolución imparable y un programador debe vivir en un estado de contínuo aprendizaje que le permita reinventarse a sí mismo en caso necesario.

Por aprendizaje no me refiero a memorizar por memorizar. Aprender implica descubrir y comprender nuevos conceptos para ser capaz de relacionarlos con conocimientos previos de forma coherente. El conocimiento se aumenta con conocimiento.

El primer tipo es un programador superior porque no depende de nadie. Es capaz de buscar, encontrar y aprovechar las fuentes de conocimiento que necesita por sí mismo. Su propio código es una de ellas porque tiene un potente espiritu crítico. Pero sobretodo tiene una vocación y un talento natural. Disfruta realmente programando, resolviendo problemas y experimentando.

El segundo tipo es un programador que tiene la inteligencia necesaria para convertirse en un excelente profesional. Todo dependerá de su actitud, porque aunque es capaz de diferenciar entre lo bien y lo mal hecho, debe esforzarse en aprovechar las oportunidades que se le presenten para aprender. Principalmente, gracias a sus compañeros, pero también un libro, un artículo en internet o el código fuente de un proyecto open-source que utiliza.

El tercer tipo es un programador cuyas acciones no tienen un porqué. No razona porque no aprende, sólo memoriza una parte. Va a lo fácil, a sobrevivir. Necesita constante soporte y supervisión. Hoy hace bien una cosa y mañana la misma la hace mal. Su código es fuente de la mayoría de bugs totales. Daña la moral del equipo. Y a la larga, resta más que suma.

En definitiva -insisto- el programador capaz de aprender por sí mismo es superior, el que es capaz de aprender con la ayuda de otros es brillante y el que no es capaz de aprender ni por sí mismo ni con ayuda de otros es inútil.

8 comentarios :: Tipos de programador

  1. Mmm, me parece un tanto sospecha esta calificación. Me parece que cómo estás en el primer grupo solo en esa medida te atrevez a juzgar.

    ¿En serio piensas que una profesion tan compleja sumada a la complejidad del ser humano se pueda clasificar en 3 categorías?

    Incluso lo de los 8 tipos de programadores es absurdo.

  2. @Anónimo: en general los sistemas humanos son complejos por nuestra incapacidad para hacer cosas simples correctas.

    Aquí Julio toma el factor que considera fundamental en un programador, el aprendizaje, realiza la clasificación en función de él.

    Es lo de siempre, no hay blancos y negros, pero en mi opinión es una clasificación bastante acertada.

  3. Hola Julio:

    Desde luego es una clasificación que comparto contigo pero habría que añadir otros factores como la motivación, etc...

    Sobre lo que comentas de "restar más que sumar"....
    http://www.manuelrecena.com/blog/archives/542

  4. Hola Julio, yo los resumo aún más:

    El que termina de trabajar y no puede ver un ordenador porque le asquea y el que sale del trabajo pensando en dedicarle una par de horas (si las tiene) a su proyecto por hobby.

    Incluso el del primer tipo puede ser en principio más productivo pero a la larga los del segundo tipo no tardan en rebasarlo.

  5. prefiero lo de los 5 tipos de desarrolladores, sobre todo el tipo que es capaz de diseñar y construir.

  6. para mi me parece muy acertada la calificacion.
    el resto de factores son excusas para que los mediocres puedan ocupar cargos superiores.

  7. Este comentario ha sido eliminado por el autor.
  8. No me parece que sea tan así, como para hacer clasificaciones.
    Me parece que todos podemos ser en algún momento, cualquiera de los 3 tipos, o de los 8, o de los 'n'.
    Creo que, como lo dices vos, todo está en la actitud para cualquier persona y para cualquier cosa.
    Yo por ejemplo investigo, experimento y me gusta lo que hago, me encanta! Pero no voy a llegar un fin de semana
    a usar la compu para trabajar en un proyecto ( si no es necesario). Si la usara sería para ver
    películas, jugar o ver porno.

Publicar un comentario