mercoledì 25 novembre 2009

if( opensource instanceof NonHaValore )

Questo non vuole essere un post-flame sull'OpenSource, e non ha nemmeno la pretesa di essere un post di evangelizzazione. Voglio solo enfatizzare un modello comune di pensiero, quasi un paradigma, che si è diffuso e che è difficile da sradicare in molti sviluppatori, designers, software house, ecc. E ovviamente è un paradigma che limita l'adozione dell'OpenSource.

Quando si parla di soluzioni OpenSource spesso si viene bloccati con affermazioni del tipo "ma se poi mi si rompe, o non va, io (il mio cliente, il cliente del mio cliente, l'amico del cliente del cliente, ...) a chi mi rivolgo?". Detta in altre parole: "vorrei tanto usare l'OpenSource, ma non ho le garanzie di una ditta commerciale alle spalle che mi possa offrire un servizio di assistenza".

E' vero!
Ma se parliamo di piccoli progetti OpenSource. Se parliamo di soluzioni di classi enterprise (qualche esempio: PostgreSQL, MySQL, Eclipse, OpenSolaris) allora le aziende alle spalle ci sono, i contratti di assistenza ci sono, i bugfix ci sono. Quello che manca, nella controparte, è la mentalità.
Le affermazioni della controparte possono essere riscritte con altre parole: "pago perché voglio la garanzia di un'assistenza futura".
Scusa ma cosa paghi?
Paghi il prodotto. Allora perché pagando il prodotto hai diritto all'assistenza futura? Perché paghi anche un contratto di assistenza, ma allora paghi il prodotto e l'assistenza.
E se l'azienda fallisce? Chi ti fornirà assistenza?
Ma le grosse aziende non falliscono! Molte volte questo è vero, ma molte volte le grosse aziende vengono inghiottite da aziende ancora piu' grosse (per fare un esempio si pensi al caso Oracle-MySQL). E in quei casi l'azienda potrebbe cambiare direzione, potrebbe smettere un prodotto considerato obsoleto o un doppione di un prodotto presente in entrambe le parti che partecipano alla fusione.
E l'interoperabilità? Beh, quella solitamente va a braccetto con l'OpenSource, perché se le applicazioni sono OpenSource allora gestire i dati e i flussi di dati risulta concretamente fattibile. Se le applicazioni sono closed-source allora tutto si complica, e spesso ci si deve affidare a programmi di import/export creati dall'azienda stessa o un suo partner. E questi non sempre hanno in mente le vostre esigenze, quindi siete spesso voi a dovervi piegare alle loro. Ma come, pagate il prodotto, pagate l'assistenza, e non ricevete nemmeno il classico servizio che anche un ristoratore vi offre (il cliente ha sempre ragione)?
Ma si sta scendendo nella polemica.

Quello che realmente secondo me deve essere enfatizzato è che la mentalità attuale porta a dire che se una cosa è OpenSource (o peggio ancora free) allora non ha valore. Se lo sviluppatore stesso non si fa pagare significa che non sa quanto valga, e comunque deve valere poco.
Io preferisco pensare che abbia talmente tanto valore da non essere misurabile, e che il vero business dietro all'OpenSource sia il servizio.

E metto in guardia i fanatici: non tutto deve rispettare le quattro libertà della licenza GNU GPL. Il Web 2.0 ha portato sistemi che non possono materialmente rispettare la freedom 0 (capacità di eseguire il programma). Ma questo non significa che si debba cedere sull'OpenSource!

Nessun commento: