что такое открытое программное обеспечение это программы
Открытое программное обеспечение
Открытое программное обеспечение (англ. open-source software ) — программное обеспечение с открытым исходным кодом. Исходный код таких программ доступен для просмотра, изучения и изменения, что позволяет пользователю принять участие в доработке самой открытой программы, использовать код для создания новых программ и исправления в них ошибок — через заимствование исходного кода, если это позволяет совместимость лицензий, или через изучение использованных алгоритмов, структур данных, технологий, методик и интерфейсов (поскольку исходный код может существенно дополнять документацию, а при отсутствии таковой сам служит документацией).
Содержание
Открытое и свободное ПО
Подавляющее большинство открытых программ является одновременно свободными. Определения открытого и свободного ПО не полностью совпадают друг с другом, но близки, и большинство лицензий соответствуют обоим.
Отличие между движениями открытого ПО и свободного ПО заключается в основном в приоритетах. Сторонники термина «open source» делают упор на эффективность открытых исходников как метода разработки, модернизации и сопровождения программ. Сторонники термина «free software» считают, что именно права на свободное распространение, модификацию и изучение программ являются главным достоинством свободного открытого ПО.
Определение открытого программного обеспечения в понимании Open Source Initiative
Вынесенное OSI определение признается за руководство многими другими организациями — например, порталом SourceForge.net.
OSI накладывает на публичную лицензию десять требований, которые изначально были основаны на Debian Free Software Guidelines.
Лицензии
Исходные коды открытых программ выпускаются либо как общественное достояние, либо на условиях «свободных» лицензий — как, например, GNU General Public License или BSD License. Свободная лицензия позволяет использовать исходный код программы для своих нужд с минимальными ограничениями, не противоречащими определению OpenSource.org. Таким ограничением может быть требование ссылаться на предыдущих создателей или требование сохранять свойство открытости при дальнейшем распространении той же самой или модифицированной открытой программы (копилефт). В некоторых случаях (например, Apache или FreeBSD) эти ограничения очень малы, в других (например, GNU General Public License) достаточно распространять ПО вместе с исходным кодом и текстом лицензии, не изменяя её.
Открытое программное обеспечение в России
В настоящее время открытое программное обеспечение не получило широкого распространения в России, среди причин чему называют широкое нелегальное распространение собственнического программного обеспечения.
Открытое программное обеспечение может свободно устанавливаться и использоваться во всех школах, офисах, вузах и на всех личных компьютерах и во всех государственных, бюджетных и коммерческих организациях и учреждениях России и в странах СНГ, согласно открытому лицензионному соглашению GNU (GPL).
Открытое программное обеспечение в школах
По решению Правительства Российской Федерации [10] в марте 2008 года все средние школы России получили базовые пакеты лицензионного собственнического программного обеспечения для обучения компьютерной грамотности, основам информатики и новым информационным технологиям с операционными системами Windows.
В 2007 году выпущены первые учебники информатики для вузов и школ для обучения информатике в соответствии с государственными стандартами образования со свободным и проприетарным программным обеспечением в среде Windows и Linux.
Российские разработчики открытого программного обеспечения
Российские разработчики в основном помогают развитию англоязычных проектов или выпускают локализованные редакции международных проектов (например, OpenOffice Pro на базе OpenOffice.org). Крупных российских проектов с открытыми кодами немного (например, FAR Manager, Nginx, DriverPack Solution, 7-Zip). Небольшие программы чаще бывают только бесплатными, без открытия исходных кодов (например, Aimp, Light Alloy).
Также, существует незначительное количество российских репозиториев открытого ПО (таких, как репозиторий Сизиф).
Качество
В чем смысл open source?
Хабр, привет! Я Юра, руководитель платформенной команды inDriver. В IT уже более 12 лет, на iOS пишу 7 лет. В этой статье обращусь к принципам и целям open source. Мы разберемся с его лицензиями, посмотрим на рынок и государственное участие в этом процессе. Добро пожаловать под кат!
Содержание
Минутка истории
Начну с определения того, что такое open source. Это открытое программное обеспечение, исходный код которого доступен для просмотра, изучения, изменения и позволяет убедиться в отсутствии уязвимостей.
Попробуем разобраться с корнями определения. Есть 2 термина: free software и open source. Термин open source был использован в качестве определения в 1998 году Эриком Реймондом и Брюсом Перенсом. Они утверждали, что термин free software (свободное программное обеспечение) в английском языке неоднозначен и смущает многих коммерческих предпринимателей.
Эрик Реймонд и Брюс Перенс
Но откуда же пошли эти термины? В 1985 году появился Free Software Foundation. Он возник благодаря трудам разработчика Ричарда Столлмана, который присоединился к лаборатории искусственного интеллекта при Массачусетском технологическом институте. Столлман принимал участие в работе над свободным ПО (например, над Emacs — текстовым редактором для мини-компьютеров). Позднее редактор продали коммерческому дистрибьютору, и в 1984 году Столлман решил основать проект свободного ПО под названием GNU.
Ричард Столлман
Если не знали, GNU — во-первых, рекурсивный акроним — GNU’s Not UNIX, во-вторых, ОС типа UNIX с набором свободных программ. В рамках проекта энтузиасты придумали термин «свободное ПО» и сформулировали его критерии: использование, изучение, шеринг и улучшение.
4 основных принципа
В 1985 году Столлман основал фонд Free Software Foundation для развития свободного ПО за счет пожертвований. Цель организации — способствовать свободе пользователей компьютеров во всем мире. Фонд взял на себя задачу защиты прав всех пользователей программного обеспечения.
Философия фонда строится на 4 основных свободах:
Свобода запускать программу в любых целях (свобода 0).
Свобода изучения работы программы и ее адаптация к вашим нуждам (свобода 1). Доступ к исходным текстам является необходимым условием.
Свобода распространять копии, так что вы можете помочь вашему товарищу (свобода 2).
Свобода улучшать программу и публиковать ваши улучшения, так что все общество выиграет от этого (свобода 3). Доступ к исходным текстам является необходимым условием.
Программа свободна, если у ее пользователей есть 4 вышеупомянутых пункта. Все достаточно прозрачно и позитивно. Но здесь накладываются взаимоотношения между разработчиками в юридическом плане и в рамках государства. Свободная программа часто не значит «некоммерческая», она может быть доступна для коммерческого применения и распространения. Это правило фундаментально важно, без этого свободные программы не могли бы достичь своих целей.
В англоязычных текстах free означает не только «свободное», но и «бесплатное». Оно нередко употребляется к бесплатному программному обеспечению, которое распространяется без взимания платы, но недоступно для изменения. Получается, такое ПО не является свободным.
Чтобы устранить недоразумения, как раз и был придуман термин open source. Его сформулировала некоммерческая организация Open Source Initiative, которая была основана вышеупомянутыми Реймондом и Перенсом.
Логотип организации
В середине 1990-х годов в open source пришла первая крупная компания — Netscape. Ее браузер Netscape Navigator был одним из самых популярных в мире, но с появлением Internet Explorer стал вытесняться с рынка.
В 1998 году в Netscape решили открыть исходный код своего браузера. Год спустя компании не стало, но исходный код Navigator лег в основу одного из самых популярных современных браузеров — Mozilla Firefox. В том же 1998 году возникла Open Source Initiative, которая и начала заниматься популяризацией открытого исходного кода.
Интерфейс Netscape Navigator
Основатели Open Source Initiative придумали альтернативу free software и сделали больший упор на open source. То есть это не свободное ПО, а ПО с открытым исходным кодом. Разработчики написали определение, описали более подробно, что такое open source и на чем он зиждется.
По их мнению, открытый исходный код — не просто доступ к исходному коду, но и условия распространения программного обеспечения с открытым исходным кодом. Также Реймонд и Перенс задекларировали 3 важных критерия:
Лицензия не должна ограничивать любую сторону от продажи или раздачи программного обеспечения как компонента совокупного распространения.
Лицензия не требует лицензионных или иных сборов за такую продажу.
Программа должна включать исходный код и допускать распространение в исходном коде, а также в скомпилированном формате.
Эти постулаты были частично взяты из Debian Free Software Guidelines. Я не буду их раскрывать по части дискриминации и лицензий, но после этого начинается постепенное развитие open source от одной некоммерческой организации к другой.
dino
Кстати, еще одно достоинство Open Source Initiative — репозиторий SourceForge для программ с открытым исходным кодом. Помню его с домобильной эпохи по скачиванию архиваторов на Windows, но сейчас он уже не столь популярен.
Лицензии
Расскажу немного о взаимоотношениях разработчиков открытого исходного кода, а также под какими лицензиями этот исходный код распространяется сейчас. Выделяют 4 категории:
1. Public Domain. Категория лицензий, которые относятся к творческим материалам. Они не защищены законами об интеллектуальной собственности или авторском праве, о товарных знаках или патентах. Эти работы принадлежат публике, а не отдельному автору или художнику. Кто угодно может использовать произведение, являющееся общественным достоянием, без получения разрешения.
Пример такой лицензии — СС0 от Creative Commons
2. Permissive. Это лицензии на программное обеспечение, которые практически не ограничивают свободу действий пользователей ПО и разработчиков, работающих с исходным кодом. В отличие от других лицензий, они не являются копилефтными. По духу похожи на Public Domain, но не требуют отказа от авторского права.
3. Copyleft. Это лицензии, которые требуют, чтобы распространение продукта подчинялось той же лицензии, что и оригинал. То есть нельзя делать проприетарным этот софт.
4. Proprietary. Это вид лицензий, который является частной собственностью авторов или правообладателей и не удовлетворяет критериям свободного ПО. Правообладатель сохраняет за собой монополию на его использование, копирование, модификацию.
Рынок
Теперь о многообразии open source-проектов. Open source участвует практически во всех сферах, начиная от мобилок и заканчивая блокчейном и искусственным интеллектом.
Простой пример. Android, операционная система, 2,5 миллиарда активных устройств, огромнейший рынок, который построен на open source. В вебе это WordPress, на котором крутится более 40% сайтов в интернете. В бэкэнде, инфраструктуре — NGINX и Kubernetes, используются для оркестрации нагрузки, контейнеров, являются стандартами индустрии. В AI это TensorFlow — платформа, которая используется для машинного обучения. Для блокчейна это Ethereum — платформа, которая лежит в основе многих криптовалют.
Многие индивидуальные разработчики делают вклад в open source не менее значимый, чем корпорации. Благодаря Линусу Торвальдсу появился Linux. Микаэль Видениус создал, наверное, самую популярную у веб-разработчиков базу данных — MySQL, а Майкл Стоунбрейкер с командой из Беркли — PostgreSQL.
Если переходить к корпорациям, все крупные IT-игроки понимают важность open source-проектов. Как пример приведу исследования компании Red Hat. Она ежегодно опрашивает более 1 000 компаний и делает обзор рынка, куда IT двигается и как меняется. Согласно последнему исследованию, 90% опрошенных респондентов считают, что open source играет важную роль в технологиях корпораций. Наиболее распространенные пути использования open source в корпоративном секторе: IT-инфраструктура, разработка приложений, цифровая трансформация. За 2 года эти показатели увеличились на 11%.
Почему корпорации идут в open source? В первую очередь, участие в открытых проектах позволяет привлечь внимание не только к этому проекту, но и к другим своим программам. Вовлечение открытого сообщества в проекты компаний делает проще найм сотрудников и позволяет удерживать таланты внутри компании. Мотивационная часть также важна — поддержка проектов извне мотивирует разработчиков активнее их развивать.
Но есть и минусы. Открытый код может использоваться в тех проектах, о которых его авторы даже не подозревают. Если проект многокомпонентный и собран из большого числа подмодулей, в цепочке зависимостей легко может возникнуть дыра в безопасности, которую долго могут не замечать.
Russia Open Source
Перейдем к российским реалиям. 1 октября 2021 года Министерство цифрового развития России и крупные IT-компании обсудили стратегию работы с открытым кодом до 2024 года.
Целями развития программного обеспечения с открытым кодом в России являются:
Развитие стека продуктов для госсектора. Обеспечение безопасного использования в нем компонентов с открытым кодом.
Повышение эффективности цифровизации государственных органов благодаря повторному использованию программного кода, разработанного за бюджетные средства.
Также при создании стратегии идут отсылки к опыту других стран. В США, согласно политике, принятой в 2016 году, публикуют не менее 20% исходного кода правительственного ПО под открытыми лицензиями.
В Евросоюзе тоже есть стратегия развития открытого ПО с упоминанием технологического суверенитета. Китай способствует созданию независимой экосистемы. В частности, реализует свои варианты открытых операционных систем: например, HarmonyOS. Есть аналоги Java, PostgreSQL, GitHub.
В России создается некоммерческая организация, которая будет поддерживать репозиторий, куда будут выкладываться лицензии. Создается аналог открытой лицензии, под которой все будет выкладываться. Более подробно можно прочитать в проекте стратегии.
Hacktoberfest
Hacktoberfest — это фестиваль поддержки open source-комьюнити с целью мотивации разработчиков улучшать проекты с открытым исходным кодом. Он ежегодно проводится в октябре. Open source-проекты — вариант устроиться на работу, развивать личный бренд или просто отразить свои знания в коде.
Участники должны сделать 4 пул-реквеста на GitHub или GitLab. Предварительно, конечно же, зарегистрироваться на сайте.
Один из этапов регистрации
Из нюансов — вы можете контрибьютить в свои собственные репозитории, необязательно развивать сторонний проект. Неважно и то, на каком языке вы программируете. Можно выбрать ваш любимый продукт или open source-проект, посмотреть issues, которые можно закрыть, и даже поправить документацию. Вариантов много, выбор остается за вами.
Из личных примеров: когда устраивался в inDriver сделал open source-проект под «Роскачество». В свое время в маркете было приложение «Роскачество», где российская лаборатория тестировала и проверяла продукты, но визуальная реализация оставляла желать лучшего. Заодно попробовал новую архитектуру, новые технологии, которые появлялись в iOS (например, Swift UI с однонаправленной архитектурой). Это стало долгосрочным полезным вкладом.
Логотип UDF
Наконец, приглашаю всех поучаствовать в развитии open source-проекта inDriver. Мы опубликовали iOS-архитектуру c Redux-парадигмой. Конечно, это не первая реализация однонаправленной архитектуры, но у нее есть ряд преимуществ: адаптация под UI Kit, модуляризируемая, с апробацией в крупном проекте. Подробнее про UDF можно прочитать в статьях моего коллеги Антона Гончарова на Хабре (часть 1 и часть 2).
У меня все. Спасибо, что читали. Задавайте ваши вопросы в комментариях.
Открытый исходный код
Открытое программное обеспечение (англ. open source software ) — это программное обеспечение с открытым исходным кодом. Исходный код создаваемых программ открыт, то есть доступен для просмотра и изменения. Это позволяет использовать уже созданный код для создания новых версий программ, для исправления ошибок и, возможно, помочь в доработке открытой программы.
«Открытая» лицензия не требует, чтобы открытое ПО предоставлялось бесплатно. Многие из наиболее успешных проектов открытого ПО, тем не менее, бесплатны. Открытое программное обеспечение имеет большие перспективы в России в связи с принятием правительством и президентом РФ решений по обеспечению национальной безопасности в сфере ИТ на основе внедрения открытого и свободного ПО в государственные и бюджетные организации.
Содержание
Открытое и свободное ПО
Термин open source (англ. Открытое программное обеспечение) был создан вместе с определением в 1998 году Эриком Реймондом и Брюсом Перенсом, которые утверждали, что термин free software (Свободное программное обеспечение) в английском языке неоднозначен и отпугивает коммерческих предпринимателей. [1]
Подавляющее большинство открытых программ является одновременно свободными. Определения открытого и свободного ПО не полностью совпадают друг с другом, но близки, и большинство лицензий соответствуют обоим.
Отличие между движениями открытого ПО и свободного ПО заключается в основном в приоритетах. Сторонники термина «open source» делают упор на эффективность открытых исходников как метода разработки, модернизации и сопровождения программ. Сторонники термина «free software» считают, что именно права на свободное распространение, модификацию и изучение программ являются главным достоинством свободного открытого ПО.
Существуют программы, попадающие по мнению некоторых [кто?] под определение открытых, но не являющиеся свободными, например, UnRAR, распаковщик [2]
По мнению Ричарда Столлмана, разрекламированность «Open Source» несколько вредит свободному ПО, так как некоторые разработчики и пользователи открытого ПО совсем не против собственнического ПО, и люди останавливаются на Open Source, не доходя до понятий о свободе. [3]
По словам Брюса Перенса открытое ПО всегда было лишь способом объяснить предпринимателям идею свободного ПО, и это ему удалось. [4]
Враждебные к свободному ПО компании — например, Microsoft — используют только выражение open source.
Определение открытого программного обеспечения Open Source Initiative
Open Source является торговой маркой организации Open Source Initiative. Существует специальный комитет, решающий, может ли лицензия носить имя Open Source. Определение, которым он при этом руководствуется, приведено в The Open Source Definition. [7]
Вынесенное OSI определение признается за руководство многими другими организациями — например, порталом Debian Free Software Guidelines.
Лицензии
Исходные коды открытых программ выпускаются либо как общественное достояние, либо на условиях «свободных» лицензий — как, например, GNU General Public License или BSD License. Свободная лицензия позволяет использовать исходный код программы для своих нужд с минимальными ограничениями, не противоречащими определению OpenSource.org. Таким ограничением может быть требование ссылаться на предыдущих создателей или требование сохранять свойство открытости при дальнейшем распространении той же самой или модифицированной открытой программы (копилефт). В некоторых случаях (например, FreeBSD) эти ограничения очень малы, в других (например, GNU General Public License) достаточно распространять ПО вместе с исходным кодом и текстом лицензии, не изменяя её.
Открытое программное обеспечение в России
В настоящее время открытое программное обеспечение не получило широкого распространения в России, среди причин чему называют широкое нелегальное распространение собственнического программного обеспечения.
Однако, решениями правительства и президента РФ Дмитрия Анатольевича Медведева, отечественное открытое программное обеспечение в 2008 году внедрено во всех школах Российской Федерации и будет установлено во всех государственных и бюджетных организациях для обеспечения национальной безопасности в сфере ИТ.
Открытое программное обеспечение может свободно устанавливаться и использоваться во всех школах, офисах, вузах и на всех личных компьютерах и во всех государственных, бюджетных и коммерческих организациях и учреждениях России и в странах СНГ согласно Генеральной публичной лицензии (GPL).
Открытое программное обеспечение в школах
Решением правительства Российской Федерации в марте 2008 года, все средние школы России получили базовые пакеты лицензионного собственнического и открытого программного обеспечения для обучения компьютерной грамотности, основам информатики и новым информационным технологиям с операционными системами Windows и Linux.
В трёх регионах России в 2008 году развёрнуты эксперименты по внедрению и использованию в средних школах базовых пакетов программ для кабинетов информатики и вычислительной техники и начата подготовка учителей и преподавателей информатики технологии работы с открытым программным обеспечением в среде Windows и Linux.
В 2007 году выпущены первые учебники информатики для вузов и школ для обучения информатике в соответствии с государственными стандартами образования со свободным и проприетарным программным обеспечением в среде Windows и Linux.
Российские разработчики открытого программного обеспечения
Российские разработчики в основном помогают развитию англоязычных проектов или выпускают локализованные редакции международных проектов (например, OpenOffice Pro на базе
Также, существует незначительное количество российских репозиториев открытого ПО (таких, как репозитарий Сизиф).
Примечания
См. также
Ссылки
Полезное
Смотреть что такое «Открытый исходный код» в других словарях:
Открытый Каталог — Open Directory Project Открытый Каталог (ODP) http://www.dmoz.org/ Коммерческий: Нет Тип сайта: Каталог Регистрация … Википедия
Открытый каталог — Open Directory Project Открытый Каталог (ODP) http://www.dmoz.org/ Коммерческий: Нет Тип сайта: Каталог Регистрация … Википедия
открытый код — 3.5 открытый код: Исходный код программного обеспечения, передаваемый разработчиком пользователю на определенных лицензионным договором условиях. Источник: ГОСТ Р 54593 2011: Информационные технологии. Свободное программное обеспечение. Общие… … Словарь-справочник терминов нормативно-технической документации
Открытое программное обеспечение — Логотип Open Source Initiative (OSI) У этого термина существуют и другие значения, см. OS (значения). Открытое программное обеспечение (англ. … Википедия
Сравнение средств разработки для создания мультиагентных систем — Платформа Основное назначение Лицензия Требуемый язык программирования Требуемая ОС Поддержка пользователя Соответствует ли требованиям FIPA Возможности ГИС Трехмерные возможности ABLE … Википедия
ADempiere — Тип ERP, CRM, SCM Разработчик Adempiere Community Написана на Java Операционн … Википедия
День загрузки — Запрос «Firefox» перенаправляется сюда. Cм. также другие значения. Mozilla Firefox Firefox 3.0 на платформе GTK+/Linux Тип Браузер … Википедия
Огнелис — Запрос «Firefox» перенаправляется сюда. Cм. также другие значения. Mozilla Firefox Firefox 3.0 на платформе GTK+/Linux Тип Браузер … Википедия
Фаерфокс — Запрос «Firefox» перенаправляется сюда. Cм. также другие значения. Mozilla Firefox Firefox 3.0 на платформе GTK+/Linux Тип Браузер … Википедия
Файерфокс — Запрос «Firefox» перенаправляется сюда. Cм. также другие значения. Mozilla Firefox Firefox 3.0 на платформе GTK+/Linux Тип Браузер … Википедия