Mantenimiento

Así habló el maestro Desarrollador:
«Aunque un programa sólo tenga tres líneas de largo, algún día tendrá que ser mantenido.»

5.1
Una puerta bien usada no necesita aceite en sus bisagras. Una corriente que fluye veloz no se estanca. Ni el sonido ni los pensamientos pueden viajar a través de un vacío. El software se pudre si no se usa.
Esos son grandes misterios.

5.2
Un gerente le preguntó a un Desarrollador cuánto tardaría en terminar el programa en el cual estaba trabajando. «Lo terminaré mañana», respondió el Desarrollador.
«Creo que no estás siendo realista,» dijo el gerente, «¿En realidad, cuánto tiempo tardará?»
El Desarrollador pensó por un momento. «Tengo algunas características que desearía agregar.
Esto tomará al menos dos semanas», finalmente dijo.
«Aún esto es esperar mucho,» insistió el gerente, «Estaré satisfecho si tu simplemente me avisas cuando el programa esté completo.»
El Desarrollador aceptó esto.
Varios años pasaron, el gerente se retiró. En el camino a su comida de despedida, descubrió al Desarrollador dormido en su terminal. Había estado programando toda la noche.

5.3
Un Desarrollador novicio fue una vez asignado para codificar un paquete financiero sencillo.
El novicio trabajó furiosamente por muchos días, pero cuando su maestro revisó su programa, descubrió que contenía un editor de pantalla, un conjunto de rutinas generales gráficas, y una interface con inteligencia artificial, pero ni la más remota mención de nada financiero.
Cuándo el maestro le preguntó acerca de esto, el novicio se indignó. «No seas tan impaciente, » dijo, «ya pondré esa cosa financiera eventualmente.»

5.4
¿Acaso un buen granjero abandona la cosecha que ha plantado?
¿Acaso un buen maestro pasa por alto aún al más humilde estudiante?
¿Acaso un buen padre permite que uno sólo de sus hijos se muera de hambre?
¿Acaso un buen Desarrollador se rehúsa a mantener su código?