20 лет инициативе Open Source

«Всё началось с того, что компания Netscape Communications Corporation опубликовала исходный код web-браузера Netscape Communicator как открытое программное обеспечение. Причиной такого поступка послужила конкуренция с браузером Microsoft Internet Explorer, которая привела к заметному снижению прибыли.» Именно так мы планировали начать статью про 20-летие OSI. Но потом как-то подумалось, что это нам всем далеко за 30, а Хабр наверняка читают те, кто в 1998 году только родился, и начать рассказ с середины «для посвящённых» было бы просто нечестно. Конечно, всё началось раньше. Гораздо раньше.

6ff04147d1fd04bddb9216f8839e7975.png



Исторический фон для создания OSI


Free Software зародилось вместе с первыми ПК примерно в середине 70-х, но тогда оно всухую проигрывало проприетарному ПО, которое было единственной основой всего мира программного обеспечения. И тем более, не было ни идеологии, ни философии open source — в общем, «настоящих буйных мало, вот и нету вожаков». Первый слом произошёл с появлением Интернета, в котором Unix-подобные системы играли ощутимую роль.

Тогда же появился и первый «вожак» и по-хорошему «буйный», который впервые сформулировал концепцию Free Software, — Ричард Столлман. После первого эксперимента со свободным ПО (драйвер для принтера), он приступил к разработке собственной операционной системы Hurd. Понятно, что один он с ней никогда бы не справился, поэтому в 1983 году он создал GNU (GNU«s Not UNIX), внутри которого при прямом участии Столлмана появились и Emacs (текстовый редактор), и GCC (компилятор), и сборщик gmake, и др. Спустя 2 года существования GNU выпустили манифест, в котором не только рассказали о проекте, но и призвали программистов всего мира присоединиться к движению Free Software.

40b05a9e869804f948f95b8597b7a5eb.png
Fossmint.com. Молодой Столлман и его философия.

Со следующей организацией Столлмана знакомы многие из нас (и многие получают их информативные рассылки) — Free Software Foundation. Тем временем, текстовый редактор Emacs был использован компанией Unipress для создания своего платного проприетарного продукта. Это был удар со стороны  бизнеса — стало ясно, что идею нужно каким-то образом защищать. Сперва появилась идея copyleft (по образцу copyright) — кто угодно мог использовать код, модифицировать его и распространять, но только на тех же свободных условиях. Из копилефта выросла лицензия GNU General Public License (GPL) как ответ наглому Юнипрессу. В 1985 году FSF сформулировал четыре основных признака, по которым можно отнести софт к свободному ПО. Вот они:

  1. запускайте ПО для любых нужных вам целей;
  2. изменяйте программу в соответствие с вашими потребностями — чтобы эта свобода была реализована на практике, должен быть доступ к исходному коду, так как без этого внести изменения в программу весьма проблематично;
  3. распространяйте копии, бесплатно или за вознаграждение;
  4. распространяйте изменённые версии ПО, чтобы сообщество могло извлечь выгоду из всех ваших улучшений.


К тому времени у Столлмана появились сторонники и… противники, которые вроде как были за свободное ПО, но и поживиться за его счёт были не прочь. Столлман был (и остаётся!) воинствующим сторонником идеального мира полностью открытого ПО, а вот часть его последователей решили создать полумеры и придумали open source.

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

OSI добра


Итак, всё началось с того, что компания Netscape Communications Corporation опубликовала исходный код web-браузера Netscape Communicator  как открытое программное обеспечение. Причиной такого поступка послужила конкуренция с браузером Microsoft Internet Explorer, которая привела к заметному снижению прибыли. Кстати, выход Netscape в опенсорс через 5 лет привёл к тому, что появился новый браузер — Mozilla Firefox (между делом, вот прекрасная PDF со сравнением проприетарного и свободного ПО — на англ. языке.).

e2bc4c5e38703e4c44b175816c23a23a.png
Прикладное софтоведение. Источник: Google

Как появился Open Source, который должен был стать понятным всем? 3 февраля 1998 года в Пало-Альто собралась конференция по Free Software, которая и дала начало явлению (а это явление — социальное, культурное, экономическое) open source.

Люди, собравшиеся на конференции, преследовали две цели: во-первых, сделать концепцию свободного ПО более понятной и прозрачной для широких масс, а во-вторых, отвязать мысли пользователей от слова «free», что испокон капиталистических веков трактовалось не только как свобода, а больше как «бесплатный». Ну примерно как на этой картинке:

ee5082963674df454e35bb438aae2ab9.png

Поэтому одна из участниц конференции, Кристин Петерсон, предложила формулировку «open source». Примерно в это же время Эрик Раймонд и Брюс Перенс основали Open Source Initiative (OSI) — организацию, целью которой стало продвижение идеологии открытого ПО, оказание технической поддержки и, конечно, контроль за соответствием практики использования софта свободным лицензиям (коих к нашему времени стало несколько). Понятно, что Столлман был возмущён таким раскладом, обвинял OSI в том, что они от философии ушли к методологии разработки (сравните free и open).

