Как использовать принципы Open Source по максимуму или MIT vs GPL

Автор оригинала: Yehuda Katz
  • Перевод
На протяжении последних нескольких лет я работал над рядом проектов с открытым кодом (из которых наиболее выделяются Merb, Ruby On Rails и jQuery) и сформулировал некоторые мысли по поводу использования проектов с открытым кодом и практических последствий выбора лицензии.

Игровое поле


По существу есть только два типа лицензий, которые широко используется в OpenSource.
Тип, с которым я работал наиболее часто, — лицензии BSD или MIT. Данные лицензии позволяют неограниченное использование, модификацию, распространение и коммерциализацию исходного кода, с двумя оговорками. Во-первых, уведомление об авторском праве должно распространяться вместе с исходным кодом. Во-вторых, если вы используете мой код под лицензией MIT, то не можете подать в суд на меня за последствия от использования данных исходников.

Другой основной тип лицензии называется CopyLeft и требует, чтобы любые изменения в исходном коде были также обнародованы, в случае распространения модифицированной версии. Практический эффект от этой лицензии не может быть осуществлен без поддержки правительства в законе об авторском праве.

Наиболее популярной CopyLeft-лицензией является GPL, которая используется для Linux, и также имеет вирусный характер. В том смысле, что если вы используете код, опубликованный под GPL, в вашем собственном коде, то вы обязаны также открыть ваш код (если вы распространяете его).

Менее вирусная версия GPL — LGPL — требует, чтобы любые изменения, вносимые в программное обеспечение были также опубликованы, но убирает требование публикации при простом использовании.

Из-за неопределенности в отношении вирусных характеристик GPL, юридические отделы в крупных корпорациях очень враждебно относятся к лицензии GPL. Программное обеспечение под лицензией LGPL с большей вероятностью получит одобрение корпоративных юристов, а MIT/BSD лицензии вообще являются их любимчиками (видимо потому, что они не накладывают каких-либо обязательств на корпорации).

Чего я хочу, когда я пишу Open Source.


Когда я работаю над серьезным Open Source проектом, как Ruby on Rails или jQuery, у меня возникают сравнительно простые желания.
  1. Я хочу, чтобы программное обеспечение, над которым я работаю, использовало как можно больше людей. Вероятно, это эгоистичное желание, но оно может быть расмотрено, как желание видеть в результате полезное программное обеспечение, которое действительно используют многие.
  2. Я хочу, чтобы сущесвтовало некоторое подмножество множества пользователей, которые будут присылать баг-репорты, а также проверять работоспособность кода в разнообразных ситуациях использования и рабочих окружениях для улучшения качества программного обеспечения в качестве результата. Это вкратце можно сформулировать как «Иметь достаточно глаз, чтобы все ошибки всплыли на поверхность».
  3. Я хочу, чтобы были люди, которые достаточно заинтересованы в совершенствовании программного обеспечения, чтобы представлять патчи. В частности, я хочу получать патчи от людей, которые обдумали проблему, нашли причину ошибки и пытаются её исправить, и хочу получать меньше патчей от людей, которые просто придумали очередной хак, чтобы просто заставить что-то работать. В сущности, высокое отношение сигнал/шум для патчей является более важным, чем большое количество патчей.
  4. Я хочу, чтобы были люди, которые заинтересованы в совершенствовании программного обеспечения долгосрочной перспективе. Чтобы проект получил долгосрочных участников (contributors) и в конечном итоге разработчиков (committers).

Из этих желаний, номера два и три имеют самый высокий приоритет. Я хочу подвергать код на столько сильному воздействию реального мира, насколько это возможно. И я хочу как можно больше высококачественных патчей, чтобы исправить выявленные ошибки. Хотя если бы мне пришлось выбирать между этими двумя пунктами, я бы выбрал номер два: «разоблачение» моего кода воздействием реального мира является лучшим способом для быстрого обнаружения ошибок и неправильных предположений в дизайне, который я знаю.

Выполнение этих требований


Начну с самого простого: моё первое желание (чтобы моё программное обеспечение, использовалось как можно больше) наиболее легко удовлетворяется крайне либеральной политикой использования. Добавление ограничений на использование программного обеспечения по определению снижает его степень его принятия.

