Los 5 mitos más populares sobre los programadores “viejos”

[Fuente: http://www.lessonsoffailure.com/developers/pervasive-myths-older-software-developers]

Recientemente celebré mi 40 cumpleaños. Un amigo bromeo: “Ei, parece que ya eres demasiado viejo para programar ”. En ese momento me hizo gracia, pero después me hizo pensar. La discriminación por edad no es nada de lo que hay que bromear en ese campo.Los programadores de COBOL tienen este problema cada año a medida que programadores Java como yo están ascendiendo profesionalmente. En esos momentos nos reíamos de los que programan en código nativo que es inflexible a las nuevas tecnologías.

Ahora la broma me ha tocado a mi. Y si no me ha tocado ya , será pronto. Quizás ya no tenemos ganas de reirnos. Asi pensaba yo. Nuestro campo esta maduro en el sentido de la discriminación por edad en muchos sentidos. Valoramos las nuevas tecnologías, la habilidad de adaptarse rápido a ellas, trabajar infinitas horas extras para sacar lo antes posible los productos- todas estas cosas son atribuidas a trabajadores jovencitos. He mencionado que a los jovencitos son más baratos? Mucho más baratos.

Sin embargo las tendencias de los titulados en ciencias de la información no pintan muy bien en cuanto a tener un buena hornada de jóvenes y baratos programadores a disposición de los managers indefinidamente:

Computer Science Degree Trends 1996-2008

De hecho, todos los datos apuntan a una conclusion: los titulados en IT ha ido decreciendo o se han quedado en lo mismo en la última década.Además la situación para contratarlos tampoco es muy halagueña: http://www.codinghorror.com/blog/2010/02/the-nonprogramming-programmer.html

Si estas pensando en eliminar “la materia gris” de tu equipo de desarrollo, piénsatelo dos veces. Hay muchos mitos sobre programadores “viejos” que aún viven en el mundo IT y que en principio los ponen en desventaja en este campo. Todos estos mitos no tienen ninguna validez y vamos a desmontarlos uno por uno:

MITO 1Los programadores “viejos” son más caros que los jóvenes, con lo cual los jovencitos son más deseables

REALIDAD: La verdadera razón por la cual los programadores experimentados son etiquetados como caros es debido a que los salarios son el gasto nº 1 de cualquier compañía. El hecho es desde luego que los más jóvenes son más baratos. Pero, mientras inexperimentados, jóvenes programadores pueden ahorrarte algunos ceros en tu presupuesto inicialmente, a la larga te va a salir caro si en tu equipo de trabajo solo tienes jóvenes. Los programadores jóvenes aún no han sufrido las incidencias de todo tipo que puede tener un proyecto software. Simplemente porque aún no ha pasado tiempo suficiente. Y adivina quién va gastarse el dinero en que aprendan? Tú. Piensa cuánto dinero te va a costar no llegar a tiempo a las fechas de entrega y a realizar proyectos con defectos? Piénsalo dos veces.

Si , los programadores mayores tienen salarios más altos que los jóvenes. Pero qué es exactamente por lo que tú pagas?. Con un programador experimentado , estás pagando por toda la experiencia que tiene en sus proyectos pasados tanto exitosos como los que salieron mal. Las lecciones que se aprenden en los proyectos que tienen incidencias son caras , tu decides si quieres pagar por ellos como manager o puedes contratar un programador experimentado, que es como tener un seguro contra los errores más típicos en la gestión de un proyecto y de un desarrollo software y que tú no vas a sufrir. Eso significa que tu cuenta anual de resultados tiene mejor pinta porque has decidido contratar gente que sabe cómo hacer el trabajo correctamente.

MITO 2:  Los programadores “viejos” son menos flexibles y menos capaces de aprender nuevas tecnologías debido a todo el conocimiento que ya acumulan

REALIDAD: Es precisamente por su experiencia pasada, que son más los programadores experimentados que pueden migrar a nuevas tecnologías, frameworks, y sistemas más rápidamente y en más profundidad. Por ejemplo, si aprender a manejar un Framework GUI en C/C++, tienes un modelo mental sobre lo que es el intercambio de mensajes, la gestión de eventos, patrones MVC para diseñar el sistema y separar presentación de la lógica de negocio.

La primera vez que se aprender un Framework GUI, además de las sintaxis, los ejemplos, y las particularidades de la librería, también necesitas aprender términos conceptuales. Y después de dos, tres o más frameworks GUI, te das cuenta que todos tienen muchas similitudes más allá de la sintaxis. Pueden incluso darte cuenta que los frameworks más nuevos han superado limitaciones sustanciales que tú en su día tuviste que sortear con complicadas codificaciones. Estos puntos de vista no los tiene alguien nuevo en el Framework. Y esos puntos pueden realmente incrementar tu productividad de una forma que no puedes directamente medir.

MITO 3Los programadores “viejos” son menos hábiles para realizar tareas duras en desarrollo de software (vease: largas jornadas, horarios intempestivos) por sus compromisos familiares y otras obligaciones que los jóvenes no tienen.

REALIDAD: Creo que sería más exacto afirmar que los programadores experimentados están menos dispuestos a trabajar largas y dolorosas jornadas porque ellos ya se las saben todas en como la empresa intenta ampliar los límites productivos haciendo que trabajes horas extras. A esto se le llama acabar quemado(burnout), apuesto lo que sea que nadie de los que ya ha pasado por esto en el pasado esta dispuesto a pasar por ello otra vez.

Con todo lo dicho anteriormente, el argumento de los “compromisos familiares” es falaz. Los ingenieros-programadores experimentados , de alta calidad son bastante buenos en gestionar el tiempo, y los que tienen familia están incluso más motivados en acabar las tareas en el tiempo justo.Puede que tengan quew recoger al niñodel cole , pero ellos aprovechan el tiempo al máximo y sus 40 horas semanales están enfocados en su trabajo. Los buenos ingenieros de software con familias se deben convertir en grandes gestores de tiempo por las tareas que tienen ya en su vida privada.

MITO 4: Los programadores “viejos” son menos ágiles mentalmente que los jovenes

REALIDAD: La edad afecta al cerebro y eso es algo demostrado que los trabajadores mayores piensan más lentamente que los jovenes.Pero la agilidad mental es solo una parte de la ecuación.Pensar más rápido no es siempre mejor . Que hay que decir en cuanto a su capacidad de enjuiciamiento? Hay un refrán que dice:

Los buenos juicios vienen de la experiencia, la esperiencia viene del mal juicio.

La pérdida de agilidad mental es una pobre excusa para no contratar a un programador “viejo” teniendo en cuenta lo que ellos ya han visto , hecho , y vivido en muchos proyectos de éxito y de fracasos a los largo de su vida. Los programadores experimentados tienen toneladas de proyectos pasados para recordar y ayudar en la toma de decisiones. Los programadores jóvenes tienen nuevas ideas que también es importante, peor a menudo esas ideas no han pasado pruebas y no están demostradas. Tener ambas perspectivas en los equipos de trabajo es el verdadero valor.

MITO 5: Los programadores “viejos” están más hastiados y son más cínicos y por tanto, menos deseables en el lugar de trabajo que los jóvenes. Los jóvenes tienen más entusiasmo que los mayores.

REALIDAD: Este mito probablemente lo ha propagado alguien a quien no le gusta que se les critiquen sus ideas y que está rodeado de gente que ha tenido queaguantar un gran número de decisiones equivocadas una y otra vez. Los programadores experimentados huelen la mierda a distancia. Ellos no se van a crear historias del tipo de que el producto no esta siendo bien recibido por el Mercado , porque ellos han estado tratanto con clients durante años y saben que lo que túquieres es ponerte medallitas a su costa. Ellos no toleran trabajar con gestores que les piden trabajar 80 horas semanales porque el cliente quiera el software el mes próximo cuando ellos te avisaron que para completar el proyecto como se acordó necesitas 2 meses más.

Los programadores jóvenes no se han visto en estas situaciones tan frecuentemente y por lo tanto, tienen menos resistencia a las malas practicas en la gestión de proyectos. Si quieres tener un buen equipo y fabricar buenos productos software, tener gente que pueda decirte cuando estás tomando malas decisiones te ahorrará mucho tiempo y dinero. Pero esto sólo en el caso de que admitas que tú no tienes todo el conocimiento.

Y del entusiasmo ni hablemos. Si el entusiasmo decae con la edad, dime si Donald Knuth , Ward Cunningham, Bill Joy, Bill Gates y cientos de otros que han pasado labarrera de los 40 tienen poco entusiasmo en este campo debido a la edad. Pues no. Pasión es passion. Si la tienes en tus 40 , es que realmente tu amas esta profesión. Y esa clase de amor no va a decaer con la edad. Los programadores jovenes aún están encontrando su lugar en el mundo y pueden tener cortos periodosde passion, y aún pueden dejarla por los obstáculos y los desafios que este campo te pone en el camino.

————-

Concluyendo, pongamos las cosas claras:

Joven no es necesariamente malo y Viejo no es necesariamente bueno.

Y lo más importante , cualquiera que no sepa programar un hola mundo no debe ser contratado como programador , independientemente de la edad que tenga.Intenta mantener tus equipos de trabajo como una mezcla de jovenes y veteranos porque donde hay diversidad, tiene lugar el aprendizaje. Asi que no mires mal al delpelo gris que tienes en tu departamento, liberate de prejuicios y mira si él puede servirte más de lo que crees.

Algún dia el del pelo gris puedes ser tú.