Разница между бесплатным и open source программным обеспечением. Открытое программное обеспечениеOpen Source Что же такое Open Source

Программное обеспечение с открытым исходным кодом (OSS) - это компьютерное программное обеспечение, распространяемое с его исходным кодом, доступным для модификации. Обычно программное обеспечение включает лицензию для программистов на изменение программного обеспечения любым способом. Они могут исправлять ошибки, улучшать функции или адаптировать программное обеспечение в соответствии со своими потребностями. Инициатива с открытым исходным кодом (OSI) является ведущим органом в области OSS; их определение программного обеспечения с открытым исходным кодом соответствует правилам по 10 критериям.

К ним относятся:

  • Распространение программного обеспечения
  • Доступность исходного кода
  • Распространение лицензий
  • Свойства лицензии
  • Антидискриминация

Лицензии

Различные лицензии позволяют программисты для изменения программного обеспечения с различными условиями. OSI утверждает лицензии, соответствующие их определению программного обеспечения с открытым исходным кодом. 5 из самых популярных лицензий в соответствии с базой знаний Black Duck:

  1. Лицензия MIT
  2. Общая публичная лицензия GNU (GPL) 2. 0
  3. Лицензия Apache 2. 0
  4. GNU General Public License (GPL) 3. 0
  5. Лицензия BSD 2. 0 (3-пункт, новый или пересмотренный)

Когда вы меняете исходный код, одним из требований OSS является включение того, что вы изменили, а также ваши методы. Программное обеспечение, созданное после модификации кода, может быть бесплатным или бесплатным.

Разница между открытым исходным кодом и коммерческим программным обеспечением

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

В результате пользователи часто платят за это.

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

Программное обеспечение с открытым исходным кодом Vs. Бесплатное программное обеспечение

Вопреки распространенному мнению, ни одно из них не фокусируется на стоимости или недостатке этих программ.

Open Source влечет за собой бесплатную доступность исходного кода и дистрибутива. Бесплатное программное обеспечение, таким же образом, включает в себя модификацию кода, но подчеркивает, что пользователям, которым нравится свободное программное обеспечение, нравится делать то, что им нравится. Фонд свободного программного обеспечения излагает 4 условия для того, чтобы программное обеспечение считалось полностью бесплатным.

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

Преимущества программного обеспечения с открытым исходным кодом

В то время как стоимость является движущей силой, OSS имеет несколько дополнительных преимуществ:

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

Популярные типы программного обеспечения с открытым исходным кодом

Технологии с открытым исходным кодом помогли создать большую часть Интернета.

Кроме того, многие из программ, которые вы и я используем каждый день, основаны на технологиях с открытым исходным кодом. Например, Android OS и Apple OS X основаны на ядре и Unix / BSD с открытым исходным кодом, соответственно.

Другое популярное программное обеспечение с открытым исходным кодом:

  • Веб-браузер Mozilla Firefox
  • Почтовый клиент Thunderbird
  • Язык сценариев PHP
  • Язык программирования Python
  • Сервер веб-сервера Apache
  • > Open Source и разработчики

Проекты OSS - это возможности сотрудничества, которые улучшают навыки и создают связи в этой области. Разработчики должны владеть стандартными инструментами разработки с открытым исходным кодом.

Коммуникационные средства

  • - электронная почта, обмен сообщениями в реальном времени, форумы и вики помогают разработчикам находить решения или отскакивать идеи друг от друга. Системы управления распределенными версиями
  • - Когда несколько разработчиков в разных географических точках изменяют данные и файлы, эти системы управляют различными версиями и обновлениями. Отслеживание ошибок и списки задач
  • - Разрешить крупномасштабным проектам контролировать проблемы и отслеживать их исправления. Инструменты тестирования и отладки
  • - Автоматизация тестирования во время интеграции системы и отладки других программ. Заключение

Тысячи проектов с открытым исходным кодом являются альтернативой проприетарному программному обеспечению. Работа над проектом OSS как путь к созданию карьеры в разработке программного обеспечения. Кроме того, программисты могут оттачивать свои навыки, работая над крупнейшими программными продуктами в мире. Facebook, Google и LinkedIn в качестве Open Source, поэтому разработчики могут делиться знаниями, внедрять решения и вносить вклад в стабильные, функциональные продукты.

В 1990-е годы свободное ПО считалось экзотикой в корпоративной среде, а единственным заметным конкурентом проприетарных гигантов во главе с Microsoft долгое время была компания Red Hat , однако со второй половины 2000-х годов ситуация начала быстро меняться. Открытое программное обеспечение стало мейнстримом для многих крупных компаний, и появились десятки надежных поставщиков открытого ПО, которые достигли надлежащего высокого уровня экспертизы и опыта для того, чтобы обслуживать крупных и требовательных корпоративных клиентов.

На 2014 год действуют немало игроков, которые в ряде направлений успешно конкурируют с поставщиками коммерческого ПО. Помимо Red Hat , это такие ориентированные на открытый софт организации, как Google , Apache Software , Novell , SUSE , Acquia и др. На рынке появляется все больше OpenSource аналогов существующих проприетартных решений. Сообщества разработчиков открытого ПО становятся сильнее и повышают качество и функциональность продуктов.

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

Почти во всех отраслях и направлениях деятельности существует возможность использования ПО на основе открытого исходного кода. Почти у каждого проприетарного ПО имеется действующий аналог с открытым исходным кодом:

  • Cisco VPN – OpenVPN,
  • Oracle Database – PostgreSQL ,
  • Microsoft Hyper-V – OpenVZ,
  • MS Active Directory – Samba,
  • Avaya IP Office – Asterisk и т.д.)

Исходя из конкретных задач бизнеса, можно сравнить стоимость и сроки внедрения решения на базе проприетарного ПО и OpenSource.

Открытое ПО в странах мира

США

В марте 2016 года администрация президента США представила предварительную версию законопроекта об использовании государственными ведомствами. Участники рынка поддержали инициативу.

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

Индия

В октябре 2011 г стало известно , что правительство штата Пенджаб постановило приобрести ПО от Microsoft , отменяя принятое в 2008 г. решение об установке бесплатного ПО на 46 000 компьютеров в 4 956 школах. `Мы решили пересмотреть предыдущее решение,` - заявил Бальдео Пурушарта(Baldeo Purushartha), министр школьного образования штата.

