Per gli utenti o per gli autori?
Per l'autore, lo svantaggio principale è che il programma è più difficile da vendere "in scatola". Quando il codice sorgente è aperto, chiunque può prenderlo, costruire un programma e usarlo gratuitamente o distribuirlo gratuitamente. Anche se questo è proibito dal contratto di licenza, è più facile creare dai sorgenti che crackare i binari.
Quindi la maggior parte dei programmi open source sono gratuiti. Il software open source commerciale realizza un profitto fornendo servizi a pagamento (browser e altri software client), vendendo un prodotto aggiuntivo (driver), o vendendo il software open source a uno o più grandi utenti che pagano per la certificazione e la manutenzione (distribuzioni Linux commerciali).
Uno svantaggio significativo può essere la necessità di usare solo componenti aperti. Non si può aprire un programma che non si possiede completamente. Anche la vergogna per la qualità del tuo codice può giocare un ruolo.
Per gli utenti, lo svantaggio di usare software open source è che i tuoi concorrenti possono usare lo stesso software allo stesso prezzo. Possono anche prenderlo e migliorarlo e ottenere un vantaggio su di voi.
Questo è tutto ciò che mi viene in mente.
Certo, ci sono vantaggi. Gli autori ottengono segnalazioni di bug più qualificate e spesso "lavoro gratuito". Gli utenti ottengono più fiducia nella qualità del programma (che è già stato analizzato da molti esterni e può essere analizzato da voi o dal vostro esperto assunto), una più rapida correzione degli errori e la possibilità di influenzare l'aggiunta di nuove caratteristiche.
Gli svantaggi o i vantaggi superano in vari casi. Ecco perché abbiamo diversi tipi di software. C'è anche l'inerzia dell'industria.