Гораздо важнее то, что то же самое можно сказать и о разоблачении кода в реальном мире. Наиболее важным способом для достижения этой цели является «сделать использование кода максимально удобным для как можно большего количества людей».

Если хотя бы 1% от всех пользователей кода под MIT-лицензией всегда будут сообщать о найденной ошибке, то это будет 1% от тысяч потенциальных пользователей, в отличии от 100% от нуля проприетарных пользователей в случае CopyLeft-лицензии. На практике эта цифра намного больше, чем 1%, так как проприетарные пользователи программного обеспечения делают баг-репорты так же, как OpenSource-пользователи.

Единственным контр-аргументом против этого является то, что, в случае CopyLeft-лицензии некоторое количество проприетарных пользователей будут вынуждены стать OpenSource-пользователями, и их вклад будут перевешивать вклад проприетарных пользователей для MIT-лицензии. Но на практике проприетарные пользователи выбирают проприетарные решения, когда они вынуждены выбирать между OpenSource, с ограничительными схемами использования и другим проприетарным ПО.

Несомненным плюсом вовлечения проприетарных разработчиков в OpenSource-проект является то, что код дополнительно проверяется в проприетарных окружениях. Кроме того, они имеют доступ к закрытым сценариям использования, а также доступ на рынки с низким проникновением OpenSource.

Следующим крупным желанием является постоянный поток высококачественных патчей. Казалось бы это должно быть сильной стороной CopyLeft-лицензий, потому что все пользователи программного обеспечения вынуждены вносить свой вклад. Однако, поскольку проекты с CopyLeft лицензиями не используют в проприетарной среде в любом случае, то патчи для Open Source проектов из этих сред для проектов под более либеральными лицензиями гораздо более многочисленны. Опять же, даже если лишь несколько процентов от проприетарных пользователей внесёт вклад обратно в проект, это будет означать значительно больше взносов, чем 100% от нуля проприетарных пользователей.

Конечно, я могу говорить только про jQuery и Rails (и другие более мелкие проекты с открытым кодом, над которыми я работаю), но большое количество новых долгосрочных участников стали заниматься Open Source проектом во время работы над корпоративными проектами, где разрешительная лицензия была во главе угла при выборе программного обеспечения для внутреннего использования.

Низкий барьер для вступления помогает удовлетворить цели Open Source


Независимо от того, насколько вы согласны с вышеперечисленными аргументами, ясно, что CopyLeft лицензии умышленно вводят более высокий барьер на пути решения об использовании, чем более либеральные лицензии.

Для проектов, которые используют более либеральными лицензии, тот факт, что многие проприетарные пользователи их программного обеспечения, не вносят изменений назад — это фича, а не баг.
Это потому, что мы не зациклены на всех людей, которые используют нашу программу, не внося своего вклада. Вместо этого мы сосредоточены на пользователях, отчетах об ошибках, патчах и долгосрочных участниках, которых мы получим в перспективе за счёт поддержания барьера для вступления как можно более низким.

В конце концов, мир повсеместного использования открытого исходного кода уже вокруг нас. И мы сделали это, не прибегая к принуждению или формированию полностью автономного набора программного обеспечения. Мы сделали это путем создания отличного программного обеспечения и убеждения реальных пользователей, что это лучше, чем любая альтернатива.

Постскриптум: Linux


Linux является необычным примером, поскольку его лицензия не сильно препятствует его использованию. В частности, это потому, что большинство пользователей Linux не вносит в него изменения, и ограничения лицензии GPL редко вступают в игру.

В случаях, подобных этому, я бы сказал, что лицензия CopyLeft достаточно близка к максимизации использования, которая является основным преимуществом от более либеральных лицензий. Однако, для меня не ясно, какие выгоды CopyLeft лицензия может обеспечить даже в этих (довольно редких) случаях.
Поделиться публикацией