Правительство Пенджаба запустило программу информатизации для учеников 6-12 классов в 2004-2005 гг. Департамент ИКТ-образования штата Пенджаб реализует проект, в рамках которого во всех начальных школах организуются компьютерные классы с необходимым оборудованием, ПО и широкополосным подключением к интернету. При этом на государственном уровне широкую поддержку получило решение Bharat Operating System Solutions (BOSS), протестированное и сертифицированное Linux Foundation для работы в школах, благодаря своей финансовой доступности.

По заявлению президента штата Пенджаб, по состоянию на 2008 г. минимальная стоимость обновления ПО с лицензией Microsoft - на 16 578 компьютеров из расчета 1 375 рупий на компьютер - составляла 23 млн. рупий за пять лет. По этой причине в сентябре 2008 г. правительство штата Пенджаб решило приобрести и инсталлировать BOSS во всех государственных начальных школах и заявило, что с 2011 года все ученики начальных школ будут обучаться пользованию BOSS. Работы были завершены в апреле 2011 года, включая обучение 6600 учителей.

Но 8 августа 2011 года, после всестороннего анализа результатов проекта, руководитель департамента школьного образования штата Пенджаб заявил, что `департамент школьного образования вернется к использованию ПО от Microsoft... для обучения детей в начальных классах государственных школ`. Стоимость обновления лицензий составит около 7 млн. рупий, 3,77 млн. из которых уже выделены правительством.

Более того, около 90000 компьютеров будут установлены в государственных школах, подключенных к сети EDUASAT, через которую ученики смогут смотреть прямые включения с различных лекций. Согласно предварительным расчетам, начальная цена ПО и лицензии Microsoft составит 30 млн. рупий. В эту сумму не входит цена оборудования и т.п.

Ранее, в феврале 2011 года, было принято решение об использование BOSS для работы в сети EDUASAT. Но теперь, по словам Пурушарта: `В целях как можно более полного использования установленных компьютеров, на которых ученики будут осваивать ПО Microsoft, мы хотим использовать Microsoft также и в EDUASAT`.

Отметим, что Пенджаб был первым штатом, который активно внедрил Linux в школах. В настоящее время BOSS по-прежнему используется в индийских штатах Харьяна, Гуджарат, Керала и Уттар Прадеш.

Германия

Согласно недавнему исследованию Технологического института Джорджии (США), Германия занимает четвертое место в мире по уровню проникновения СПО в госсекторе. В 2001 году на Linux перешло Министерство иностранных дел ФРГ (а вместе с ним - все посольства и консульства). Несколько раз консалтинговая компания McKinsey подтверждала: внешнеполитическое ведомство существенно экономит, используя Linux , OpenOffice и Thunderbird вместо майкрософтовского набора из Windows , Office и Outlook. Говорилось даже, что дипломаты тратят на IT меньше, чем сотрудники любого другого госоргана.

Но фокус в том, что в эксплуатации условно бесплатный софт иногда дороже, чем безусловно платный. Динозавры вроде Microsoft могут осуществить сопровождение качественнее и дешевле, чем небольшие компании, занимающиеся поддержкой Linux. И иногда бывает выгоднее купить лицензию. Поэтому, например, то же самое немецкое внешнеполитическое ведомство в этом году возвращается к софту Microsoft. Чиновники оценили в деньгах перманентные проблемы с техподдержкой, а также сложность в освоении СПО (на это жаловались многие сотрудники) и высказались в том духе, что скупой платит дважды .

Россия

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

Проект "Пингвин" - внедрение Открытого ПО

Проект "Пингвин" - проект внедрения Технологий Линукс и Открытого ПО в школы и вузы России в 2009-2010гг. финансируется ФАО - Федеральным Агентством Образования РФ. По контракту по проекту "Пингвин" должны быть выполнены три этапа:

  1. Доработка учебников и методического обеспечения
  2. Разработка технической поддержки и Интернет-порталов
  3. Обучение 60 тысяч преподавателей технологиям Линукс и Открытому ПО

1. Разработка базовых Учебников по информатике для вузов и школ на базе Открытого ПО в соответствии с госстандартами и требованиям ЕГЭ по информатике и ИКТ была выполнена в 2008-09гг. 2. Разработка Интернет-поддержки с базовыми учебниками информатики и базовыми пакетами Открытого ПО для Виндуз и Линукс была выполнена в 2005-2009гг. 3. Пробные курсы для преподавтаелей информатики и учителей школ Технологиям Линукс и Открытому ПО были проведены и отработаны в 2005-2007гг. совместно с московскими педвузами МПГУ и МГПУ при поддержке ЮНЕСКО, корпорации ИБМ и ЛинуксЦентра.

    • ВАК, проф.,док.комп.наук 16:32, 15 октября 2009 (UTC)

Открытое ПО - мнение Президента РФ

На этой встрече Д.А.Медведев сказал:

"...Если мы сейчас подсядем полностью на иглу иностранного программного обеспечения и «заложимся» на долгие годы, то мы с нее не слезем. И будем развиваться вопреки мировым тенденциям. В то же время объявить, что мы завтра все компьютеры в школах (а потенциально это гораздо более серьезная сеть компьютеров) переведем на программы с открытым кодом, со свободной лицензией, тоже невозможно, потому что есть проблемы состыковок, есть технологические проблемы. То есть здесь готовности полной тоже нет. Что делать?

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

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

Декабрь 2010 года: Путин распорядился перевести власть на Linux

История документа о переходе органов власти на свободное ПО длится с 2007 г., когда в Мининформсвязи начали разрабатывать «Концепцию развития разработки и использования свободного программного обеспечения в РФ», которая была опубликована весной 2008 г. Однако, последовавшая вскоре отставка министра Леонида Реймана и назначение на его должность Игоря Щеголева повлекли пересмотр концепции.

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

Пакеты Открытого ПО для школ

Пакеты Открытого ПО для школ рассчитаны на установку программ в школах и домашних компьютерах с операционными системами Windows и Linux. Компакт-диск Линукс Live-CD рассчитан для работы на с Открытом ПО на домашних компьютерах с Windows без установки Linux на ЭВМ.

