venerdì 15 febbraio 2013

il Tao della programmazione: Libro 4 - Scrittura

Geoffrey James, 1987
Libro 4 - Scrittura

Così parlò il maestro programmatore:
“Un programma scritto bene è il suo stesso paradiso; un programma scritto male è il suo stesso inferno.”

4.1

Un programma dovrebbe essere leggero e agile, le sue subroutine collegate come una collana di perle. Lo spirito e l'intento del the programma dovrebbe essere mantenuto attraverso tutto il suo codice. Non ci dovrebbe essere né troppo poco né troppo, né cicli che non servono né variabili inutili, né mancanza di struttura né eccessiva rigidità.

Un programma dovrebbe seguire la “Legge del Minor Stupore”. Cosa dice questa legge? Semplicemente che il programma dovrebbe sempre rispondere all'utente nel modo che lo stupisce di meno.

Un programma, non importa quanto complesso, dovrebbe comportarsi come una singola unità. Il programma dovrebbe essere diretto dalla logica interiore anziché dall'apparenza esteriore.

Se il programma manca di questi requisiti, sarà in uno stato di disordine e confusione. Il solo modo per correggerlo è riscrivere il programma.

4.2

Un novizio chiese al maestro: “Ho un programma che a volte gira e a volte no. Ho seguito le regole della programmazione, eppure sono totalmente sconcertato. Qual è la ragione per questo?”

Il maestro rispose: “Sei confuso perchè non capisci il Tao. Solo uno stupido si aspetta un comportamento razionale da altri umani. Perché tu te lo aspetti da una macchina costruita da umani? I computer simulano il determinismo; solo il Tao è perfetto.”

“Le regole della programmazione sono transitorie; solo il Tao è eterno. Quindi devi contemplare il Tao prima di ricevere l'illuminazione.”

“Ma come farò a sapere quando ho ricevuto l'illuminazione?” chiese il novizio.

“Allora il tuo programma girerà correttamente”, rispose il maestro.

4.3

Un maestro stava spiegando la natura del Tao a uno dei suoi allievi. ``Il Tao è racchiuso in tutto il software - non importa quanto sia insignificante'', disse il maestro.

“Il Tao è in un calcolatore tascabile?” chiese l'allievo.

“Lo è” fu la risposta.

“Il Tao è in un videogioco?” continuò l'allievo.

“E' anche in un videogioco” disse il maestro.

“E il Tao è nel DOS per un personal computer?”

Il maestro tossì e si spostò leggermente sulla sedia. “La lezione è finita per oggi” disse.

4.4

Il programmatore del Principe Wang stava scrivendo software. Le sue dita danzavano sulla tastiera. Il programma venne compilato senza errori, girando come una brezza gentile.

“Eccellente!” esclamò il Principe, “La tua tecnica è perfetta!”

“Tecnica?” disse il programmatore voltandosi dal suo terminale, “Ciò che seguo è il Tao - oltre tutte le tecniche! Quando avevo appena iniziato a programmare vedevo davanti a me l'intero problema in un'unica massa. Dopo tre anni non vedevo più questa massa. Invece, usavo le subroutine. Ma ora non vedo nulla. Il mio intero essere esiste in un vuoto informe. I miei sensi sono inattivi. Il mio spirito, libero di lavorare senza progetti, segue il suo stesso istinto. In breve, il mio programma si scrive da solo. Certo, a volte ci sono problemi difficili. Li vedo arrivare, rallento, osservo in silenzio. Poi modifico una singola linea di codice e le difficoltà svaniscono come nuvolette di fumo. Poi compilo il programma. Sto seduto immobile e lascio che la gioia del lavoro riempia il mio essere. Chiudo gli occhi per un momento e poi mi disconnetto.”

Il Principe Wang disse, “Fossero tutti così saggi, i miei programmatori!”

Il Tao della Programmazione: Libro 3

Nessun commento:

Posta un commento