Может ли кто-нибудь дать некоторые рекомендации / опыт, какую лицензию выбрать для программного обеспечения?
Какую лицензию вы выберете, будет зависеть от того, насколько бесплатно вы хотите, чтобы ваш код был, но бесплатная означает разные вещи для разных людей.
- Для сторонников разрешительных лицензий бесплатное означает, что люди теперь могут использовать программное обеспечение так, как они хотят, прямо сейчас , не беспокоясь о том, насколько бесплатны в будущем деривации.
- Для сторонников лицензий с авторским левом бесплатная означает, что программное обеспечение и любые его производные остаются свободными , будучи готовыми пожертвовать некоторыми непосредственными свободами, чтобы гарантировать это.
Чем более разрешительной является лицензия, тем больше людей смогут ее использовать, но тем меньше у вас контроля над ней. Тем не менее, чем более ограничительным оно является, тем больше вероятность того, что вы откажетесь от использования вашего программного обеспечения.
Существует множество бесплатных лицензий с открытым исходным кодом, в том числе GPL <= 2, GPL 3 , LGPL , BSD , Eclipse и так далее. У каждого есть свои плюсы и минусы, поэтому прочитайте, какие ограничения они накладывают на код, и решите, кого вы хотите использовать. Внимание , в зависимости от того вы выбираете кто - то будет жаловаться - это является священной войны территория.
В целом, это тонкий баланс, и он очень сильно зависит от целевой аудитории вашего программного обеспечения.
- Отличным ресурсом для определения того, какая лицензия является для вас подходящей, является всеобъемлющий интерактивный дифференциатор лицензий от Oxford Universities OSS Watch .
На мой взгляд, разрешающая лицензия и лицензия с авторским левом подходят для научного кода - важно то, что код, в первую очередь, с открытым исходным кодом. Я считаю, что Наука должна быть Открытой, и код должен использоваться для поддержки этой науки.
Каковы плюсы / минусы «раздачи» всей закодированной работы в виде открытых исходных кодов?
Идея раздачи вашего программного обеспечения заключается в том, что если другие найдут его полезным, они будут его использовать.
Если они используют его, они будут находить, сообщать и часто исправлять ошибки, сохраняя ваши усилия сделать то же самое.
Если им это нравится, и ваше программное обеспечение делает почти то, что они хотят, они могут улучшить ваше программное обеспечение и внести эти улучшения обратно.
Это очень много, если .
Как бороться с промышленными игроками, которые хотели бы получить выгоду от исследовательского кода?
Во-первых, если вы хотите запретить коммерческое использование вашего кода, вы можете выбрать лицензию без условия повторного использования.
Во-вторых, если вы думаете, что кто-то может использовать ваше программное обеспечение для питания службы, даже не передавая код кому-либо еще, то вы можете рассмотреть Affero GPL, который включает эту конкретную лазейку с авторским левом.
В-третьих, вы можете сделать выше и предложить вариант двойной лицензии. Предложение лицензий GPL или AGPL для публичного скачивания и коммерческих лицензий за определенную плату дает вам лучшее из обоих миров и означает, что вы можете даже получать определенную прибыль от коммерческих продаж вашего программного обеспечения, что может помочь в поддержке вашей научной деятельности.
Обратите внимание: если вы собираетесь это сделать, предложите его с самого начала - это, скорее всего, вызовет меньше трения у ваших участников с открытым исходным кодом, чем позднее, когда вы начнете предлагать коммерческие лицензии. Если ваше сообщество становится популярным, вы не хотите, чтобы люди обвиняли вас в распродаже, если вы не были уверены в возможности коммерческой эксплуатации позже. В идеале вам следует создать подходящее лицензионное соглашение участника (CLA), прежде чем вы начнете принимать сторонние вклады в вашу кодовую базу.
Этот ответ на этот вопрос также дает некоторую полезную информацию об этой опции.