Решениями правительства РФ отечественное открытое программное обеспечение в 2008 и 2009 гг. было разослано во все школы Российской Федерации и будет установлено во всех государственных и бюджетных организациях для обеспечения национальной безопасности в сфере ИТ.

Открытая операционная система Linux

Открытый офисный пакет прорамм

Открытый офисный пакет Open Office может свободно устанавливаться и использоваться не только на персональных компьютерах с ОС Linux , но и на компьютерах с ОС Windows . При этом документы и файлы, подготовленные в офисном пакете MS Office могут читаться и обрабатываться в пакете Open Office.

Состав Открытого офисного пакета Open Office:

  1. OpenOffice.org Writer - Текстовый редактор Writer с богатыми возможностями для создания писем, книг, отчетов, информационных бюллетеней, брошюр и других документов, совместим с MS Office.
  2. OpenOffice.org Calc - Электронные таблицы Calc имеют продвинутые средства анализа, построения диаграмм и возможности принятия решений ожидаемые от высококачественных электронных таблиц, совместим с MS Office.
  3. OpenOffice.org Impress - редактор презентаций Impress обеспечивает все общие средства представления мультимедиа, такие как специальные эффекты, анимация и средства рисования. Совместим с форматом файла Microsoft PowerPoint, и может также сохранять вашу работу в многочисленных графических форматах, включая Macromedia Flash (SWF).
  4. OpenOffice.org Base - база данных Base обеспечивает инструментальные средства для работы с базами данных в пределах простого интерфейса. Он может создать и редактировать формы, отчеты, запросы, таблицы, представления и отношения, так чтобы управление связанной базой данных было почти таким же как в других популярных приложениях баз данных. Base включает HSQLDB как его заданный по умолчанию механизм реляционной базы данных. Он может также использовать dBASE, Microsoft Access, MySQL или Oracle, или любую ODBC или JDBC совместимую базу данных.
  5. Open Office Draw векторный графический редактор Draw, с помощью которого можно выполнять все от простых диаграмм или блок-схем до трехмерных художественных работ. Draw может импортировать графику из многих распространенных форматов и сохранять ее в более чем 20-и форматах, включая PNG, HTML, PDF и Flash.
  6. Gimp - растровый графический редактор Gimp, программа для создания и обработки растровой графики. Частично поддерживается векторная графика.

Открытый текстовый редактор Writer

OpenOffice.org Writer - текстовый процессор и визуальный редактор гипертекстов, входит в состав OpenOffice.org и являетcя свободным программным обеспечением (выпускается под лицензией LGPL).

Writer похож на Microsoft Word и функциональность этих редакторов примерно равна. Предоставляет пользователю современный инструментарий для набора, редактирования и форматирования документов.

Наряду с привычным интерфейсом и функциональностью:

* создание и оформление абзацев текста и страниц, * добавление разделов и колонтитулов, * вставка изображений и мультимедийных объектов, * предварительный просмотр и печать документов, * запись изменений и рецензирование текстов, * автоматическое оформление оглавления, указателей и сносок, * добавление макросов и элементов управления, * работа с таблицами, * проверка орфографии и многое другое,

Концепция применения стилей - замечательное решение, облегчающее создание и форматирование документов. Работа со стилями поддерживается во всех компонентах офисного пакета, но именно в OpenOffice.org Writer она реализована наиболее полно.

Пять групп стилей: абзацев, символов, страниц, врезок и списков - предоставляют пользователю множество возможностей для лёгкого форматирования документов. Специальная панель «Стили и форматирование» позволяет управлять стилями, изменяя существующие и создавая новые. И чем сложнее документ, чем чаще приходится изменять его, тем более очевидным становится преимущество стилевого оформления.

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

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

Writer поддерживает большое количество форматов для импорта и экспорта файлов, в том числе сохранение в PDF и импорт docx. А отправка файла по электронной почте осуществляется одним нажатием кнопки.

Открытые электронные таблицы Calc

start: OpenOffice.org Calc - приложение для работы с электронными таблицами. С его помощью можно анализировать вводимые данные, заниматься расчётами, прогнозировать, сводить данные с разных листов и таблиц, строить диаграммы и графики.

Calc - актуальный и востребованный в бизнес-среде компонент OpenOffice.org для работы с электронными таблицами. Излюбенный инструмент бухгалтеров и менеджеров для создания отчётности.

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

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

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

Поддерживаются связи между разными электронными таблицами и совместное редактирование данных (начиная с версии OpenOffice.org 3.0).

Доступны разнообразные настройки для печати готовых листов на принтере: масштаб, поля, колонтитулы. А встроенная проверка орфографии, как в текстовом редакторе, позволит улучшить качество готового отчёта.

Открытый векторный графический редактор Draw

OpenOffice.org Draw - векторный графический редактор, по функциональности сравнимый с CorelDRAW, входит в состав OpenOffice.org.

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

графический редактор Draw идеально интегрирован в систему OpenOffice.org, что позволяет осуществлять обмен рисунками между любыми модулями системы очень просто. Например, если вы создаете рисунок в Draw, то легко можете использовать его в документе Writer с помощью копирования и вставки. Вы также можете работать с графикой непосредственно в модулях Writer и Impress, используя подмножество функций и инструментов из Draw.

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

Необходимость наличия векторного редактора в составе офисного пакета не вызывает сомнений. Сфера применения такого редактора довольно широкая: от простейших рисунков и объявлений до схем, диаграмм и чертежей.

Кроме собственных объектов, можно вставлять в рисунки диаграммы, формулы и прочие элементы, созданные в других компонентах OpenOffice.org. Draw также поддерживает экспорт растровых изображений большинства форматов, как распространённых, так и специальных.

Draw имеет все необходимые инструменты, присущие векторным редакторам:

* Соединительные линии, размерные линии, таблицы. * Работа с текстом и текстовыми эффектами; * Изменение цветовой заливки, тени, прозрачности; * Размещение, привязка и управление объектами при помощи слайдов, слоёв и направляющих; * Поддерживаются различные операции над объектами: сложение вычитание, группировка и преобразование фигур; * Рисование трёхмерных объектов; * Рисование с помощью графических примитивов, кривых Безье; * Эффекты: освещение, морфинг и дублирование;

Кроме собственных объектов, можно вставлять в рисунки диаграммы, формулы и прочие элементы, созданные в других компонентах OpenOffice.org. Draw также поддерживает экспорт растровых изображений большинства форматов, как распространённых, так и специальных.

