Tristemente los programadores no competimos entre nosotros

Les recomiendo mucho este par de artículos de Steve Yegge, Being the Averagest y Practicing Programming. El señor ha trabajado en Amazon y Google, tiene una especie de mal que le hace escribir textos enormes pero muy interesantes.

Estos artículos hablan de como de viciada esta nuestra profesión y de la mediocridad con la que seguimos muchos después de salir de la universidad. El que sabe Java, solo le interesa aprender más Java. El que sabe Linux, no quiere usar nada más que Linux.

¿Cuantas veces no te has topado con algún programador que simplemente no tiene la mínima intención de seguir estudiando algo que este fuera de su trabajo? La mayoría llegamos a tener momentos en los que simplemente nos conformamos con solo concentrarnos en lo que nos piden en el trabajo e ignorar todo lo demás con el pretexto de que eso no está en nuestra área.

Uno de los problemas esta en que no sabemos como practicar correctamente. Es cierto que "la práctica hace al maestro", pero no solo tenemos que estar codificando todo el tiempo, eso solo hará que repitamos nuestros errores una y otra vez. Tiene mucha razón en que tenemos que tomar nuestra profesión como la ciencia que es. Leer de teoría de computo, leer sobre historia y aprender del trabajo de los demás.

"Práctica #4: Lee el código de alguien mas por 20 minutos. Para esta práctica alterna entre leer buen código y mal código; ambos son instructivos. Si no estas seguro de la diferencia, pregunta a un programador que respetes que te muestre ejemplos de cada uno. Muestra el código que lees a alguien más y ve lo que piensan de él."

Steve critica mucho a la falta de competencia en nuestra profesión, y creo firmemente que esta es la razón por la que muchos nos detenemos de hacer un esfuerzo mayor. Simplemente no hay una forma de medirnos unos respecto a otros. Por lo menos no directamente. Y ustedes saben que los nerds necesitamos ver estadísticas para estar motivados.

"Pero ¿cómo es que los programadores compiten? Simplemente no lo hacen. No en la manera que los jugadores de ajedrez o los golfistas por lo menos. ¿La razón? No puedes comparar programadores cuantitativamente, así que no puedes calcular una calificación o un ranking. [..] Los programadores profesionales simplemente no compiten los unos contra los otros."

Lecturas muy largas, pero recomendadas.