Sempre più spesso si sente parlare di open source e (purtroppo) il termine open source è spesso associato al termine “gratuito”: sfatiamo questo mito.

Questa associazione comporta un pericoloso equivoco che, specie nel primo contatto con un nuovo cliente, può condizionare l’evoluzione del rapporto.

Nel corso di questi anni di attività è capitato, sia per esperienza diretta che dal confronto con colleghi ed altre agenzie di settore, che si presenti un cliente con un progetto e con una soluzione, non sempre ottimale, ma rigorosamente open source.
Il discorso prende immediatamente una strana piega: il potenziale cliente vuole “una mano” a sviluppare la sua idea con la certezza che il lavoro non costerà più di qualche spicciolo dato che il sistema è già lì, GRATIS.

L’open source è una filosofia che trova la più ampia spiegazione nella definizione della Free Software Foundation:

“Free software” is a matter of liberty, not price. To understand the concept, you should think of “free” as in “free speech”, not as in “free beer”.

Quando si parla di open source bisogna orientare il proprio pensiero verso il concetto di potenziale risparmio perché è fuori dubbio che alcuni costi andranno affrontati: parliamo dell’infrastruttura, della sicurezza, della manutenzione, della formazione, delle personalizzazioni grafiche, degli adattamenti per rendere il software adatto alle esigenze progettuali, ecc.

All’atto pratico si può tradurre in una (più o meno grande) opportunità di risparmio in quanto il software è già creato e verificato, la comunità di sviluppatori e di utilizzatori mette a disposizione altre parti di codice (plugin, moduli o come si voglia chiamarli) per implementare le funzionalità del software di base con una delle licenze open source, il codice libero permette di cambiare l’agenzia di supporto senza dover reimplementare il software, ecc.

Questi sono solo alcuni dei vantaggi dell’adottare un software libero.

Esistono anche degli svantaggi, magari non sempre evidenti ma questo articolo non ha lo scopo di giudicare o sminuire il software libero: esistono tantissime applicazioni a “codice aperto” di grande pregio e bisogna sempre valutare il software da utilizzare per uno specifico progetto.

Notate inoltre l’uso del termine “potenziale risparmio”.
Quando si valuta un software, tra i vari parametri, si valuta che questo sia più “vicino” possibile a soddisfare i requisiti progettuali attuali e il potenziale sviluppo del progetto.

Infatti non è per nulla raro che, alla fine, le esigenze del cliente si discostino così tanto dalle funzionalità di base dell’applicazione che il lavoro necessario per adattare il codice cresce a tal punto da risultare più oneroso di uno sviluppo da zero.

Per sviluppare un progetto con software open source è fondamentale considerare:

  • il progetto nel suo insieme
  • le potenzialità di crescita del progetto
  • un analista programmatore preparato e con un’ottima conoscenza delle diverse soluzioni open source
  • l’esperienza maturata dell’agenzia di supporto nel suo insieme

Una valutazione sbagliata o imprecisa significa spendere più del necessario, non ottenere le funzionalità desiderate o, peggio, dover riprogettare il software.

Questa è la mia esperienza e il mio consiglio, se avete da dire la vostra… forza con i commenti!