Использование Галереи (хранилища объектов) позволяет упорядочить имеющиеся изображения, а поддержка стилей текста экономит время при изготовлении однотипных объектов.

Готовый рисунок или чертёж можно распечатать на принтере или экспортировать в растровое изображение или, к примеру, в PDF.

Максимальный размер рисунка в Draw - 300х300 см.

Начиная с версии 3.0 OpenOffice.org, Draw поддерживает не только экспорт, но и импорт PDF (необходима установка специального расширения OpenOffice.org).

Открытая реляционная база данных Base

Base - открытая реляционная база данных, позволяющая создавать, редактировать и обрабатывать табличные данные.

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

Редактор запросов позволяет создавать практически весь спектр SQL-запросов к базам данных на выборку, изменение, добавление данных. Поддерживаются вложенные запросы и запросы с параметрами. Визуальная часть редактора упростит начинающему пользователю процесс конструирования запросов.

Редактор форм позволяет воспользоваться практически любым стандартным инструментом управления содержимым БД. Здесь предоставляются элементы управления текстовыми, числовыми, бинарными полями, списками, «выпадающими» списками, таблицами, кнопки, календарь и другие элементы.

инструмент для работы с внешними источниками данных плюс встроенная СУБД HSQLDB. С помощью Base можно добавлять, удалять, редактировать записи баз данных: MySQL, HSQLDB (обычно поставляется в комплекте с OpenOffice.org), PostgreSQL, DB2, Oracle.

Также возможна работа с таблицами DBF, MS Access, адресными книгами, текстовыми файлами, а также электронными таблицами, созданными в OpenOffice.org Calc или MS Excel.

Доступ к внешним источникам данных осуществляется с помощью ODBC, JDBC, SDBC и других технологий. Полный перечень поддерживаемых технологий и источников данных зависит от используемой операционной системы.

Более сложное управление и обработка данных выполняется при помощи макросов и средств языка программирования ООBasic.

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

В Base имеется встроенный мастер отчётов с базовыми функциями по созданию отчётов или таблиц или запросов. Но существует более лучший инструмент создания отчетов - Sun Report Builder. Этот инструмент позволяет создавать отчёты практически любой сложности. Он поддерживает группировку, выполнение встроенных пользовательских функций, условное форматирование. Результатом работы SRB является документ Writer или Calc, которые в дальнейшем можно распечатать или редактировать.

С помощью Base можно создавать источники данных. К примеру, организовав подключение к внешней базе данных в Base и отфильтровав нужные данные SQL-запросом, можно работать с этими данными в OOo Calc.

Открытые системы программирования

  1. FreePascal 2.0.4 - Свободный Компилятор Pascal и Object Pascal - в качестве IDE рекомендуется Lazarus или KDevelop.
  2. Eclipse - Открытый комплекс открытых систем программирования для разработки модульных кросс-платформенных приложений.
  3. Gambas - свободная система программирования 2)VISUAL BASIC IDE для создания программ на основе Qt, GTK, OpenGL, SDL а также CGI WEB

Минимальный пакет Открытого ПО для школ

Включает программы Открытого ПО

  1. графическую среду XFCE;
  2. быстрый текстовый редактор Abiword;
  3. редактор электронных таблиц Gnumeric.

Минимальный пакет программ Открытого ПО:

  1. Офисный пакет: OpenOffice.org 2.3;
  2. Веб браузер: Firefox 2.0;
  3. Редактор изображений: Gimp 2.4;

Дополнительный диск Содержит программы для школ и других образовательных учреждениях:

  1. Редактор веб страниц Bluefish;
  2. Языки программирования pascal (Free Pascal и Lazarus), basic (gambas), logo (KTurtle);
  3. Системы математических вычислений (Maxima и Scilab);
  4. Антивирус ClamAV и кэширующий сервер Squid, СУБД PostgreSQL

Оптимизирован для установки и работы на ЭВМ от 128 до 256 МБ памяти и процессор от PI 233 МГц.

Компакт-диск Линукс LiveCD

Компакт-диск Линукс Live-CD рассчитан для работы на с Открытом ПО на домашних компьютерах с Windows без установки Linux на ЭВМ.

Компакт-диск Линукс Live CD оптимизирован для работы с компакт-диском для установки Линукс на компьютер от 128 до 256 МБ памяти и процессор от PI 233 МГц. Поддерживаются сеансы работы, позволяющие сохранять параметры настройки и документы в домашней папке между перезагрузками.

Вариант с самыми низкими аппаратными требованиями, обеспечивает приемлемую производительность даже на системах с объёмом памяти 128 МБ.

Включает в себя графическую среду XFCE; в состав этого дистрибутива входят лёгкий и быстрый текстовый редактор Abiword и программа редактирования электронных таблиц Gnumeric.

Кроме того, на первом диске содержатся:

  1. Офисный пакет: OpenOffice.org 2.3;
  2. Веб браузер: Firefox 2.0;
  3. Электронная почта: Claws Mail;
  4. Работа с изображениями: Gimp 2.4;
  5. и ещё более 1000 программ, позволяющих решать самый широкий круг задач.

Школьный сервер

Школьный Сервер - серверная операционная система с широкой функциональностью, полностью настраиваемая через веб-интерфейс, через который осуществляется управление компонентами.

Состав:

  1. веб-приложения для помощи в организации учебного процесса:
  2. Moodle - система дистанционного и интерактивного обучения, содержит примеры курсов;
  3. Mediawiki - система для организации «базы знаний», с использованием технологии Wiki;

для организации локальной сети :

  1. DHCP- и DNS-серверы;
  2. прокси-сервер Squid (с поддержкой вывода статистики доступа);
  3. межсетевой экран;
  4. управление сетевыми интерфейсами;
  5. сервер точного времени;
  6. файловые серверы:
  7. Samba-сервер (для организации доступа к каталогам, доступным по протоколу Samba);
  8. FTP-сервер;
  9. интерфейс для создания локальных зеркал репозиториев;
  10. сервер печати CUPS;
  11. MySQL (для Moodle и Mediawiki);
  12. веб-сервер Apache2;
  13. интерфейс для обновления системы (включая настройку обновлений);
  14. резервное копирование;
  15. управление учётными записями (возможность импорта учётных записей из системы 1С:Хронограф);
  16. почтовый сервер с поддержкой средств борьбы с вирусами и спамом.
    • ВАК, проф.,док.комп.наук 04:29, 19 июля 2009 (UTC)

