Libro 3 - Diseño


Versión para impresoraEnviar a un amigoVersión en PDF

Así habló el Maestro Programador:
``Cuando el programa está en pruebas, es demasiado tarde para hacer cambios en el diseño.''
3.1
Había una vez un hombre que fué a un salón de informática. Cada día que entraba, el hombre le decía al guardia de la puerta:
``Soy un gran ladrón, famoso por mis hazañas saqueando tiendas. Date por avisado, porque este salón no escapará indemne.''
Esta conversación preocupó enormemente al guardia, ya que en el interior del salón había millones de dólares en equipo informático, de modo que vigiló atentamente al hombre. Pero este se limitó a pasear de puesto en puesto, murmurando silenciosamente para si mismo.
Cuando el hombre se marchaba, el guardia lo llevó a un rincón y registró sus ropas, pero no encontró nada.
Al siguiente dia del salón, el hombre volvió y se mofó del guardia, diciendo: ``Ayer escapé con un gran botín, pero hoy será todavía mejor." Así que el guardia le vigiló aún más atentamente, pero sin resultado.
El último día de la féria, el guardia no pudo reprimir su curiosidad por mas tiempo.``Señor Ladrón,'' dijo, ''Estoy tan perplejo que no puedo vivir en paz. Por favor, ilumíneme. ¿ Que es lo que está robando ? ''
El hombre sonrió. ``Estoy robando ideas,'' le dijo.
3.2
Había una vez un maestro programador que escribía programas no estructurados. Un aprendiz de programador, buscando imitarle, empezó también a escribir programas sin estructurar. Cuando el aprendiz le pidió al maestro que evaluara sus progresos, el maestro le criticó por escribir programas no estructurados, diciendo, ``Lo que es adecuado para el maestro no lo es para el aprendiz. Tienes que entender el Tao antes de trascender la estructura.''
3.3
Había una vez un programador adjunto a la corte del Señór de la Guerra de Wu. El Señor preguntó un día al programador: ``¿ Que es mas sencillo de diseñar: un paquete de gestión o un sistema operativo ? ''
``Un sistema operativo,'' contestó el programador.
El Señor de la Guerra soltó una exclamación de incredulidad. ``Seguro que un paquete de gestión es trivial comparado con la complejidad de un sistema operativo, '' dijo.
``No ,'' dijo el programador, ``cuando se diseña un paquete de gestión el programador opera como un simple mediador entre gente con distintas ideas: como debe funcionar, como deben aparecer los listados, y como debe conformar con las leyes fiscales. Mientras que un sistema operativo no está limitado por apariencias externas. Cuando se diseña un sistema operativo, el programador busca la mas simple harmonía entre la máquina y las ideas. Por eso el sistema operativo es mas sencillo de diseñar.''
El Señor de la Guerra de Wu asintió y sonrió. ``Todo eso es bueno y bien está, pero ¿ cual de ellos es mas sencillo de depurar ?''
El programador no contestó.
3.4
Un gerente fué a ver al maestro programador y le mostró la documentación de los requisitos para una nueva aplicación. El gerente le preguntó al maestro: `` ¿ Cuanto tiempo llevaría diseñar este sistema si le asigno cinco programadores ? ''
``Llevaría un año,'' dijo enseguida el maestro.
``¡Pero necesitamos este sistema inmediatamente o incluso antes! Cuanto llevará si asigno diez programadores?''
El maestro programador frunció el ceño. ``En ese caso, llevará dos años.''
``¿ Y si le asigno cien programadores ?''
El maestro programador se encogió de hombros. ``Entonces el diseño no acabará nunca,'' dijo.