Home
Sull’arte del programmare

26 Novembre 2012

Sull’arte del programmare

di

Per alcuni, l'ultimo aspetto da coltivare per una fortunata carriera da programmatore può essere proprio la programmazione.

Ammettiamolo, scrivere software può essere un lavoro estremamente noioso. Se avete la sfortuna di lavorare in una di quelle aziende che si occupano di fornire programmatori in outsourcing un tanto al chilo, e magari ci siete finiti subito dopo l’università, con tutta probabilità vi troverete a fare un lavoro ripetitivo di cui vi disamorerete molto presto. Ma non deve andare necessariamente così.

Donald Knuth, uno dei padri dell’informatica, scrisse:

Programmare i computer è un’arte, perché applica al mondo la conoscenza accumulata, richiede capacità e ingegno e soprattutto produce oggetti di bellezza. Un programmatore che nel proprio subconscio si veda come un artista apprezzerà ciò che fa e lo farà meglio.

Proviamo a fare nostro il consiglio di Knuth e cerchiamo di capire come sentirci più artisti e meno operai da catena di montaggio.

Se nel Rinascimento era la bottega il fulcro della formazione dei nuovi artisti, social media e software open source ne rappresentano la versione moderna. Seguire su Twitter segnalazioni, dubbi, problemi e suggerimenti di artisti della programmazione come Kent Beck, Martin Fowler e Robert Martin – giusto per citarne alcuni – può fornirvi i giusti stimoli per migliorare la vostra tecnica. Il vostro maestro di bottega virtuale è là fuori: dovete solo cercarlo.

Il software open source vi offre inoltre la possibilità di partecipare concretamente alla vita di un software: cercate su GitHub un progetto che vi interessa, provate a capirne il codice e a dare il vostro contributo al progetto partendo dalla risoluzione dei bug più semplici. Le soddisfazioni e le occasioni di imparare cose nuove non mancheranno. Se rimanete confinati nella stretta cerchia dei colleghi le possibilità di migliorarvi sono decisamente minori.

Secondo il filosofo Theodor Adorno, uno dei compiti dell’artista è introdurre caos nell’ordine, essere portatore di un approccio diverso e in un certo senso sovversivo. Provate a ripensare senza preconcetti a ciò che come sviluppatori vi trovate a gestire quotidianamente: il mondo dell’informatica è in continuo fermento e con tutta probabilità oggi avete a disposizione nuovi strumenti per meglio affrontare vecchi problemi. Perché continuare a usare Cvs o Java5 quando ci sono Git, Java7 o Scala? Cavalcate l’onda del cambiamento: studiate e appropriatevi delle nuove tecnologie, fatevi promotori della loro introduzione. Solo così vi sentirete (artisticamente) vivi.

Un ultimo suggerimento: imparate a comunicare la vostra passione per la programmazione.

Il riferimento in questo ambito è Why the lucky stiff (la cui parabola artistica meriterebbe un post a parte), che ha scritto uno dei libri più belli sulla programmazione e lo ha fatto da vero artista, utilizzando la contaminazione di genere e innestando la forma del fumetto in quella del manuale di informatica. Scrivere un intero libro è probabilmente un obiettivo ambizioso, ma pubblicare un blog o semplicemente rispondere a una domanda su Stack Overflow sono già un ottimo inizio.

Nella nostra quotidianità veniamo a contatto con decine di software differenti, alcuni dei quali offrono un’esperienza d’uso talmente negativa che si percepisce palesemente l’incuria di chi li ha programmati. Altri invece ci piacciono così tanto che sono diventati parte della nostra vita, cambiandola e condizionandola. In questi casi non posso non pensare che chi li ha programmati un po’ artista effettivamente era.

L'autore

  • Andrea C. Granata
    Andrea C. Granata vanta oltre 25 anni di esperienza nel mondo dello sviluppo software. Ha fondato la sua prima startup nel 1996 e nel corso degli anni si è specializzato in soluzioni per l'editoria e il settore bancario. Nel 2015 è entrato a far parte di Banca Mediolanum come Head of DevOps, ruolo che oggi ricopre per LuminorGroup.

Vuoi rimanere aggiornato?
Iscriviti alla nostra newletter

Novità, promozioni e approfondimenti per imparare sempre qualcosa di nuovo

Gli argomenti che mi interessano:
Iscrivendomi dichiaro di aver preso visione dell’Informativa fornita ai sensi dell'art. 13 e 14 del Regolamento Europeo EU 679/2016.