Открытое ПО в России

В настоящее время открытое программное обеспечение начинает получать широкое распространение в системе образования России, среди причин чему называют широкое нелегальное распространение коммерческого закрытого импортного программного обеспечения.

Решениями правительства отечественное открытое программное обеспечение в 2008 году внедрено во всех школах Российской Федерации и будет установлено во всех государственных и бюджетных организациях для обеспечения национальной безопасности в сфере ИТ.

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

    • ВАК, проф.,док.комп.наук 09:50, 16 июля 2009 (UTC)

Открытое ПО в школах и вузах

Использование Открытого ПО и Технологий Linux в школах и вузах Москвы началось в 2005-2006гг. после проведения школ-семинаров "Технологии Линукс и Открытое ПО" совместно с корпорацией IBM и ЮНЕСКО на базе МПГУ.

В 2007г. решениями Правительства РФ базовые пакеты Открытого ПО были рекомендованы для внедрения во все школы Росии и использования для обучения информатике и информационным технологиям во всех кабинетах информатики всех школ РФ.

Предыстория базовых пакетов программ по информатике, их разработки, внедрения и распространения в школы России и стран СНГ началась в конце 90-х годов, когда базовые пакеты программ были разработаны для отечественных персональных ЭВМ БК, Корвет и УКНЦ и распространялись в виде Открытого и Свободного ПО для школ.

Все средние школы России в 2008-2009гг. получили базовые пакеты лицензионного коммерческого и свободного открытого программного обеспечения для обучения компьютерной грамотности, основам информатики и новым информационным технологиям с операционными системами Windows и Linux .

В четырёх регионах России в 2008-2009 гг. развёрнуты работы по внедрению и использованию в средних школах базовых пакетов программ для кабинетов информатики и вычислительной техники и начата подготовка учителей и преподавателей информатики технологии работы с открытым программным обеспечением в среде Windows и Linux .

Согласно Доктрине информационной безопасности РФ , обучение компьютерной грамотности и информатике должно сопровождаться правовым ликбезом в обучении защите информации в ЭВМ, защите от компьютерных вирусов, порно-сайтов и обеспечению информационной безопасности в локальных и глобальных сетях ЭВМ на базе свободного открытого программного обеспечения.

В 2007 году выпущены первые учебники информатика для вузов и школ для обучения информатике в соответствии с государственными стандартами образования со свободным открытыми коммерческим закрытом ПО в Windows и Linux .

    • ВАК, проф.,док.комп.наук 09:51, 16 июля 2009 (UTC)

Определение Open Source

Определение Open Source (Открытое ПО ) используется организацией Open Source Initiative для определения степени соответствия лицензии на программное обеспечение стандартам Открытого программного обеспечения (Открытое ПО). Основываются на директивах Debian для свободного программного обеспечения, которые ботьшей частью написаны Брюсом Перенсом.

Определение состоит из десяти требований к лицензиям на Открытое ПО:

  1. Свободное распространение. Это значит, что лицензия не должна налагать ограничений на продажу и распространение ПО.
  2. Доступные исходные тексты. Даже если ПО не поставляется с исходными текстами, эти тексты должны быть легко доступны.
  3. Возможность модификации. Простая возможность читать исходные тексты не позволяет экспериментировать с ними и выпускать модификации
  4. Даже в случае неприкосновенности авторского исходного текста, производные программы и их исходные тексты должны свободно распространяться.
  5. Отсутствие дискриминации против людей и групп людей. Некоторые страны, например, США, имеют некоторые ограничения на экспорт ПО.
  6. Отсутствие дискриминации по цели применения. Свободная лицензия должна разрешать все виды деятельности, включая генетические и ядерные исследования, коммерческое применение и т. д
  7. Распространение лицензии . Права, связанные с Открытым ПО, должны быть применимы ко всем пользователям программы без заключения дополнительных соглашений, например, соглашения о неразглашении.
  8. Лицензия не должна ограничивать другие программные продукты. За исключением банальной несовместимости, пользователь имеет право выбирать, чем пользоваться.
  9. Лицензия должна быть технологически нейтральной . То есть, лицензия не должна требовать что-либо от интерфейса или технологий, применяемых в производной программе.
  10. Лицензия не должна быть привязана к конкретному продукту. Права на программный код не должны зависеть от того, является ли программа частью какого-то продукта. Человек, распространяющий программу в отрыве от сборника или перенёсший часть кода в другой продукт, имеет такие же права, какие давал сборник.

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

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

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

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

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

Что такое ПО с открытым исходным кодом?

Все началось с Ричарда Столлмана, который разработал проект GNU в 1983 году, который стимулировал движение свободного программного обеспечения, что в конечном итоге привело к революционному движению программного обеспечения с открытым исходным кодом.

Сообщество людей, работающих с программным обеспечением, позволит любому изучать и изменять код с открытым исходным кодом для любых целей, которые они хотят. Движение с открытым исходным кодом нарушило все барьеры между разработчиками / программистами и поставщиками программного обеспечения, которые побуждают всех открывать сотрудничество. Наконец, ярлык «программное обеспечение с открытым исходным кодом» был официально опубликован на стратегической сессии в Пало-Альто, штат Калифорния, в 1998 году, чтобы способствовать принятию во всем мире этого нового термина, который сам по себе напоминает академическую свободу.

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

Это знак сертификации, принадлежащий Инициативе с открытым исходным кодом (OSI). Термин «программное обеспечение с открытым исходным кодом» относится к программному обеспечению, которое разрабатывается и тестируется посредством открытого сотрудничества, что означает, что любой обладающий необходимыми академическими знаниями может получить доступ к исходному коду, изменить его и распространить собственную версию обновленного кода.

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

Что такое проприетарное программное обеспечение?

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

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

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

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

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

Примеры проприетарного программного обеспечения включают iTunes, Windows, macOS, Google Earth, Unix, Adobe Flash Player, Microsoft Word и т. Д.

Разница между открытым исходным кодом и проприетарным программным обеспечением

