Los 5 tipos de Programadores

EL autor  Steven Benner y su post da algunos ejemplos de como que realmente se subdividen los diferentes tipos de programadores  : The 5 types of programmer (licencia CC).

 

 

 

 

 

Programador pato:

Este es el tipo que que  puede que el código no sea lindo, pero su codigo, ¡funciona!

Este tipo es la base de la  empresa. Cuando algo esta mal , él lo arreglará rápido y de manera que no volverá a romperse. realmente a el no le importa cómo se ve, la facilidad de uso, ni ningún otra de esas preocupaciones triviales, pero lo hará pasar, sin mucha tonterías que hagan perder el tiempo. La mejor forma de usar esta persona es apuntarlo a un problema y alejarse de el lo mas pronto posible

Creo que todos pasamos por el rol de programador “pato”. Cuando subimos algo a producción, y nos recordamos  a último momento de algo, o un usuario nos reporta un bug, generalmente entramos en el modo “ pato”, y lo importante es ir y solucionar el problema. Ya habrá tiempo de areglarlo con mas timpo (ese “más tarde” raras veces llega…), pero cuando el tiempo juega en contra, no queda otra opción que simplemente arreglar lo que está roto y hacerlo de una manera que quede bien pero desorganizado.

 

 

 

 

 

Programador perfeccionista obsesivo compulsivo:

¿Que le quieres  hacer a mi código?

Este es el personaje  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 ve todo como el gran sabe lo todo el gran perfecto  . Cuando finalmente recibes el producto terminado no tendrás otra oportunidad  que someterte a la excelente  gloria y radiante belleza del código que perfectamente hiciste , 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.

Conozco programadores  así, pero me suena algo  pedante y arrogante . Sí está bien considerar un arte el código, y estar conforme con el código que uno escribió siguiendo buenas prácticas y demás. Pero creo que el desorden obsesivo compulsivo y frustrante  puede traer más problemas que soluciones. De todas formas en el mercado laboral las fechas límite y presupuestos, por más que odiemos escuchar sobre ellas, generalmente tienen peso en el desarrollo, lo que la gente quiere es solucion y que funcione.


 

 

 

Programador anti-programación:

Soy un maldito programador , maldición. Yo no escribo código.

Su mundo como programador tiene la 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 que ya fue realizado y no te pongas las cosas dificiles . Te dirá  en cuánto tiempo puede hacer un proyecto y   es su práctica de desarrollo, aunque le lleve  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.

Es un perfil que realmente sale dificil .  Pero muchas veces reinventar la rueda nos dificulta  y demora el desarrollo, y puede haber algún framework que nos facilite la tarea. De todas formas está el extremo de los que usan un framework para TODO, y al final el programa es puro código espagueti de configuraciones que intentan integrar framework mas framework, y el producto final termina siendo un bloatware enorme, sin quien logre entender lo que hace sin tener que estudiar 30 frameworks antes osea un puro disparate un copiador de codigos realizados.

 

 

 

 

 

 

Programador a medias

¿Qué quieres? Funciona, ¿no? cual es la respuesta

El tipo al que no le mporta menos la calidad, eso es trabajo de otra persona. Logra las tareas que le piden hacer, lo mas rapido posible. Puede no gustarte su trabajo, los otros programadores lo quieren matar por tantos errores que comete , pero la gerencia y los clientes lo aman por ser la cara de los proyectos . 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).

Conozco a algún programador con esta forma . Normalmente tiene matices del programador “perfeccionista”, pero no por buenas prácticas, sino por el hecho de que deja funcionando las cosas, y eso está perfecto, pronto. Cuando tengas que mantener su código o arreglar algo que hizo, vas a acordarte de su familia entera… por el gran disparate que hizo. Aunque no tenga tanto conocimiento es el que da la cara y el que se muestra como el que sabe y hizo el proyecto.

 

 

 

 

Programador teórico

Es un caos o es una posibilidad, pero en la práctica es un total desastre

Este tipo está mas interesado en las opiniones que en lo que se debería hacer desde ya . 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 pensado que hacer porque tiene el timpo encima solo teorizando . 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”. pero es por estar teorizando que pierde tiempo.

Yo personalmente caigo poco en este perfil también. Cuando tengo la solucion a un problema doy mucgas vueltas cuestionándome si la solución es la más perfecta. A veces puedo pasar horas  ideando distintas soluciones y generalmente no llego a algo que me paresca “perfecto”, sino “suficientemente bueno”. Pero creo que eso es parte del supuesto que me queda muchísimo por aprender todavía, y siempre va a haber una “forma mejor de hacer las cosas” por aprender.

Tengo que admitir que últimamente he pasado por eso  haciendo más que nada . Mucho del trabajo que he hecho recientemente consiste más que nada en corregir errores y agregar pequeñas características a alguna funcionalidad ya hecha. Pero a su vez, al arreglar algo, ya encuentro algún código que puedo refactorizar o corregir, y generalmente caigo en la “pérdida de tiempo” del programador teórico hablo y hablo que hare esto y aquello . De todas formas al entrar en el loop “teórico”, tengo una condición de salida con uno de los programadores del equipo que insiste con “esto es suficientemente bueno para ahora, si volvemos a usarlo, lo mejoraremos más adelante”.

Creo que la mayoría tenemos distintas formas de programar,  y tu senor lector en que rango como programador te encuentras?

FUENTE: The 5 types of programmer


Anuncios

One thought on “Los 5 tipos de Programadores

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s