La progettazione software non è ingegneria
E’ una contraddizione in termini. L’ingegneria software non è di fatto ingegneria. E’ arte creativa, realizzata da artisti e artigiani, ma decisamente non da ingegneri.
Questa citazione, tratta da un’Intervista fatta a One More Thing, rispecchia totalmente il mio modo di vedere l’argomento dello sviluppo software.
Spesso si associa questa disciplina all’istinto matematico e alla logica, perdendo di vista la natura creativa e ispirazionale dietro alla progettazione e realizzazione di un prodotto software. Ci sono elementi tecnici e nozionistici alla base, certo, così come nella musica ci sono le regole fisiche e convenzionali che la regolano; così come nella pittura ci sono le tecniche che ne consentono la messa in pratica. Stessa cosa per la fotografia, la poesia, la danza.
L’espressione artistica ha sempre un sottosuolo tecnico. Quando però le nozioni sono acquisite, diventano parte di noi e lasciano spazio alla sola arte creativa. Tutti i tecnicismi scompaiono, diventato degli strumenti, il mezzo e mai il fine.
La cultura provinciale di questo Paese da sempre interpreta la laurea come un obbiettivo sociale, talvolta culturale e molto raramente individuale. A questo è da aggiungere un basso profilo in termini programmatici e didattici in termini di software.
Il risultato è, anno dopo anno, sfornate di “dottori” che il più delle volte offendono la natura creativa di questa disciplina. Applicazioni software senza design, interfacce tristi, intrise della loro logica estrema quanto inutile. Oltreoceano, perlomeno, il valore di un designer bravo è quanto quello di un ingegnere bravo, così come quello di un non laureato bravo. La chiave è “bravo”, non “ingegnere”. Il livello del software è alto grazie ai talenti, non alle qualifiche.
L’affermazione di Reekes, che italiano non è, ci riporta però alla natura, universale, del problema; alla necessità cioè di esiliare l’idea che lo sviluppo software è materia di ingegneria.
Un modesto consiglio alle nuove generazioni di sviluppatori software: meno matematica, più filosofia.