Mensaje al futuro
Autor: Linda Rising

Quizás sea porque la mayoría de ellos son personas inteligentes, pero en todos estos años he enseñado y trabajado codo a codo con programadores, parece que muchos piensan que debido a que los problemas con que estuvieron luchando eran difíciles, entonces las soluciones deben ser difíciles de entender y mantener para todos (quizás incluso para ellos mismos unos cuantos meses después de que el código haya sido escrito

Recuerdo un incidente con Joe, un estudiante en mi clase de estructuras de datos, quien había venido a mostrarme lo que él había escrito.

—¡Te apuesto que no puedes adivinar qué hace! —gritó. —Estás en lo correcto —estuve de acuerdo, sin gastar mucho tiempo en su ejemplo e imaginándome cómo conseguir un importante mensaje de esto—. Estoy segura de que has estado trabajando duro en esto. Me imagino, sin embargo, que no has olvidado nada importante. Dime, Joe, ¿tienes un hermano menor? —Sí. ¡Claro que sí! ¡Phil! Él está en tu clase de introducción. ¡Está aprendiendo a programar también! —anunció Joe orgullosamente. —Eso está muy bien —repliqué—. Me imagino que él pudo leer este código. —¡De ninguna manera! —dijo Joe—. ¡Esto es algo difícil! —Sólo supón —sugerí— que éste es un código de trabajo real y que en unos pocos años Phil será contratado para hacer una actualización de mantenimiento. ¿Qué has hecho con él?

Joe me miró parpadeando.

—Sabemos que Phil es realmente inteligente, ¿verdad? —Joe asintió—. Y odio decirlo, pero ¡soy bastante inteligente también! —Joe sonrió—. Así que si no puedo entender fácilmente lo que has hecho aquí y tu muy inteligente hermano menor probablemente se rompa la cabeza con esto, ¿qué significa eso de lo que has escrito?

Joe miró su código un poco diferentemente, me pareció.

—¿Qué tal esto? —sugerí con mi mejor voz de “soy tu amigable mentor”—. Piensa en cada línea de código que has escrito como un mensaje para alguien en el futuro, alguien que podría ser tu hermano menor. Pretende que estás explicándole a esta persona inteligente cómo resolver el difícil problema. ¿Es esto lo que te gustaría imaginar? Que un programador inteligente en el futuro vea tu código y diga: “¡Wow! ¡Esto es genial! Puedo entender perfectamente qué ha hecho aquí y estoy impresionado, qué elegante, no, espera, qué hermosa pieza de código es ésta. Voy a mostrárselo a los otros muchachos de mi equipo. ¡Ésta es una obra maestra!. Joe, ¿crees que podrías escribir un código que resuelva este difícil problema, pero sea tan bello que cantaría? Sí, igual que una melodía inquietante. Creo que cualquiera que pueda llegar con la muy difícil solución que tienes aquí también podría escribir algo hermoso. Hmmm… me pregunto si debería empezar a calificar la belleza. ¿Tú qué crees, Joe?

Joe tomó su trabajo y me miró, una pequeña sonrisa se asomó en su cara.

—Lo entiendo, prof, me retiro a hacer un mundo mejor para Phil. Gracias.

Traducción: Espartaco Palma

Leer contribución original