Что было дальше? В принципе, всё ожидаемо: коммерциализация отдельных аспектов, создание «лукавых» с точки зрения free software форм лицензирования (например, ПО, которое можно использовать в коммерческих разработках) и главное, потрясающе главное — то, ради чего и почему сегодня про 20-летие Open Source на Хабре пишет разработчик проприетарной коммерческой CRM-системы — open source покорил мир, в движение влились сотни тысяч, миллионы программистов со всего света. Появились приложения, программы, целые системы и отдельные библиотеки, операционные системы и языки программирования. Без опенсорса нет практически ни одного серьёзного проекта. Одними из первых open source поддержали Linux, Sendmail, Perl, Python, Apache. А одним из первых проектов, показавших, что свободное программное обеспечение может стать ещё и успешным бизнесом, стала SugarCRM, получившая несколько популярных и не очень форков.

За что стоит любить open source?


  • Первое и главное — над открытым исходным кодом работают сотни тысяч программистов, увлечённых профессионалов, которые создают удобные библиотеки, инструменты, полезные программы. Это не просто разработчики, это наднациональное сообщество, объединённое одной целью — сделать мир лучше, жизнь проще, будущее технологичнее. Это звучит очень пафосно, но, если вы не обитатель Хабра, а просто случайно попали в статью с поиска, зайдите на GitHub и посмотрите на количество опенсорсных проектов — там есть открытое ПО на 337 языках программирования, среди которых первое место держат JavaScript, Python, Java, Ruby, PHP, C++.
    fba76e88165e6a55a831a9bb214a0b3c.png

    Forbes.com
  • Возможность находить любое, даже самое уникальное ПО для работы и обучения даёт огромные возможности малому бизнесу, студентам и науке.
  • Open Source проекты — это практика для студентов-программистов, без понедельников и начальников. Можно начинать с небольших проектов, разбираться, создавать своё, а потом контрибьютить в известные проекты, пока одногруппники дозубривают доисторические учебники. Это даст огромный плюс и в учёбе, и в глазах работодателя.
  • Активные сообщества обеспечивают поддержание продуктов в актуальном состоянии, происходит постоянная отладка — таким образом, популярное свободное ПО часто обновляется и обеспечивает пользователей всеми необходимыми функциями.
  • Свободное ПО можно адаптировать к своим потребностям — если есть время, голова на плечах и, как ни странно деньги (опционально). То есть в теории можно не ждать, когда какой-то вендор вытащит фичи из бэклога, а взять open source и доработать самому.
  • Свободное ПО делает коммерческий софт лучше и дешевле для конечного пользователя, ведь опенсорсные компоненты не ложатся в себестоимость. Например, мы в разработке своей RegionSoft CRM используем два важных open source проекта. Первый — это СУБД  Firebird, которая нас не подводит на внедрениях даже самого крупного масштаба, второй — виртуальная АТС Asterisk, мощная система VoIP, которая покрывает почти все потребности бизнеса в телефонии и управлении телефонией.


На самом деле, мы знаем, за что open source любить не стоит, но не писать же об этом в юбилейной статье! Обязательно как-нибудь коротко напишем об аргументах против (исключительно в бизнес-решениях).

Ну и напоследок два факта об open source:

  • Логотип OSI — отсылка к букве О (open), которая скрещена с замочной скважиной, символом разблокированного исходного кода. Его создал Колин Виброк.
    f54ea6f0cca249d70827515eb36922bf.png
  • Microsoft некоторое время назад перестал бороться с open source, в 2016 году присоединился к Linux Foundation, и теперь даже появился слоган «Microsoft loves Linux». Корпорация уже открыла исходный код .NET Core 1.0, PowerShell, Visual Studio Code и Edge. На GitHub Microsoft в лидерах по количеству участников и опережает Facebook, NPM и Angular.


15 лет назад Стив Балмер назвал open source раковой опухолью, а сегодня Сатья Наделла считает совершенно иначе.

Вот, как это выглядит:

f4057e53e51022f756587d7deded4d47.jpg

А вот прекрасная альтернативная трактовка:

02142ad615dc58431b5863748d996506.jpg


Согласитесь, мало кто за 20 лет из инициативы и бельма на глазу проприетарного ПО смог стать краеугольным камнем развития и функционирования всей отрасли информационных технологий.

А сегодня, с опозданием почти на неделю, мы поздравляем open source с 20-летием и даже не будем желать развития и процветания — потому что без него уже невозможно развитие науки, бизнеса, ИТ, искусственного интеллекта, нейросетей, космоса. В общем, всего человечества.

Be open, друзья!

© Habrahabr.ru