Чем отличается open source от free software

Факты · Критерии · Выводы

В бытовом общении термины «open source» (открытое программное обеспечение) и «free software» (свободное программное обеспечение) часто используют как синонимы для обозначения ПО с доступным исходным кодом. Профессиональное сообщество проводит между ними четкую границу, которая лежит не в технической плоскости, а в области идеологии и философии распространения программ.

Историческое разделение и ключевые организации

Движение за свободное ПО (Free Software Movement) было основано Ричардом Столлманом в 1983 году с запуском проекта GNU. В 1985 году Столлман создал Фонд свободного программного обеспечения (Free Software Foundation, FSF), который сформулировал философскую и этическую основу движения. Ключевым документом стало определение «свободного ПО», основанное на четырех свободах пользователя.

Термин «open source» появился позднее, в 1998 году, как инициатива Эрика Реймонда и других. Его цель — создать более деловой и прагматичный подход к разработке с открытым кодом, который был бы привлекателен для коммерческих компаний. Для продвижения этой модели была создана организация Open Source Initiative (OSI).

Философские и прагматические основания

Различие коренится в исходных мотивациях. Free software — это этическая и социальная кампания. Свобода здесь понимается как вопрос прав, а не цены. Программа считается свободной, если она уважает свободы сообщества пользователей и разработчиков.

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

Четыре свободы Free Software Foundation

FSF определяет программу как свободную, если пользователь обладает четырьмя неотъемлемыми свободами: свобода запускать программу с любой целью (свобода 0); свобода изучать, как программа работает, и адаптировать ее под свои нужды (свобода 1); свобода распространять копии (свобода 2); свобода улучшать программу и публиковать улучшения (свобода 3). Реализация свобод 1 и 3 требует доступа к исходному коду.

Критерии Open Source Definition

OSI публикует Open Source Definition (OSD), состоящий из десяти пунктов. В него входят право на свободное распространение, обязательное наличие исходного кода, разрешение на создание производных работ, отсутствие дискриминации против лиц или групп и специфических областей применения. Критерии OSD сфокусированы на практических условиях лицензирования, а не на этических императивах.

Сравнительная таблица: open source против free software

Аспект Open source Free software
Основной фокус Прагматика, качество кода, эффективность разработки. Этика, свобода пользователя, социальные аспекты.
Ключевой документ Open Source Definition (OSD) от OSI. Определение свободного ПО (Four Freedoms) от FSF.
Отношение к проприетарному ПО Нейтральное или прагматичное. Совместимость приветствуется. Враждебное. Рассматривается как социальная проблема.
Термин «free» Часто избегают из-за двусмысленности с «бесплатным». Настаивают на использовании, подразумевая «свободу».
Целевая аудитория Бизнес-сообщество, корпоративные разработчики, инвесторы. Пользователи, активисты, хакерское сообщество.
Типичные лицензии Лицензия MIT, Apache 2.0, BSD. GNU GPL (все версии), GNU AGPL.
Требование к производным работам Часто разрешает закрытое лицензирование (либеральные лицензии). Требует распространения под той же лицензией (copyleft).

Лицензионное поле: от либеральных до copyleft

Лицензии, одобренные OSI и FSF, во многом пересекаются, но не тождественны. Все лицензии, соответствующие определению свободного ПО FSF, обычно также соответствуют OSD. Обратное не всегда верно из-за идеологических расхождений.

Ключевое различие проявляется в отношении к лицензии GNU GPL. Для движения free software GPL является краеугольным камнем, защищающим свободы через механизм copyleft. Многие в open source-сообществе считают GPL излишне ограничительной для бизнеса, предпочитая более либеральные лицензии вроде MIT или Apache 2.0, которые позволяют включать код в проприетарные продукты.

Где различие стирается или не имеет значения

На практике для рядового пользователя или разработчика, который просто хочет использовать или модифицировать программу, разница часто неочевидна. Подавляющее большинство проектов, которые называют себя open source, соответствуют критериям свободного ПО. Например, ядро Linux, Apache HTTP Server и язык Python можно считать и тем, и другим.

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

Типичные ошибки в понимании

Первая ошибка — считать, что «free software» означает только «бесплатное ПО». На английском языке «free» имеет два значения, и FSF настаивает на трактовке «свободное речь», а не «бесплатное пиво». Бесплатное проприетарное ПО (freeware) не является ни свободным, ни открытым.

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

Третья ошибка — считать все лицензии открытого кода одинаково разрешительными. Лицензия GNU GPL версии 3 (GPLv3) накладывает строгие условия, особенно в отношении патентов и распространения в устройствах (tivoization), которые могут быть неприемлемы для некоторых бизнес-моделей.

Итог

Open source и free software — два взгляда на одну технологическую реальность. Open source делает ставку на прагматичные аргументы качества и эффективности, стремясь к массовому признанию в бизнес-среде. Free software отстаивает этический императив, рассматривая доступ к коду и право его изменять как фундаментальные свободы пользователя. На практике это различие часто сводится к выбору лицензии: либеральной или основанной на принципе copyleft.

Часто задаваемые вопросы

Можно ли продавать программное обеспечение с открытым исходным кодом?

Да, продажа open source ПО полностью разрешена. Свободная лицензия гарантирует право на распространение, в том числе за плату. Однако покупатель, получив копию, приобретает те же права на изучение, изменение и дальнейшее распространение кода.

Является ли программное обеспечение с лицензией MIT свободным или открытым?

Лицензия MIT одновременно соответствует критериям Open Source Definition OSI и определению свободного ПО FSF. Поэтому такое ПО можно корректно называть и open source, и free software. Это одна из самых либеральных разрешительных лицензий.

В чем главный практический недостаток лицензии GPL для бизнеса?

Основное ограничение — требование copyleft. Если вы модифицируете код под GPL или включаете его в свой продукт, вы обязаны распространять всю производную работу под той же лицензией GPL с предоставлением исходного кода. Это исключает возможность создания на его основе закрытого проприетарного продукта.

Существует ли ПО, которое является open source, но не free software?

Теоретически такое возможно, если лицензия соответствует OSD, но нарушает одну из четырех свобод FSF. На практике таких лицензий, одобренных OSI, крайне мало. Историческим примером была лицензия Apple Public Source License (APSL) версии 1.x, которая не была признана FSF как свободная.

Понравилась статья? Поделиться с друзьями: