La mise à disposition du code source affecte-t-elle votre capacité à générer des revenus?


22

Nous travaillons sur un framework .Net qui équivaut finalement à une seule DLL. Nous avons l'intention de facturer l'utilisation commerciale du cadre, mais de le rendre gratuit pour une utilisation open source / non commerciale. Le plan approximatif pour le moment est d'administrer cela par le biais d'une forme de licence assez simple qui sera émise, que vous l'utilisiez gratuitement ou payant.

Nous discutons de l'opportunité de rendre le code source disponible. C'est notre perception (et notre préférence) qu'il est beaucoup plus attrayant d'utiliser quelque chose où vous avez accès au code source.

Je suis intéressé à savoir si les gens pensent que la mise à disposition du code source nuira à notre capacité à gagner de l'argent à partir du framework, ou si cela encouragera plus d'utilisation et suffisamment de «bonnes» personnes organiseront le paiement de la bonne licence si vous l'utilisez commercialement.

Mon sentiment est que, généralement, les opérations commerciales ne plaisantent pas sur le front des licences et donc rendre le code source disponible ne fera qu'encourager l'utilisation et donc générer plus de revenus, mais je serais intéressé par les autres points de vue / expériences.


2
Bien sûr, cela affecte. Si d'autres personnes ne rendaient pas leur code source disponible (des outils que nous utilisons), nous gagnerions moins de revenus!
P Shved

Réponses:


14

Vous devez absolument rendre la source disponible. Que ce soit librement disponible ou uniquement disponible pour ceux qui achètent une licence, c'est à vous de décider, mais je n'utiliserais jamais une bibliothèque tierce sans source. Contrairement à Robert Harvey, je ne sais absolument pas "je sais que je n'en aurai probablement jamais besoin". Toute bibliothèque de complexité non triviale est presque certaine d'avoir des bogues quelque part, des fonctionnalités manquantes ou mal implémentées qui pourraient bénéficier de la personnalisation / extension, ou très probablement les deux. (Oui, même la vôtre.) J'ai utilisé beaucoup de bibliothèques différentes, de personnes différentes et écrites dans différentes langues, et je ne peux penser à aucune dont je n'ai jamais eu besoin de la source à un moment ou à un autre.

Si vous voulez le faire correctement, ajoutez une disposition dans la licence comme ce que la GPL et la MPL ont, que s'ils modifient le code et finissent par publier un produit en l'utilisant, ils doivent publier les modifications qu'ils ont apportées. De cette façon, vous obtenez des corrections de bugs et des fonctionnalités (potentielles) gratuites simplement en laissant d'autres personnes utiliser votre code.


10

S'il s'agit d'un framework .NET géré, les utilisateurs peuvent utiliser Reflector pour consulter le code source de toute façon.

J'ai vu un certain nombre d'entreprises qui semblent réussir ce modèle de double licence. Avoir accès au code source ne signifie pas nécessairement que les gens vont voler le code. Personnellement, je préfère avoir une licence appropriée, comme toute entreprise pour laquelle j'ai déjà travaillé. Mais avoir accès au code source peut encourager les gens à essayer votre produit.

Il y a quelque chose à avoir accès à la source qui ressemble à une couverture de sécurité; vous savez que vous n'en aurez probablement jamais besoin, mais si vous dépensez de nombreuses heures-homme à vous engager dans une bibliothèque tierce, il est bon de savoir que vous pouvez creuser dans le code et corriger quelque chose si vous vous retrouvez dans une liaison, ou l'auteur original du code est jeté sous un bus.


2
Merci pour vos réflexions - pour la plupart, je suis totalement d'accord, mais je pense qu'il y a une différence mineure entre l'utilisation de Reflector pour regarder le code source et la possibilité de cloner un dépôt sur GitHub et de le compiler. Je sais que vous pourriez arriver à quelque chose de compilable via la route de décompilation si vous le vouliez vraiment, mais la plupart des gens ne s'en préoccuperaient probablement pas.
dwynne

Reflector a un complément qui videra l'assembly dans des fichiers de classe. Je pense qu'il va même créer un fichier de solution pour vous et ajouter les usingdéclarations nécessaires .
Robert Harvey

4
..mais Reflector ne peut pas déduire de bons noms de variables, écrire des commentaires ou désobscurcir.
JBRWilkinson

Si vous avez accès au code source, il n'est pas nécessaire de passer par un service d'engagement de code source pour vous assurer que le fournisseur ne ferait pas faillite.
JBRWilkinson

4

Personnellement, je pense que le meilleur exemple de cela est la façon dont des sociétés telles que Telerik et d'autres font leurs licences.

Vous payez pour la licence, vous obtenez le code source et c'est pour votre usage.

Si vous le faites selon une méthode où il peut être disponible gratuitement pour une utilisation open source / non commerciale, avec la source, je pense qu'il sera difficile pour vous d'amener les gens à se manifester et à payer pour cela.


2

En général, les gens qui paieront votre outil le paieront de toute façon, et les gens qui le voleront le voleront toujours.

De plus, c'est juste un bon sens commercial (publicité) de donner votre produit à des gens qui ne sont pas votre public cible, car ils connaissent (ou connaîtront) quelqu'un qui fait partie de votre public cible, ou sera là eux-mêmes.

Pourquoi pensez-vous que FogBugz a la licence Student and Startup? Ils fournissent gratuitement un outil précieux car il ne leur coûte relativement rien et lorsque vous arrivez au point où vous gagnez suffisamment d'argent pour payer les 20-25 $ / mois par développeur (diable, c'est au plus une heure de développeur temps à des salaires compétitifs ici en Arkansas) alors vous serez parfaitement heureux d'écrire ce chèque à FogCreek.

Je n'ai vu aucune étude, mais je parierais certainement mon propre logiciel dessus.


1

Faire un $ à partir de quelque chose dont la source est donnée est un peu difficile.

L'idée de vendre des licences qui incluent la source est plus sensée, en particulier dans le contexte où il s'agit d'une bibliothèque. Les gens devront fouiller les internes de temps en temps et cela doit être facile pour eux.

Tout mettre en place, la source et tout, et espérer des revenus? Pourrait en avoir quelques-uns qui paient, mais il y en aura un grand nombre qui ne le feront pas.


1
Je note quelques downvotes. Si vous dévalorisez, pourquoi ne pas dire POURQUOI?
quick_now

0

Si vous créez un type de plate-forme qui peut être étendu à un meilleur degré grâce au code open source que de le faire vous-même et de le charger, les applications que vous créez et vendez sur la base de la plate-forme peuvent être mieux à long terme. Je suppose que la clé n'est pas de donner tout le code; surtout la partie qui vous différencie au point de pouvoir la vendre.

N'est-ce pas ce que les personnes impliquées avec Ruby on Rails ont fait?


0

Je pense qu'avoir une source peut venir à deux niveaux.

  1. Source pour les classes que vous avez mais pas dans un état où il est facile de reconstruire le binaire distribué. En d'autres termes, vous pouvez voir mais pas toucher.

  2. Source complète sous une forme qui peut être facilement reconstruite.

En tant que développeur, je préfère fortement ce dernier, car il vous permet de résoudre à chaud un problème. Ce pourrait être le facteur décisif lorsqu'on a le choix entre deux bibliothèques!

La chose pour protéger votre source doit être la licence. Que la version Open Source soit GPL et permette aux entreprises d'acheter une version non GPL à inclure dans leurs produits commerciaux non GPL.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.