GitHub недавно представил свой API лицензий, доступный в предварительном просмотре. Он также представил некоторые статистические данные об использовании лицензий за свою историю.
GitHub часто критикуют за его слабый подход к лицензированию программного обеспечения. Он не требует от пользователей указывать лицензию при настройке нового проекта, и его предыдущая попытка побудить пользователей к лицензированию своих проектов имела ограниченный эффект, как показано на этой диаграмме:
Всплеск на графике примерно с 15% до более чем 20% соответствует введению ChooseALicense.com, средство выбора лицензий с информацией о различных вариантах. Даже здесь, однако, пользователи освобождаются от крючка с последним вариантом:
Информация, представленная при изучении этой опции, является:
Вы не обязаны выбирать лицензию, и это ваше право не включать ее в свой код или проект. Но, пожалуйста, обратите внимание, что отказ от лицензий с открытым исходным кодом не означает, что вы отказываетесь от закона об авторском праве.
Далее он напоминает пользователям, что условия предоставления услуг GitHub позволяют другим пользователям просматривать и разветвлять любой репозиторий.
Но как говорится в блоге Использование лицензии с открытым исходным кодом на GitHub.com спорит:
Открытый исходный код просто не является открытым исходным кодом без надлежащей лицензии. Если вы явно не сказали другим, что они могут изменять и повторно использовать вашу работу, вы только показали другим свой код; вы не поделились им.
Суть открытого исходного кода заключается в том, чтобы поощрять других использовать и изменять ваш код. Когда проект разветвляется, он автоматически наследует свою лицензию, хотя впоследствии она может быть изменена или удалена, а когда код не имеет лицензии, он, как правило, не поощряет ее использование, опасаясь проблем с авторским правом.
Новый API лицензий предназначен для того, чтобы лицензирование было более прозрачным; чтобы разработчикам с открытым исходным кодом было проще лицензировать свой код, а потребителям с открытым исходным кодом-узнать, какая лицензия действует.
API, находящийся в режиме предварительного просмотра, извлекает информацию о файле лицензии проекта:
Он также предоставляет шаблон, облегчающий добавление файла ЛИЦЕНЗИИ в проект.
Одним из недостатков API в том виде, в каком он реализован в настоящее время, является его ориентация на файл ЛИЦЕНЗИИ. Многие проекты помещают свои лицензии в файл с именем COPYING в соответствии с соглашением, используемым проектом GNU.
Введение избирательности действительно повлияло на поведение. Его три явные рекомендации были для MIT, Apache и GPLv2, все из которых показывают повышенное поглощение на этой диаграмме:
Надеюсь, API лицензий также окажет желаемый эффект, поощряя использование лицензий на GitHub.