Blog

Tuesday 09 November 2010

read/add comments (5)

Per la mia tesi ho scritto del codice di cui vado piuttosto fiero: non dico che sia perfetto, ma è chiaro e ben strutturato; inoltre, i duecento e passa test che ho scritto mi rendono ragionevolmente certo che faccia quello che deve fare.

Ora, il codice in questione, pur non essendo nulla di particolarmente complesso, non è nemmeno propriamente banale; è un bel po’ di codice che fa un bel po’ di cose.

Per garantire che il tutto rimanga sempre comprensibile, ho diviso ogni procedura in procedure più piccole e specifiche, e così via fino ad ottenere una serie di minuscole unità computazionali – la più piccola conta una sola riga di codice, la più grande una trentina – che prese da sole fanno ben poco, ma se unite nella maniera corretta danno vita ad un sistema completo.

Adesso mi viene chiesto di spiegare il tutto; e se mai avessi avuto bisogno di una dimostrazione del fatto che la programmazione è una forma d’arte, senza dubbio l’avrei trovata.

Spiegare riga per riga il codice fa apparire goffo ciò che è elegante, complesso ciò che è semplice; nello stesso modo in cui elencare parola per parola una poesia può trasformare un capolavoro senza tempo in uno sterile elenco, spiegare riga per riga il codice ne uccide la bellezza.

Chi leggerà la mia tesi arriverà all’ultima pagina e si convincerà di aver compreso il comportamento di un complesso sistema informatico; quello che probabilmente non riuscirà a vedere sarà l’impegno e la passione che ho messo nel rendere quello stesso sistema il più lineare e chiaro possibile – non l’ennesima casella a cui fare la spunta sulla strada che porta all’ambito pezzo di carta, ma una piccola opera d’arte di cui sentirsi orgogliosi.

Comments

Ti capisco tantissimo, dover spiegare del codice ben fatto riga per riga è frustrante e quasi completamente inutile.

Il punto è: chi leggerà la tua tesi?

Touché.

Alfredo Touché? Non conosco.

Per forza non lo conosci, è il mio relatore.