Rendere disponibile il codice sorgente influisce sulla tua capacità di generare entrate?


22

Stiamo lavorando su un framework .Net che alla fine equivale a una singola DLL. Intendiamo addebitare un costo per l'uso commerciale del framework, ma lo rendiamo gratuito per l'uso open source / non commerciale. Il piano approssimativo al momento è quello di amministrarlo attraverso una qualche forma di licenza abbastanza semplice che verrà emessa sia che tu lo usi gratuitamente o pagando.

Stiamo discutendo se rendere disponibile il codice sorgente. È nostra percezione (e nostra preferenza) che è molto più attraente usare qualcosa in cui si ha accesso al codice sorgente.

Sono interessato a sapere se la gente pensa che rendere disponibile il codice sorgente danneggerà la nostra capacità di fare soldi dal framework, o se incoraggerà un maggiore utilizzo e un numero sufficiente di persone "buone" provvederà a pagare per la licenza corretta se lo si utilizza commercialmente.

La mia sensazione è che, in generale, le operazioni commerciali non si preoccupino sul fronte delle licenze e quindi rendere disponibile il codice sorgente incoraggerà solo l'uso e quindi alla fine genererà più entrate, ma sarei interessato ad altre opinioni / esperienze.


2
Certo che colpisce. Se altre persone non rendessero disponibile il loro codice sorgente (degli strumenti che utilizziamo), faremmo meno entrate!
P:

Risposte:


14

Dovresti assolutamente rendere disponibile la fonte. Che sia liberamente disponibile o disponibile solo per coloro che acquistano una licenza, dipende da te, ma non utilizzerei mai una libreria di terze parti senza fonte. A differenza di Robert Harvey, enfaticamente non "so che probabilmente non ne avrò mai bisogno". Qualsiasi libreria di complessità non banale ha quasi sicuramente dei bug lì dentro da qualche parte, ha funzionalità mancanti o mal implementate che potrebbero beneficiare della personalizzazione / estensione, o molto probabilmente entrambe. (Sì, anche il tuo.) Ho usato molte librerie diverse, di persone diverse e scritte in lingue diverse, e non riesco a pensare a nessuna delle quali non ho mai avuto bisogno della fonte in un punto o nell'altro.

Se vuoi farlo nel modo giusto, aggiungi una disposizione nella licenza come quella di GPL e MPL, che se apportano modifiche al codice e finiscono per pubblicare un prodotto che lo utilizza, devono pubblicare le modifiche apportate. In questo modo ottieni correzioni di bug e funzionalità (potenziali) gratuite semplicemente lasciando che altre persone usino il tuo codice.


10

Se si tratta di un framework .NET gestito, le persone possono utilizzare Reflector per esaminare comunque il codice sorgente.

Ho visto un certo numero di aziende che sembrano funzionare con successo questo modello di doppia licenza. Avere accesso al codice sorgente non significa necessariamente che le persone ruberanno il codice. Personalmente, preferirei avere una licenza adeguata, come qualsiasi altra società per cui abbia mai lavorato. Ma avere accesso al codice sorgente può incoraggiare le persone a provare il tuo prodotto.

C'è qualcosa nell'avere accesso alla fonte che sembra una coperta di sicurezza; sai che probabilmente non ne avrai mai bisogno, ma se trascorri molte ore di lavoro impegnandoti in una biblioteca di terze parti, è bene sapere che puoi scavare nel codice e sistemare qualcosa se mai ti imbatti in un legame, o l'autore originale del codice viene lanciato sotto un bus.


2
Grazie per i tuoi pensieri: per la maggior parte sono totalmente d'accordo, ma penso che ci sia una piccola differenza tra l'uso di Reflector per guardare il codice sorgente e poter clonare un repository su GitHub e compilarlo. So che potresti volere qualcosa di compilabile tramite il percorso di decompilazione se lo desideri davvero, ma la maggior parte delle persone probabilmente non si preoccuperebbe.
dwynne,

Reflector ha un componente aggiuntivo che scaricherà l'assembly in file di classe. Credo che creerà anche un file di soluzione per te e aggiungerà le usingdichiarazioni necessarie .
Robert Harvey,

4
..ma Reflector non è in grado di dedurre nomi di variabili valide, scrivere commenti o de-offuscare.
JBR Wilkinson,

Se si ha accesso al codice sorgente, non è necessario passare attraverso un servizio di deposito a garanzia del codice sorgente per assicurarsi che il fornitore non sia più attivo.
JBR Wilkinson,

4

Personalmente penso che il miglior esempio di ciò sia il modo in cui aziende come Telerik e altri fanno le loro licenze.

Paghi la licenza, ottieni il codice sorgente ed è per il tuo uso.

Se lo fai con un metodo in cui può essere disponibile gratuitamente per open source / non commerciale, con la fonte, penso che sarà difficile per te far venire avanti la gente e pagarla.


2

In generale le persone che pagheranno per il tuo strumento lo pagheranno comunque, e le persone che lo ruberanno lo ruberanno sempre.

Inoltre, è solo un buon senso degli affari (pubblicità) regalare il tuo prodotto a persone che non sono il tuo pubblico di destinazione, perché o conoscono (o conosceranno) qualcuno che è nel tuo pubblico di destinazione, o saranno lì stesse.

Perché pensi che FogBugz abbia la licenza Student and Startup? Stanno fornendo uno strumento prezioso gratuitamente perché non costa loro praticamente nulla e quando arrivi al punto in cui stai facendo abbastanza soldi per pagare $ 20-25 / mese per sviluppatore (diamine, è al massimo un'ora di sviluppo tempo a salari competitivi qui in Arkansas), allora sarai perfettamente felice di scrivere quel check out su FogCreek.

Non ho visto nessuno studio, ma scommetterei sicuramente il mio software su di esso.


1

Fare un $ da qualcosa in cui viene data la fonte è un po 'difficile.

L'idea di vendere licenze che includono la fonte è più sensata, soprattutto nel contesto di questa libreria. Le persone dovranno infiltrarsi negli interni di tanto in tanto e questo deve essere facile da fare per loro.

Stai mettendo tutto, la fonte e tutto e aspettandoti entrate? Potrebbero ottenere alcuni che pagano, ma ci sarà un gran numero che non lo farà.


1
Prendo atto di alcuni voti negativi. Se decidi di votare, che ne dici di PERCHÉ?
quick_now

0

Se stai realizzando un qualche tipo di piattaforma che può essere espansa in misura migliore attraverso il codice open source rispetto a farlo da solo e caricando, le app che crei e vendi sulla base della piattaforma potrebbero essere migliori nel lungo periodo. Immagino che la chiave sia non dare via tutto il codice; soprattutto la parte che ti differenzia fino al punto di poterlo vendere.

Non è quello che hanno fatto le persone coinvolte in Ruby on Rails?


0

Penso che avere la fonte possa arrivare a due livelli.

  1. Sorgente per le classi che hai ma non in uno stato in cui è facile ricostruire il binario distribuito. In altre parole, puoi vedere ma non toccare.

  2. Fonte completa in una forma che può essere facilmente ricostruita.

Come sviluppatore preferisco fortemente quest'ultimo, in quanto consente di risolvere un problema a caldo. Potrebbe essere il fattore decisivo quando viene scelta tra due librerie!

La cosa per proteggere la tua fonte deve essere la licenza. Lascia che la versione Open Source sia GPL e consenti alle aziende di acquistare una versione non GPL da includere nei loro prodotti commerciali non GPL.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.