Distintos tipos de programadores


Mirando por Picando Código he encontrado dos listas que intentan englobar a los distintos tipos de programadores. La primera los clasifica en 5 grupos y la segunda en 2. A mi modo de ver las cosas las dos listas son bastante realistas, empiezo con la primera que he visto:

LOS 5 TIPOS DE PROGRAMADORES

Programador Cinta – Palo “Puede que el código sea loco, pero maldición, funciona.”

Este tipo es la base de tu empresa. Cuando algo falla el lo arrelglara rápido y de manera que no volverá a romperse. Por supuesto no le importa como se vea, la facilidad de uso, ni ninguna de esas preocupaciones triviales, pero lo hará pasar sin mucha chara o tonterías que hagan perder el tiempo. La mejor forma de usar esta persona es apuntarlo a un problema y alejarse.

Programador Perfeccionista Obsesivo Compulsivo “¿Qué le queréis hacer qué a mi código?

Es el tipo al que no le importan las fechas límite o presupuestos, eso es insignificante cuando se compara con la forma de arte que es la programación. Cuando finalmente recibes el producto terminado no tendrás otra opción que someterte a la impresionante gloria y radiante belleza del código perfectamente formateado, no, perfectamente bello, que es tan eficiente que cualquier cosa que quisieras hacerle no haría más que difamar una obra maestra. Es el único calificado para trabajar en su código.

Programador anti-programación “Soy un programador, maldición. Yo no escribo código”

Su mundo tiene una simple verdad; escribir código es malo. Si tienes que escribir algo entonces lo estás haciendo mal. Alguien más ya ha hecho el trabajo así que simplemente utiliza su código. Te dirá cuánto mas rápida es su práctica de desarrollo, aunque le lleva tanto tiempo  o más que a los demás programadores. Pero cuando obtengas el proyecto serán solo 20 líneas de código actual y será muy fácil de leer. Puede no ser muy rápido, eficiente, o compatible hacia adelante, pero estará hecho con el menor esfuerzo requerido.

Programador a medias “¿Que quieres? Funciona, ¿no?

El tipo al que no podría importarle menos la calidad, eso es trabajo de otra persona. Logra las tareas que le piden hacer, rápido. Puede no gustarte su trabajo, los otros programadores lo odian, pero la gerencia y los clientes lo aman. Por más dolor que te cause en el futuro, él sin ayuda es quien mantiene las fechas límites así que no puedes burlarte (no importa cuánto quieras hacerlo).

Programador teórico “Bueno, eso es una posibilidad, pero en la práctica esto puede ser una alternativa mejor”

Este tipo está mas interesado en las opiniones que en lo que se debería hacer. Pasará el 80% del tiempo mirando en blanco su computadora pensando maneras de lograr una tarea, 15% de su tiempo quejándose de fechas límite irrazonables, 4% de su tiempo refinando las opciones, y 1% de su tiempo escribiendo código. Cuando recibas el trabajo final siempre será acompañado por la frase “Si tuviera más tiempo podría haber hecho esto de la manera correcta”.

DOS TIPOS DE PROGRAMADORES

Hay dos “clases” de programadores en el mundo del desarrollo del software: voy a llamarlos el 20% y el 80%. Los tipos del 20% son lo que se llamarían programadores “alfa” – los líderes, el tipo que lugares como Google y Fog Creek Software buscan contratar desesperadamente. Éstos tipos fueron los primeros en instalar Linux en su casa en los 90´s; la gente que escribe compiladores en Lisp y aprende Haskell los fines de semana “por diversión”; participan activamente en proyectos open source; siempre están al tanto de las últimas, y más frescas tendencias en la programación y herramientas.

Los tipos del 80% hacen el bulto de la industria del desarrollo de software. No son estúpidos; son meramente vocacionales. Fueron a la escuela, aprendieron suficiente Java/C#/C++, luego obtuvieron un trabajo escribiendo aplicaciones internas para bancos, gobiernos, firmas de viajes, firmas legales, etc. El mundo usualmente ni ve su software. Usan cualquier herramienta que les provee Microsoft — usualmente VS.NET si están en C++, o capaz un GUI IDE como Eclipse o IntelliJ para desarrollar en Java. Nunca han usado Linux, y no están muy interesados en él de todas formas. Muchos nunca han usado siquiera control de versiones. Si lo han hecho, es con cualquier herramienta entregada con la caja Microsoft (como SourceSafe), o alguna cosa antigua que le hayan entregado. Saben exactamente lo suficiente para hacer su trabajo, luego se van los fines de semana a casa y se olvidan de las computadoras.”

Quiero agradecer a el autor de picando código la traducción de estos textos.

Fuente | 5 Tipos de programadores – Picando Codigo | Los dos tipos de programadores – Picando Codigo