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



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


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

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


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 со сравнением проприетарного и свободного ПО — на англ. языке.).


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

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

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



Поэтому одна из участниц конференции, Кристин Петерсон, предложила формулировку «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++.


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

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

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

  • Логотип OSI — отсылка к букве О (open), которая скрещена с замочной скважиной, символом разблокированного исходного кода. Его создал Колин Виброк.

  • 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 раковой опухолью, а сегодня Сатья Наделла считает совершенно иначе.

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



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


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

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

Be open, друзья!

Комментарии (18)


  1. easimonenko
    09.02.2018 17:08
    -1

    Нисколько не умаляя достоинства статьи:


    open source -> открытые исходники


    free software -> свободное ПО


    В чём проблема писать и говорить на чистом русском языке, а не на креольском?


    1. Axelus Автор
      09.02.2018 17:26
      +4

      Это общепринятая терминология в области IT. Причина лишь в этом :)


      1. easimonenko
        09.02.2018 18:56
        +1

        Не верно, потому что:
        1) при заимствовании терминологии в русский язык пишут кириллицей, плюс слова видоизменяются под язык, например, program -> программа;
        2) не заимствуют терминологию, если есть родные эквиваленты, причём давно устоявшиеся.


        1. Analitik_Telecom
          09.02.2018 19:03
          +1

          Мицгол, перелогиньтесь! :-) Вот три года отпахал в open source проекте, и ни разу не говорили мы про «открытые исходники», «опенсорс» — да, было. Да и вообще в ИТ-среде крааааайне редко заменяют open source на открытые исходники.


    1. Wexter
      09.02.2018 17:34

      Open source/free software это не только открытые исходники и свободное ПО, это больше идеология и в этом контексте бессмысленно переводить их на русский язык.


      1. easimonenko
        09.02.2018 18:58
        +3

        Почему тогда на официальном сайте GNU, одного из проектов FSF, например, здесь http://www.gnu.org/philosophy/philosophy.html все слова переведены?


        1. khim
          09.02.2018 20:56

          Потому что фанатики фанатичны во всём? Open Source — прагматики, Свободное ПО — фанатики, неудивительно что первые говорят по русски об «опенсорс», а вторые — о “ПО с открытыми исходными текстами”… первое просто тупо кореоче и проще произнести…


          1. easimonenko
            09.02.2018 23:14
            +1

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


  1. easimonenko
    09.02.2018 17:15

    Неплохо было бы уточнить, в чём сыр-бор. Чем отличается ПО с открытыми исходниками от свободного ПО? Ведь не всякое открытое ПО является свободным. В этом одна из основных подоплёк и спора между FSF и OSI. В мире открытого ПО преобладают лицензии типа BSD, MIT, Apache, которые позволяют превращать открытое ПО в закрытое ПО. Это противоречит изначальным целям открытия и освобождения исходников.


    1. justhabrauser
      10.02.2018 09:18

      Это древний холивар.
      Вы немного ошибаетесь: всякое открытое (open) ПО есть свободное (free), но не наоборот.
      Там было что-то про free beer, не помню уже.
      Поэтому freeware != opensource software.
      Ну так тут принято.
      Сравните лицензии MIT и GNU


      1. khim
        10.02.2018 09:44

        Вы немного ошибаетесь: всякое открытое (open) ПО есть свободное (free), но не наоборот.
        Все 4 варианта возможны.
        WTFPL — Free Software, но не Open Source
        Artistic-1.0 — Open Source, но не Free Software
        Хотя да, лицензий, которые признаёт FSF и не признаёт OSI и наоборот — немного.

        А по поводу того, что free software — лучше… Столлман аж целое эссе написал… что, впрочем не отменяет того факта, что количество людей, желающих «вести священную битву за свободное ПО» — меркнет на фоне количества прагматиков…

        Я бы даже сказал, что без прагаматиков — ничего бы не было. Кроме emacs'а, может быть. Самый важный свободный проект, GCC, изначально был создан Столлманом, но «в каждой бочке затычкой» он стал благодаря прагматикам. А когда Столлман решил закрутить гайки, прагматики просто взяли — и создали другой компилятор и другую стандартную библиотеку.


  1. KeyJoo
    09.02.2018 23:24
    -2

    Да хотя бы на картинки посмотрите америкосовские: их менталитет не таков, как наш, и они видят в корпорации Microsoft — Оганизованную религию с богом Windows, а в OpenSource = религию атеизма BSD/Nix/Android etc… Не мракобесие ли чудят? Везде ищут тайный смысл...


    1. KoCMoHaBT61
      10.02.2018 08:44

      … и все молчим об Apple.


  1. arsenenko
    10.02.2018 11:26

    ДА


  1. true-grue
    10.02.2018 16:15
    +2

    А я бы хотел напомнить о ПО с «лицензией» public domain (PD, «общественное достояние»). Такого рода ПО всегда находилось вдали от идеологической конфронтации и коммерческой выгоды. Конечный пользователь о нем часто и не слышал. Но именно программы с пометкой PD были двигателем развития информатики. Достаточно вспомнить такие исторические примеры, как SPICE и MACSYMA.

    Помните знаменитое письмо Гейтса к членам клуба любителей компьютера по поводу кражи Altair BASIC? Менее известно, что в то же самое время вышел замечательно спроектированный Tiny BASIC (1976), созданный Деннисом Аллисоном из Стэнфордского университета. В коде Tiny BASIC фигурировало «Copyleft; All Wrongs Reserved». Tiny BASIC с различными добавлениями успешно использовался на некоторых микрокомпьютерах.

    Мне думается, формат PD для определенного рода программ и сегодня актуален.


    1. EviGL
      10.02.2018 17:51
      +1

      А в чём основные отличия от Apache, BSD, MIT? Мне всегда казалось, что последние — как раз адаптация для мира ПО того же общественного достояния.


    1. true-grue
      10.02.2018 18:33
      +1

      Как ни странно, на этот вопрос не так уж легко ответить. По крайней мере, ответ с учетом юридических тонкостей вполне заслуживает отдельной заметки на Хабре.

      Некоторые известные разработчики, в частности, D. J. Bernstein, считают, что явное указание своей работы, как общественного достояния, вполне достаточно. cr.yp.to/publicdomain.html

      Другие указывают, что в некоторых странах понятие «общественное достояние» может трактоваться по-разному.

      Насколько я знаю, в настоящее время наиболее полно соответствует понятию public domain лицензия CC0: creativecommons.org/share-your-work/public-domain/cc0


  1. AquiHostStrider
    10.02.2018 21:56
    +1

    Я просто присоединюсь к поздравлениям. Пожелаю всем творческих и профессиональных успехов. Да, про GNU и FSF я в своё время узнал из журнала «Компьютерное Обозрение», itc.ua. (Я, правда, бросил его читать более 10 лет назад, но речь сейчас не об этом.)

    А кое-кому, вроде сотрудников Santa Cruz Operation, пожелаю… м-м-м… э-э… всего того, чего они заслуживают, в десятикратном размере (злорадный хохот).