Комментарии 87

    +2
    Спасибо за перевод!

    По теме — в каждом конкретном случае следует выбирать наиболее подходяющую лицензию. В одном проекте BSD/MIT лучше, в другом — GPL. Смотря какие цели преследуются. Поэтому с автором не согласен, слишком категорично и однобоко.
      +1
      Да, безусловно выбор лицензии сильно зависит от проекта.
      Просто мне всегда было интересно понять мотивацию выбора именно MIT/BSD лицензий, а в данной статье она весьма подробно пояснена, поэтому и перевёл. Ведь действительно, чем меньше ограничений, тем большее желание возникает помочь проекту, и скорее поможешь именно тому проекту, который используется компанией, в которой сам работаешь, т.к. это можно сделать в рабочее время. В общем, некое разумное зерно в этом есть…
        +1
        Зерно конечно же есть, плохо, что этим можно злоупотреблять. Вон даже GPL софт воруют, включая в свои продукты и не делясь исходниками. Я думаю, что как раз для BSD-лицензированных библиотек нужно гораздо больше «пользователей», чтобы был нормальный фидбек. Большинство просто юзает и не контрибутит ничего.
          0
          > Вон даже GPL софт воруют, включая в свои продукты и не делясь исходниками.

          А в том то и дело, что для GPL ещё нужна законодательная поддержка внутри страны использования. Т.е. раз в России официального статуса у GPL нет, то получается, что российские компании могут спокойно закрыть открытый код какого-нибудь проекта, распространяемого под GPL, и продавать его. В общем идея в основе лежит благородная, чтобы как можно больше было открытых проектов и фидбека, но по факту она или не работает совсем, или работает не в полной мере.

          > Большинство просто юзает и не контрибутит ничего.

          Конечно, но если бы большинство контрибутило, то соотношение сигнал/шум заметно изменилось бы в сторону увеличения шума. Я думаю, вполне достаточно, чтобы контрибутило 1-5% пользователей. Ведь для большинства OpenSource проектов даже 50-100 постоянных контрибьютеров уже выше крыши, а если из них 10-20 из них перейдут в статус разработчиков, то совсем уже здорово и можно сказать, что проект удался на славу.
            +2
            Насчёт России спорно, я думаю GPL всё-таки имеет силу в нашей стране. А что касается российских компаний, так они особой погоды на рынке не делают, и даже если что-то сопрут, то им же и хуже, не смогут продвигать продукт там, где больше денег :-)

            Насчёт вклада в проект — очень сложный это вопрос. Тут опять же, от проекта зависит. Скажем, если бага появится в jQuery, её мгновенно пофиксят, потому как это на миллионах сайтах используется. А если бага в какой-нибуль libJustAnotherLib, то её и скачают-то ну пять человек от силы, а фиксить вообще вряд ли кто будет — просто плюнут, да другую либу заюзают. Тут вопрос менеджмента в том числе и критической массы. Всё сложно.

            Я вот говорю, что надо привлекать народ, так чуть ли не камнями забрасывают, «зачем нам ламеры?» говорят :-) Все же хотят быть «элитным хакером», никто не хочет кодить какой-нить check_user_preferences :-)
              0
              Да, критическая масса, пожалуй, самое важное. Мало кто захочет контрибьютить в проект, которым никто не пользуется, разве что те, кому сама идея проекта и подход к её реализации очень понравятся.
              Однако ведь та же jQuery не сразу после первого анонса стал на миллионах сайтов использоваться, остаётся только предполагать какую роль в её популярности сыграла лицензия…

              > Я вот говорю, что надо привлекать народ, так чуть ли не камнями забрасывают, «зачем нам ламеры?» говорят :-) Все же хотят быть «элитным хакером», никто не хочет кодить какой-нить check_user_preferences :-)

              Да, привлекать народ действительно нужно. В конце концов можно ведь не только «ламеров» привлечь, но и элитных хакеров тоже :-)
                0
                > Да, привлекать народ действительно нужно.
                В том-то и дело, только это мало кто понимает.
              0
              четвёртая поправка имеет только одну положительную сторону — гпл теперь работает. но даже если б оно не было так, софт был бы незаконен в сша. а сша — это самый крупный рынок, на который приходится ориентироваться. и если это не маленькая контора, поставляющая софт разве что в соседнюю школу, а крупная фирма, то придётся всё-таки считаться
                0
                Т.е. GPL теперь официально юридически действует в России?
                  0
                  честно говоря, я не юрист, чтобы судить самому, но где-то это было с объяснением механизма. вот только не помню, где
                      0
                      но здесь другая точка зрения…
                        0
                        спасибо за ссылку. несколько раз перечитал, чтобы понять все описанные юридические премудрости. кажется, лицензия действует только ограниченно
                      +2
                      С тех пор, как GPL софт используется и продвигается правительством, можно сказать что да. Дело в том, что GPL (как и любая лицензия) не только навязывает какие-то ограничения, но и дает право использования. Без такого права по нашему законодательству использовать ПО нельзя.

                      Т.е. если что-то действительно делает GPL недействующим, то это автоматически делает незаконными все «OpenSource в школы/правительства/что там еще» программы нашего президента и будет «в кратчайшие сроки» убрано с пути, как только всплывет в каком-либо суде.

                      Но оно не всплывет, потому как никто из нарушителей GPL в суде ни слова не заикнется о её незаконности. По той же самой причине: если GPL незаконна, то по какому праву они вообще использовали, а тем более модифицировали и интегрировали в свои решения, а потом и продавали чужую программу?

                      С тех пор как правительство подсело, вопрос законности можно считать закрытым.

                      P.S.: GPL имеет проверку целостности. Или она действует вся до последнего пункта или она не действует вообще и никаких прав не даёт.
                        0
                        а вот про последний пункт я как-то забыл. пожалуй, озабочусь и напишу письмо в кремль
            +9
            Автор — типичный корпоративный пользователь, который, кажется, адекватно понимает механику работы GPL, но совершенно не догоняет мотивацию.

            Linux бы растащили на куски, позволяй это лицензия; ни одному из корпоративных гигантов и в голову бы не пришло контрибьютить ресурсы, мозги и код в разработку, из которой бы позже можно было легко чего-нибудь упереть.

            Именно поэтому самые КРУПНЫЕ и ВАЖНЫЕ проекты открытого сообщество прикрыты жесткой GPL.

            А jQuery, RoR и другой веб трудно назвать ключевыми (я не сказал, заметься, «сложно назвать плохими»)просто потому, что аналогов масса. Поэтому они и борятся любыми средствами за выживание, о чем, собственно, автор и написал.
              0
              > адекватно понимает механику работы GPL, но совершенно не догоняет мотивацию.

              Да, про то, что он не понимает выгоды от использования GPL, автор так и пишет прямым текстом.

              > Linux бы растащили на куски, позволяй это лицензия;

              Ну тут контр-аргументом стоит та самая BSD-UNIX и её потомки FreeBSD, NetBSD, OpenBSD, MacOS X, etc. Да, корпоративных гигантов в её разработке участвует поменьше, чем для GNU/Linux, но всё-таки не так чтобы «ни одного».
              А MacOS X как раз выступает примером когда «упёрли» и закрыли. Но это впрочем не мешает успешному развитию свободных потомков.
                0
                Ради справедливости — автор не корпоративный пользователь, а главный разработчик Merb и [один из главных в] Ruby on Rails.
                +3
                А для фришных шрифтов что подходит лучше всего? Если мне без разницы, что с ними дальше будут делать.
                  0
                  MIT
                    0
                    Для шрифтов вроде есть свои лицензии?
                    А некоторые шрифты и под нешрифтовыми лицензиями распространяют.
                      +3
                      Для шрифтов наверно лучше подойдут лицензии Creative Commons.
                      Аналог MIT — CC-BY.
                      Про другие типы Creative Commons можно почитать, например, в вики
                        0
                        CC-BY я тоже склоняюсь.
                        +1
                        WTFPL
                          +1
                          Веселая лицензия, только не дай бог на какой-нибудь презентации зачитать полностью её название. :)
                            0
                            PL — это расширение скриптов на перле, а также домен первого уровня для польских сайтов.
                          0
                          О! Раз такая тема, как раз спрошу: можно ли использовать GPL-библиотеки в LPGL-проекте?
                            0
                            Вы разрабатываете библиотеку, которая потом будет линковаться с не-GPL кодом? И хотите в нее внести чистый GPL-код?

                            Нет, нельзя.
                              0
                              Я разрабатываю LGPL-проект, который будет лишь использовать GPL-библиотеку в качестве зависимости, на крайний случай таскать её с собой, но не линковаться с ней… так можно?
                                0
                                не совсем понимаю, как можно использовать в качестве зависимости, но не линковать :)
                                  0
                                  Python-библиотеку можно ))
                                    +1
                                    Если вы про использование GPL-несовместимой питоновской (или, к примеру, javascript-) библиотеки через линкование питоновского интерпретатора, то а) объединённый продукт может считаться «one work» и, соответственно, б) с GPL это не совместимо.
                                      0
                                      Не, я просто хочу использовать www.bittorrent.com/opensource в качестве импорта в своём LGPL-проекте… это возможно?
                                      Если нет, то есть ли какая-либо лицензия, похожая на LGPL, позволяющая это?
                                        0
                                        Так тут дело не в лицензии твоего проекта, а в лицензии используемой библиотеки. По идее, если библиотека распространяется под GPL, то все программы, которые её используют также должны распространяться под GPL. В этом и заключается «вирусный» характер GPL.
                                          0
                                          FreeBSD имеет в своём составе множество GPL-кода. Тем не менее, система распространяется под BSDL.
                                            0
                                            FreeBSD — это комплект программ. Каждая отдельная программа является либо GPL либо BSD. Как только код BSD включается в GPL — программа становится GPL.

                                            Но это только при использовании кода в единой программе.

                                            Понятно, что даже Mac собирается на gcc!
                                          +1
                                          В этих случаях всегда обращайтесь к разработчикам, они вам и скажут, как вы можете использовать их проект)))
                                            +1
                                            связь с разработчиками нужна только если вы хотите изменить условия лицензирования для себя или вообще. как например разрешение разработчиков джаббер-либы под миранду на использование её в кипе на условиях гпл
                                      +1
                                      Ваш проект не должен быть производной работой от GPL-библиотеки. Для этого он должен работать и без подключения GPL-библиотеки или с подключением альтернативной библиотеки вместо неё.

                                        0
                                        Если нет, то есть ли какая-либо лицензия, похожая на LGPL (то есть позволяющая коммерческое использование, но сохраняющая авторство), позволяющая это?
                                          +1
                                          Тут возникает тонкий юридический момент: что значит «проект должен работать»? Вот я напишу, к примеру, плейер с использованием GPL — библиотеки. При её отсутствии он будет «работать», воспроизводя только несжатые wav-файлы. Такое прокатит?
                                      +1
                                      «The GNU General Public License does not permit incorporating your program into proprietary programs»
                                      это значит, что гпл запрещает включать в проприетарный софт гпл-продукты (включая динамическое линкование, естественно). про свободные проекты в этом ключе не говорится. поэтому, думаю, гпл-код в свободный проект можно слинковать даже динамически, но только отдельным файлом гпл-код, отдельным — другой свободный
                                        0
                                        Спасибо!
                                          +2
                                          пожалуйста. кстати, если интересно, простейший пример — filesystem in userspace. его ядерная часть лицензируется под гпл, а сама либа, размуеется, использующая эту ядерную часть — под лгпл

                                          и да, в последнем предложении ошибся. последнее «динамически» нужно заменить на «статически». но насчёт этого я не могу говорить точно — примеров не знаю
                                          +1
                                          А вот и нет:

                                          ...you can combine code released under the other license with code released under the GNU GPL in one larger program. All GNU GPL versions permit such combinations privately; they also permit distribution of such combinations provided the combination is released under the same GNU GPL version.

                                          То есть если вы свой код (выпущенный под LGPL) скомбинируете с GPL-кодом, то распространять всё вместе можно будет только под GPL.
                                            +1
                                            Как же всё это сложно…
                                            Ненавижу GPL…
                                            Мне просто нужно использовать bittorent в своём проекте, сохранить авторство и разрешить использовать мой код в коммерческих проектах… мне что, свою лицензию писать?
                                              0
                                              Так напишите письмо авторам bittorent. С моей точки зрения, LGPL и GPL весьма близки по духу, так что я на месте авторов битторента сделал бы для вашего проекта исключение. Также возможно, что они вовсе не видят в вашем проекте никакой проблемы.
                                                0
                                                Оставлю обращение к разработчикам на крайний случай…
                                                0
                                                вы под битторрентом торрент-клиент понимаете?
                                                  +1
                                                  Нет, протокол…
                                                    +1
                                                    помилуйте, существует туча торрент-клиентов с отличной от гпл лицензией. сам протокол, как я понял, можно использовать без проблем
                                                      +1
                                                      Сам протокол без проблем…
                                                      Дело в том, что я не хочу сам полностью писать с нуля библиотеку для рабооты с протоколом, а хочу взять готовую… и очень желательно, чтобы она была на питоне…
                                                        0
                                                        Динамическая линковка GPL-библиотеки возможна к BSDL-проекту. При этом проект будет иметь две лицензии: GPL для библиотеки, распространяемой вместе с продуктом, и BSDL для авторского кода.

                                                        BSDL не нарушает требований GPL, но не распространяет её действие за пределы собственного защищаемого ею кода. Она останавливает вирусную активность и является своеобразным «антидотом» от отравления свободой.

                                                        Так, например, это даёт возможность писать «фасады» под BSDL, а проприетарные продукты, обменивающиеся через такие «фасады» с GPL-кодом свободных библиотек, распространять под собственнической лицензией. И даже закрывать код проприетарного продукта — исходники под GPL не изменяются и не линкуются непосредственно с конечным продуктом.
                                                          +1
                                                          вообще, то же самое можно применить и по отношению к лгпл. но не писать же человеку ещё и прослойку для использования библиотеки, если конечный продукт так же свободен
                                                  +1
                                                  BSDL
                                                    0
                                                    Она разве сохраняет авторское право?
                                                      +2
                                                      Естественно. Первые два пункта BSDL оговаривают обязательное указание авторских прав на исходники и бинарники продукта, соответственно.
                                                        +2
                                                        авторского права у вас никто не отнимет, пока вы сами не передадите его. никакая свободная лицензия этого не требует. другое дело — обязывание оглашать авторство
                                                          0
                                                          Вот! Точно, именно оглашение я и имел ввиду…
                                                          BSDL это предусматривает?
                                                            0
                                                            Объявление об авторстве в BSDL описано как простое указание авторов на исходники и/или бинарники, распространяемые в составе конечного продукта. Например, это может быть файл README или ABOUT.

                                                            Пункт о буквальном перечислении имён авторов из современной лицензии BSDL при каждом случае демонстрации продукта исключён как слишком громоздкий.
                                                              +1
                                                              этого пункта там не было. исключён пункт об оглашении првообладателей кода в рекламе

                                                              что же касается авторского права, то там сказано об обязательном оглашении в _бинарных_ редистрибьюциях. как это должно выглядеть в конечном итоге, я не совсем понял
                                                    +1
                                                    это касается только статического линкования. и да, я с ним, похоже, ошибся
                                                      +1
                                                      Динамическое линкование обычно разрешается, но строго говоря и с ним не всё ясно… Мне кажется, лучше уточнить понимание этого аспекта с разработчиками bittorent. Скорее всего, у них и в мыслях не было намерения ограничивать использование динамических библиотек.
                                                +6
                                                Вообще взгляд автора немного не учитывает одной вещи: никто не обязан предоставлять никому никакой код если он использует GPL приложения для внутренних нужд, а не занимается их продажей. Проще говоря — любая корпорация может написать для себя всё, что угодно на основе GPL, пока она это не продаёт — никаких к ней претензий нет. Всё очень просто. GPL защищает использование чужих наработок для зарабатывания денег. Всякие BSD — нет. Вот и вся разница. Если вы хотите, чтобы написанное вами приносило прибыль не вам, а дяденьке — вы используете BSD, в противном случае — GPL. GPL не даёт прибыли, но хотя бы никто в наглую не сможет зажилить ваших трудов, и с другой стороны все, кому нужны ваши наработки для работы, а не для продажи, смогут их свободно использовать.
                                                  0
                                                  об, к сожалению, этом забывают с завидной регулярностью. насчёт прибыли и гпл — не соглашусь. можно использовать двойное лицензирование. гпл-версию разрабатывать для свободного сообщества и для того, чтобы получить известность, и продавать право на использование в закрытых разаботках проприетарщикам. это не говоря о иных методах заработка. ну и снизить стоимость разработки можно
                                                    0
                                                    Не, ну двойное лицензирование — оно конечно, собственно, это, ИМХО, более разумный подход в большинстве случаев, нежели BSD и подобные. Хотя тоже. Если люди согласны писать под BSD — пускай пишут! Уж от чего точно не будет никаких проблем, так это от BSD софта. Но просто не надо необоснованно обвинять GPL в неприменимости вне открытых проектов и просто в том, что она хуже BSD с точки зрения открытого ПО.
                                                    0
                                                    >но хотя бы никто в наглую не сможет зажилить ваших трудов

                                                    Можно подумать, что BSDL это позволяет.

                                                    GPL определяет политику использования не только изначального продукта, но и продуктов на основе исходного. То есть предопределяет судьбу прав чужого кода в рамках защищаемого ею прав на исходный продукт. BSDL не занимается регулированием прав производного продукта.
                                                      0
                                                      Дык то, что GPL ограничивает политику распространения продуктов на основе исходного — это и есть основной плюс её перед BSD подобными. С одной стороны GPL никак не ограничивает использование и модификацию для собственных нужд и потребностей, но с другой контролирует распространение модификаций.
                                                        +1
                                                        Наверно из-за того, что GPL контролирует форки, мы имеет тысячи почти одинаковых дистрибутивов Linux и гораздо меньшее число совершенно различимых BSD-«форков». ;))
                                                          –1
                                                          Одно НО! Мы имеем одну генеральную линию развития ядра, один единый компилятор и одну более менее единую glibc. И в противовес мы имеем FreeBSD, OpenBSD, NetBSD, DragonflyBSD, у каждой свое ядро, драйвера между ними или несовместимы вовсе или требуют напильника, мы имеем почти на каждой из систем попытки использовать свой компилятор. Кто-то вот pcc воскрешает, кто-то с llvm играется. И под каждую платформу приходится дополнительно смотреть, как всё работать будет. И шансов, что важная программа, собранная под NetBSD заведётся на FreeBSD всё же поменьше, чем шансов, что пакет от Федоры пойдет в Убунте. Итого у каждой из BSD систем своя узкая ниша.
                                                            +1
                                                            Жаль, что сваливаемся в оффтоп. Ну да ладно.

                                                            В случае Linux мы НЕ имеем никакой генеральной линии, а имеем пучок почти совместимых сторонних решений, которые летят к чертям собачьим при очередном обновлении одной из «базовых» систем (поэтому используется термин «почти»). Искать виноватого — себе дороже — в конечном итоге сам окажешься в дураках. Ведь стабильный ABI для Linux не задекларирован.

                                                            Никто, абсолютно никто не может гарантировать стабильность Linux и используемых программных решений, кроме разработчиков дистрибутивов, которые тестируются и растпространяются СОВМЕСТНО с каким-либо коммерческим решением — будь то Oracle, Lenovo или Red Hat, обеспечивающей поддержку дистрибутиву по сути двух-трёх годичной давности.

                                                            Почитайте LOR, что ли, для вкушения правды жизни — основные конструктивные разговоры идут вокруг очередной поломки Intel-драйвера в новой версии ядра. И так случается почти всегда при смене версии того или иного продукта.

                                                            Лично я не представляю такого, как это может быть, что драйвер NVIDIA, например, не завёлся в обновлённой из исходников FreeBSD (при переходе с версии на версию мне лично не пришлось пересобирать порт драйвера — всё и так работало). О продолжении работы старых приложений в новой версии FreeBSD — без вопросов заведутся, если не заброшены окончательно. Даже без пересборки портов — вероятность близка к 99%.

                                                            FreeBSD, OpenBSD, NetBSD, DragonflyBSD — это по большей части исследовательские проекты, каждый преследующие определённые цели.
                                                            Linux же по большей части — потребительские дистрибутивы, для практического использования на серверах, десктопах (и в дешёвых роутерах).
                                                        –1
                                                        смотря что понимать под «зажиливанием». использование свободного труда в закрытых проектах — это и есть зажиливание, на мой взгляд. с пацанами, хе-хе, надо делиться
                                                          +1
                                                          Сотрудники многих коммерческих компаний используют Apache, Mozilla и PostgreSQL внутри собственных компаний для зарабатывания денег прямо или косвенно проприетарных продуктах.

                                                          Вы полагаете, они должны делиться доходами и/или предоставлять исходный код Web-проектов разработчикам указанных продуктов, чтобы компенсировать «зажиливание»? :))
                                                            –1
                                                            нет, не полагаю. во-первых, по сути оно не напрямую, а во-вторых, я не оспариваю право разаботчика на определение лицензии своего продукта, если он не нарушает чужих лицензий
                                                      +2
                                                      Я так и остаюсь полным нубом по части лицензий )8 В каждом таком топике спрашиваю. Вот я делаю библиотечку и хочу отдать ее людям, при этом только не хочу чтобы кто-то другой взял ее и сказал, что это он написал. Какую лицензию писать? (8
                                                        +4
                                                        Любую. Все лицензии, кроме public domain, подразумевают обязательное сохранение информации об авторе. Но для библиотек предпочтительней всего LGPL. Она с одной стороны позволяет свободно использовать библиотеку в проприетарных программах в случае неизменения кода библиотеки, и с другой требует опубликования исходников в случае внесения изменений.
                                                          +2
                                                          gpl, lgpl. они защищают ваше авторское право. только вы сами тоже не забудьте его защитить — в каждый файл с кодом нужно вставить в начало несколько строчек комментариев — именно так и применяется лицензия. если вы хотите, чтобы вашу библиотеку могли использовать и в проприетарных продуктах, то лучше выбрать лгпл
                                                            +2
                                                            Вообще-то public domain тоже гарантирует защиту правa авторства, то есть даже если вы выложите библиотеку вообще без лицензии, никто не сможет «взять и сказать, что это он написал».

                                                              0
                                                              это зависит от законодательства страны. общественное достояние может по-разному пониматься. а ещё если речь идёт о модификации, то никто не запретит не оглашать авторства или участия каких-то сторонних лиц
                                                                +2
                                                                Насчёт законодательства страны Вы правы. Эквадорские программисты смогут надругаться над библиотекой valyard-а и им за это ничего не будет =)

                                                                В Европе, США и России точно запрещено выдавать произведения, скажем, Моцарта, за свои. Даже если Вы сделаете собственную аранжировку.
                                                                0
                                                                Хм, да, и правда. Как-то я просто привык понимать под Public Domain отсутствие вообще всяких упоминаний о лицензии и авторе, мол — делайте что хотите)))
                                                              0
                                                              Все расписано красиво, но получается, что из всех свободных операционок сейчас наибольший вес имеет именно GPLный Linux, корпорации в него больше сил вкладывают, чем в *BSD, и именно он вытесняет с рынка коммерческие Юниксы. Тут ведь еще такая штука: даже если тваш конкурент будет инвестировать деньги в развитие GPL продукта, то и вы сможете воспользоваться этими же наработками.
                                                              А вот для библиотек именно LGPL предпочтительна, они имеют куда большее распространение и влияние, чем конечный продукт, поэтому это неправильно — стремится ограничить возможности их использования со стороны проприетарных разработчиков
                                                              Для драйверов же, на мой взгляд, хороша двойная лицензия GPLv3/BSD, первая, чтобы защитить пользователей и дать им возможность пользоваться всеми возможностями устройства, а вторая, чтобы не обижать разработчиков других систем.
                                                              Ну и немаловажно, что GPL создавалась, как некая альтернатива безобразию с софтварными патентами.
                                                                +2
                                                                Помоему, автор что-то напутал в отношении GPL/LGPL.
                                                                Основное отличие GPL от LGPL — это то, что LGPL позволяет линкование с любыми другими лицензиями. Т.е., LGPL можно спокойно использовать с любых коммерческих проектах вместе с любыми другими лицензиями. Единственное требование LGPL которое при этом надо выполнить — это хранение текста лицензии LGPL рядом с используемым LGPL-кодом и обязательное упоминание авторов сего кода. Т.е., как-бы LGPL не заражает весь проект CopyLeftом.
                                                                  0
                                                                  Есть еще один момент, нельзя статически линковать, нужно оставлять возможность пользователю самостоятельно обновлять эту либу. Мало ли там, какие проблемы с безопасностью возникнут или багфиксы появятся.
                                                                    0
                                                                    Да, всё верно. В оригинале, как раз имелось в виду, что если кто-то распространяет модифицированную версию LGPL-проекта, то исходники этой модифицированной версии должны быть открыты. А при простом использовании LGPL-проекта в составе своего проекта, свой проект может иметь закрытые исходники. Т.е. под «простым использованием» подразумевается именно использование в своём проекте без модификации самого используемого LGPL-проекта.
                                                                    Извиняюсь, если этот тезис получился не совсем однозначным в переводе.
                                                                    0
                                                                    В комментариях не заметил ни одного упоминания Apache License.
                                                                    Для небольших проектов — самое то, особенно для веба.
                                                                      0
                                                                      А зачем плодить разные лицензии? Уже перечисленных достаточно по горло, не так ли?!

                                                                    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                    Самое читаемое