Quelqu'un peut-il donner des recommandations / expériences sur quelle licence choisir pour le logiciel?
La licence que vous choisirez dépendra de la gratuité de votre code, mais la gratuité signifie différentes choses pour différentes personnes.
- Pour les partisans de permissives licences, libres moyens permettant aux gens maintenant d'utiliser le logiciel mais ils veulent en ce moment , ne pas se soucier de la façon dont sans dérivation future sont.
- Pour les partisans des licences de copyleft , la gratuité signifie que le logiciel et toute dérivation de celui-ci restent libres , étant prêt à sacrifier certaines libertés immédiates pour garantir cela.
Plus une licence est permissive, plus les gens pourront l'utiliser, mais moins vous en aurez le contrôle. Cependant, plus il est restrictif, plus vous risquez de dissuader les gens d'utiliser votre logiciel en premier lieu.
Il existe un certain nombre de licences libres et open source, notamment GPL <= 2, GPL 3 , LGPL , BSD , Eclipse et ainsi de suite. Il y a des avantages et des inconvénients à chacun, alors lisez les restrictions qu'ils imposent sur le code et décidez qui vous voulez pouvoir l'utiliser. Avertissement , selon votre choix quelqu'un se plaindra - c'est la guerre sainte territoire.
Dans l'ensemble, il s'agit d'un subtil équilibre, et cela dépend beaucoup du public cible de votre logiciel.
À mon avis, les licences permissives et copyleft sont appropriées pour le code scientifique - l'important est que le code soit open source en premier lieu. Je pense que la science doit être ouverte, tout comme le code utilisé pour soutenir cette science.
Quels sont les avantages / inconvénients de "donner" tout le travail codé en tant que codes open source?
L'idée de donner votre logiciel est que si d'autres le trouvent utile, ils l'utiliseront.
S'ils l'utilisent, ils trouveront, rapporteront et corrigeront souvent des bogues, ce qui vous évitera de faire de même.
S'ils l'aiment et que votre logiciel fait presque ce qu'ils veulent, ils pourraient améliorer votre logiciel et apporter ces améliorations.
Cela fait beaucoup de ifs bien.
Comment traiter avec les acteurs industriels qui souhaitent bénéficier du code de la recherche?
Premièrement, si vous souhaitez interdire l'utilisation commerciale de votre code, vous pouvez sélectionner une licence avec une clause de non-réutilisation commerciale.
Deuxièmement, si vous pensez que quelqu'un pourrait utiliser votre logiciel pour alimenter un service, sans jamais réellement distribuer le code à quelqu'un d'autre, alors vous pourriez envisager l' Affero GPL qui comble cette faille particulière du copyleft.
Troisièmement, vous pouvez faire ce qui précède et offrir une option de double licence. Offrir des licences GPL ou AGPL pour le téléchargement public et des licences commerciales payantes vous offre le meilleur des deux mondes et signifie que vous pourriez même être en mesure de générer des revenus des ventes commerciales de votre logiciel qui peuvent aider à soutenir vos activités scientifiques.
Notez que si vous allez le faire, offrez-le dès le départ - cela causera probablement moins de friction de vos contributeurs open source que de commencer à offrir des licences commerciales plus tard. Si votre communauté devient populaire, vous ne voulez pas que les gens vous accusent de vendre si vous n'étiez pas sûr de la possibilité d'une exploitation commerciale plus tard. Idéalement, vous devez configurer un contrat de licence de contributeur (CLA) approprié avant de commencer à accepter des contributions de tiers dans votre base de code.
Cette réponse à cette question fournit également de bonnes informations sur cette option.