Контроль открытого и проприетарного программного обеспечения

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

Безопасность открытого и запатентованного программного обеспечения

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

Поддержка драйверов открытого и запатентованного программного обеспечения

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

Удобство использования программного обеспечения с открытым исходным кодом и проприетарного программного обеспечения

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

Непрозрачность открытого и запатентованного программного обеспечения

Ограничения на просмотр запретили конечным пользователям изменять код, не говоря уже о его отладке, без контроля над возможными обходными решениями. Внутренняя структура проприетарного программного обеспечения строго закрытого доступа означает, что им не хватает прозрачности, что делает практически невозможным для пользователей даже предлагать модификации или оптимизации программного обеспечения. С другой стороны, Open Source способствует открытому сотрудничеству, что означает меньшие ошибки и более быстрые исправления ошибок с меньшим количеством сложностей.

Программное обеспечение с открытым исходным кодом и проприетарным программным обеспечением: сравнительная таблица

Сводная информация о программном обеспечении с открытым исходным кодом

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

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

Бесплатное программное обеспечение (Freeware)

Впервые термин «freeware» появился в 1982 году, его зарегистрировал в качестве товарного знака американский программист Андрю Флеглеман (Andrew Flegleman) для разработанной им коммуникационной программы.

Бесплатно можно скачать:

  • бета-версии программ
  • упрощенные аналоги полноценных пакетов
  • драйверы
  • программы, использование которых подтолкнет к приобретению дополнительных ресурсов.

Достоинство freeware одно - не надо платить деньги, недостатков немного больше:

  • нет автоматического обновления программы
  • отсутствует техническая поддержка
  • возможны ошибки при работе.

Практически любая коммерческая программа под Windows имеет свои бесплатные аналоги:

  • Архиваторы (7-Zip)
  • ПО для работы с FTP (FileZilla)
  • Антивирусы (CureIt, Avast!, AVZ)
  • Текстовые редакторы (Notepad++)
  • Браузеры (Mozilla, Firefox, Opera, GoogleChrome)
  • Аудиоплееры (WinAmp)
  • Видеоплееры (VLC, Miro, Media Player Classic)
  • Транскодеры (MediaCoder)
  • Графические редакторы (GIMPshop)
  • Офисное ПО (Apache OpenOffice, LibreOffice)

Бесплатные приложения под Windows доступны в Интернете на сайтах разработчиков. После скачивания архива и установки ПО на компьютере автоматически формируются все необходимые для нормальной работы приложения каталоги и файлы в них. Бесплатные приложения для Android и iOS можно скачать при помощи маркетплейсов PlayStore и AppStore.

Скачивая бесплатные программы, вы рискуете столкнуться с эффектом «троянского коня»: разработчик включает в бесплатно распространяемый пакет другие программы, которые автоматически размещаются на компьютере при установке пакета. Не всегда это ПО безопасно!

Особое место в категории бесплатных программ занимают проекты open source. Часть из вышеперечисленного ПО (Mozilla Firefox, 7-Zip, FileZilla, Notepad++, Miro, VLC, Apache OpenOffice, LibreOffice, Media Player Classic, GIMPshop, Google Chrome) относится именно к этой категории.

Open Source ПО

Программное обеспечение может распространяться с закрытым исходным кодом (Microsoft Windows, MS Office – проприетарное ПО), и с открытым кодом (open source). Появившийся в 1984 году термин «free software» (свободное программное обеспечение) относится к ПО, которое можно бесплатно получить, модифицировать, используя доступные исходные тексты программ, и распространять дальше.

Программы распространяются по лицензии GNU GPL и должны удовлетворять следующим требованиям:

  1. Нет ограничений на использование ПО в определенных областях деятельности.
  2. Исходный код распространяется вместе с исполняемым модулем или его можно получить из доступного источника бесплатно/по умеренной цене. Код должен быть читаемым.
  3. Модифицированная версия распространяется на общих условиях. Допускается изменение названия или номера версии.
  4. Программа доступна всем желающим.

В 1998 году было введено понятие «open source software» – ПО с открытым кодом. Формально, все свободное программное обеспечение можно считать ПО с открытым кодом. Принято относить программы open source к бесплатным, хотя не запрещено их использовать в коммерческих целях. Обычно, оно распространяется по лицензии Apache 2.0. Но есть и другие варианты (подробнее о лицензиях в мире open source см. ).

Преимущества работы с проектами open source:

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

Недостатки:

  • для компиляции могут потребоваться дополнительные библиотеки, которые придется искать в Интернете
  • если возникнут вопросы при использовании этого ПО, ответ нужно будет искать на форумах в Интернете.

Концепция Open Source основана на повышении надежности и качества ПО за счет обнаружения и исправления ошибок многими пользователями. Находящийся в открытом доступе open source проект постоянно тестируется огромным количеством программистов.

Давно широко внедряет технологию «открытого кода» компания Google. Все ее проекты такого типа, их примерно 200 (изначально и Kubernetes был разработан здесь, а затем передан под управление Cloud Native Computing Foundation), доступны на портале компании GOOGLE OPEN SOURCE. На ресурсе лежат не только коды программ, но и документация по их использованию и поддержке. Насколько широко можно использовать открыто предоставляемый код - указано в лицензии, обычно непосредственно размещаемой в тексте программы.

Компания Apple, открыв исходные коды языка Swift, пытается увеличить количество доступных приложений для Apple. Текущая версия языка на настоящий момент имеет ограничения: чтобы загрузить свою разработку на AppStore, придется приобрести лицензированный Swift. Вся необходимая по языку информация размещена на сайте swift.org и в облачном хранилище GitHub. Выпущен релиз Swift под Linux.

Условно-бесплатное программное обеспечение

Некоторые программы, распространяемые бесплатно, имеют ограничения:

  • по сроку работы
  • по количеству запусков
  • по функциональности

Для ограничения срока работы и числа запусков используется trial-защита – специальные счетчики. В качестве ограниченного по функционалу ПО предоставляют демо-версию или версию с ограниченным сервисом. Иногда разработчик вставляет в код программы рекламу, затрудняющую работу с пакетом. Чтобы избавиться от рекламного баннера, придется заплатить.

Примеры программ с лицензией shareware:

  • Архиватор WinRAR (30 дней)
  • Антивирус Nod32 (30 дней)

AcrobatReader – пример программы, ограниченной по функционалу. Эта программа, нижний сегмент пакета AdobeAcrobat, разрешает только просмотр PDF-файлов. Для полноценной работы с файлами таких типов необходимо купить более полную версию Acrobat’a.

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

Например, компания Oracle бесплатно позволяет скачивать дистрибутив СУБД и утилиты для работы с ней. При этом накладываются ограничения на объем массива обрабатываемых данных. Но для изучения принципов работы с базой данных и отработки навыка написания процедур этот вариант работы с ПО подходит.

Собственно, скачивая «исходники» открытого ПО - open source - вы должны быть готовы понести определенные затраты, чтобы его использовать. Не надо приобретать лицензию, но потребуется оплатить работу программистов, которые будут создавать на его основе программные продукты под определенную задачу.

Выводы

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

Устанавливая бесплатное программное обеспечение, обращайте внимание на дату его создания/обновления и обязательно проверяйте ПО на наличие вирусов. Такими программами пользуются как IT-специалисты, так и пользователи ПК разного уровня.

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

Несомненным достоинством open source проектов является их независимость от вендора, крупные компании предпочитают на их основе создавать корпоративное ПО. Особенно это становится актуальным для госкорпораций в связи с возможными сложностями в приобретении проприетарных продуктов из-за экономических санкций. Сдерживающим фактором при внедрении open source является некоторая неопределенность, связанная с информационной безопасностью: возможны проблемы при прохождении сертификации в ФСТЭК.

Питер Ван Валькенбург, глава отдела исследований Coin Center, член совета директоров Zcash Foundation, объясняет, почему развитие программного обеспечения с открытым исходным кодом важно для построения доверительных отношений и обеспечения безопасности в блокчейн-сетях.

Компьютерный код, лежащий в основе всех крупных криптовалют и проектов открытого блокчейна, разрабатывается как ПО с открытым исходным кодом. Регуляторы и директивные органы, пытающиеся понять, что такое криптовалюты, но не знакомые с таким ПО, могут заблуждаться, считая, что эти системы разрабатываются (и должны разрабатываться) одной или несколькими коммерческими компаниями. Хотя многое известное программное обеспечение действительно разрабатывается подобным образом (например, Windows корпорации Microsoft или RDBMS компании Oracle), с проектами с открытым исходным кодом дела обстоят иначе, и это отличие может и должно формировать общественное мнение. ПО с открытым исходным кодом создаётся в сотрудничестве, бесплатно распространяется, публикуется открыто и развивается в качестве продукта сообщества, а не собственности одной компании или лица. В этом случае нет монополии, нет одной компании или индивидуума, которые бы создавали и продавали ПО, владели бы им. Точно так же, как нет единственной компании, владеющей сетью биткоина, не существует одной-единственной компании, производящей ПО, которое, функционируя на связанных в интернете компьютерах, образует эту сеть. Подобная децентрализация несёт некоторые фундаментальные блага, которые может быть тяжело понять людям, не знакомым с разработкой ПО. Чтобы лучше осознать мощь и характер открытого исходного кода, будет полезно получить некоторое представление об одном особенно успешном образце ПО с открытым исходным кодом. Речь идёт об операционной системе Linux.

Открытый исходный код повсюду

Трудно подсчитать, сколько раз за день вы пользуетесь Linux, ведь именно эта операционная система лежит в основе работы большинства серверов в интернете. Всякий раз, когда вы посещаете Facebook, Google, Pinterest, Википедию и тысячи других крупных сайтов, сервисы, которые предоставляют вам эти (такие разные) сайты, вы имеете дело с компьютерами, которые, скорее всего, работают на операционной системе Linux. Linux можно найти и гораздо ближе; скорее всего, он у вас под рукой. Скажем, операционная система Android-смартфонов основана на Linux. Если у вас есть Chromebook, то вы пользуетесь ноутбуком на основе Linux. Эта операционная система всё чаще используется в телевизорах, термостатах, мультимедийных системах в самолётах, автомобилях и т.д.

Почему это интересно? Потому что Linux - это не продукт одного программиста или даже группы программистов; в отличие от MacOS или Windows, его не разрабатывала одна или даже дюжина корпораций. У Linux есть тысячи соавторов. Как сообщила в 2015 году Linux Foundation (некоммерческая организация, способствующая открытому развитию операционной системы), приблизительно 14 000 разработчиков из более чем 1300 различных компаний внесли вклад в виде фрагментов программного кода. В одном лишь 2015 году в усовершенствовании кода впервые поучаствовали 2355 разработчиков. Таким образом, путём экстраполяции можно подсчитать, что к 2017-му свою лепту внесли приблизительно 18 000 человек, и это число будет расти.

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

Преимущества открытого исходного кода

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

Рэймонд выделил несколько преимуществ модели открытого исходного кода. Ключевые в контексте нашей дискуссии - следующие:

  • Каждый достойный образец ПО начинается с удовлетворения личного желания разработчика. Мотивацией большинства разработчиков проектов с открытым исходным кодом служит желание лично использовать создаваемые продукты. Они не связаны контрактом, обязывающим их создать что-то для другого; у них есть личная потребность, которую они удовлетворяют. Таким образом, возникает качественно иная мотивация, порождающая детальное знание проблемы.
  • Хорошие программисты знают, что писать. Великие знают, что переписывать (и использовать повторно). Когда разработка осуществляется открыто, можно избежать избыточности, и проблематичные, усложнённые или излишние коды можно идентифицировать и упростить.
  • Когда вы теряете интерес к программе, то ваш последний долг по отношению к ней состоит в том, чтобы передать её в руки компетентного преемника. Люди приходят в проект с открытым исходным кодом и покидают его в зависимости от своих интересов и компетенции. Никто не застревает в работе над проектами, которые больше не интересны. Появляются свежие головы, предлагающие различные точки зрения на давние проблемы или новые перспективы развития.
  • Восприятие пользователей в качестве коллег-разработчиков - самый лёгкий путь к улучшению кода и эффективной отладке ПО. Многие пользователи открытого исходного кода помогают выявлять проблемы и даже предлагают решения. Грань между потребителем и производителем программ с открытым исходным кодом размыта: работа над ПО прозрачна, она ведётся на глазах у публики, и участие в процессе создания доступно всем.
  • При наличии достаточно большой базы бета-тестеров и разработчиков практически любая проблема будет быстро квалифицироваться, а её решение наверняка окажется для кого-то очевидным. Этот постулат назван Законом Линуса в честь Линуса Торвальдса, создателя ядра Linux, который долгое время оставался главным разработчиком этой операционной системы. Когда процесс разработки кода носит закрытый характер, разработчики рискуют пропустить слабое место или не заметить определённую ошибку. Разработка в среде опытных пользователей с уникальным видением повышает вероятность выявления и устранения багов, что делает ПО с открытым исходным кодом более безопасным и отказоустойчивым.

Результатом такой разработки становится очень надёжный программный код, созданный пользователями для пользователей. Цель состоит не в том, чтобы создать нечто, обогащающее компанию, которая производит и продаёт продукты, а, скорее, в том, чтобы решить проблему, достаточно распространённую, чтобы большое сообщество талантливых программистов с радостью вносило свой вклад. Люди, лишённые навыков программирования, получают от такой модели огромное благо. Бесплатное ПО словно материализуется из воздуха, им может свободно воспользоваться каждый, и оно получает обновления до тех пор, пока пользователи экспертного уровня тоже заинтересованы в его эксплуатации.

Закон и свободное ПО

Действующее законодательство поддерживает и в некоторых случаях стимулирует разработку программного обеспечения с открытым исходным кодом. Оно, как и всё ПО, защищено авторским правом, но его авторы выпускают код с лицензией, позволяющей каждому использовать и модифицировать его без специфического разрешения или любых выплат авторам (то есть с лицензией, разработанной Массачусетским технологическим институтом - MIT).

Некоторые лицензии включают требования, что производные программного обеспечения должны выпускаться на таких же условиях. Благодаря подобной схеме база открытого исходного кода растёт и распространяется. Это явление известно как лицензия свободного программного обеспечения, или LGPL-3 - меньшая стандартная общественная лицензия.

Открытый исходный код в криптовалютах и токен-проектах

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

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

Клиент Bitcoin Core - результат работы более чем 450 независимых разработчиков, которые в общей сложности внесли свой вклад в развитие кода более 15 000 раз. ПО доступно для свободного использования и модификации в соответствии с лицензией свободного программного обеспечения MIT, а вся история разработки доступна для обозрения в публичном репозитории на Github - облачном сервисе, позволяющем любому создать аккаунт, загрузить новый код и отслеживать изменения. Если созданный вами репозиторий открыт для всеобщего обозрения, комментариев и предложений об изменениях, то вам даже не нужно платить за аккаунт Github.

Публичный репозиторий также отслеживает так называемые форки оригинального клиента. Форк создаёт клон изначального ПО, который затем можно модифицировать с той или иной целью, не изменяя изначальное хранилище. Разработчики без ограничений совершают форки для репозитория Bitcoin Core на Github, чтобы создать либо специфические приложения, совместимые с биткоином (например, кошелёк для смартфонов), либо новую криптовалюту, которая перестаёт быть совместимой с сетью биткоина и подразумевает создание новой криптовалютной сети (например, так было с лайткоином или Zcash). На сегодняшний день оригинальный клиент Bitcoin Core пережил форк более 10 000 раз, и появляющиеся новые репозитории демонстрируют, что создание производных продуктов продолжается.

На эфириум сейчас приходится как минимум 121 репозиторий, каждый из которых фокусируется на определённом аспекте проекта (например, языках программирования для написания смарт-контрактов, графических браузерах для взаимодействия конечного пользователя с сетью эфириума, совместимых клиентах для участия в работе сети и т.д.). Есть не менее восьми проектов, направленных на разработку совместимых с эфириумом клиентов, а над наиболее популярными клиентами (go-ethereum и Parity) трудятся сотни независимых разработчиков. Код эфириума и его полная история, как и код, а также история биткоина, доступны для публичного обозрения на Github и в других сетевых хранилищах, и все коды выпускаются в соответствии с лицензией LGPL-3, требующей выпускать все будущие производные разработки с такой же лицензией.

Даже недавние проекты, реализованные по инициативе коммерческих стартапов, демонстрируют приверженность кредо открытого исходного кода. Zcash Company разрабатывает протокол Zcash посредством публичного репозитория. Несколько ведущих разработчиков не работают на компанию, а специально созданная некоммерческая организация призвана следить за тем, чтобы постепенно произошёл переход от разработки, осуществляемой компанией, к разработке силами сообщества. База исходного кода Zcash выпускается с лицензией Массачусетского технологического института. Protocol labs, разработчик Filecoin, намерен создать аналогичную открытую модель и уже протестировал её в своём проекте IPFS, работая с кодом в открытых репозиториях и выпуская его с лицензией MIT.

Почему открытый исходный код важен

Криптовалюты и открытые блокчейны способны обеспечить функционал, который был бы регулируемым, если бы его источником была одна-единственная корпорация. Централизованные эмитенты цифровой валюты, такие как Liberty Reserve или E-gold, представляли собой финансовые сервисы и должны были регистрироваться в Управлении Министерства финансов США по борьбе с финансовыми преступлениями, а также получать лицензию, позволяющую переводить деньги, в каждом штате. Если такие токены будут продвигаться на рынке для привлечения инвесторов, они могут быть приравнены к ценным бумагам, и в таком случае потребуется регистрация в Комиссии по ценным бумагам и биржам США. Эти ограничения имеют смысл, поскольку централизованные сервисы связаны с риском того, что сторона, находящаяся в центре всей схемы, не сможет выполнить свои обещания, адекватно протестировав продукт и сделав его безопасным.

Однако технологии вроде биткоина способны предложить аналогичный функционал, будучи открытыми и никому не принадлежащими сетями. Здесь нет никакой корпорации. К этим сетям присоединяются пользователи, а открытое программное обеспечение стимулирует их стремление к сотрудничеству. В конечном счёте все участники приходят к согласию относительно каждого фрагмента данных, необходимых для создания валюты. Децентрализация держится на двух столпах: открытых механизмах консенсуса и программном обеспечении с открытым исходным кодом. Если бы код не был открытым, то как бы участники (не знакомые друг с другом люди в интернете) сумели бы понять систему, к которой они присоединяются, и довериться ей?

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