В мире разработки есть три понятия, которые часто путают: свободное, открытое и бесплатное ПО (то есть программное обеспечение). Для неосведомлённых людей это близкие понятия, но для специалистов разница большая. Сейчас расширим ваш кругозор.
Для этого нужно будет:
- Разобраться в лицензиях на софт.
- Посмотреть по отдельности на свободный, открытый и бесплатный софт.
- Выделить основные риски и проблемы, связанные с каждым из них.
Картинка для затравки:
Лицензии и ПО
У каждой программы есть лицензия, которая определяет, что можно делать с этой программой, а что нельзя. Например, почти весь код в наших статьях публикуется под лицензией CC0 — она означает, что код становится общественным достоянием и его может использовать кто угодно в любых целях.
Есть много других лицензий, которые работают иначе: в них прописано, что можно делать с кодом, а что нет. Например, в лицензии может быть указано:
- можно модифицировать код без указания исходного автора или нет;
- если кто-то взял код за основу, то должен ли он использовать ту же самую лицензию или нет;
- можно ли зарабатывать на этом коде или нет;
- можно ли вообще модицифировать этот код или нужно использовать его только в таком виде;
- какие организации могут пользоваться кодом, а какие нет;
- и что угодно ещё, что захочет добавить в лицензию автор кода.
В итоге получается, что основное различие между программами в том, по какой лицензии они распространяются и что в них написано.
Лицензионное и свободно распространяемое программное обеспечение.
Как на самом деле работают лицензии на ПО
Чисто теоретически, если вы нарушите условия лицензии, вас могут привлечь к ответственности. На практике этим занимаются редко и по серьёзным поводам.
Например, вы нашли в интернете программу с лицензией типа Attribution, share-alike: это значит, что если вы будете делать свою программу на основе чужой, вы обязаны указывать автора этой программы и распространять вашу новую программу на тех же условиях, что и исходную. Вы закрываете на это глаза и выпускаете собственный коммерческий продукт. Кто вам что сделает?
Проходит время, ваша программа становится популярной, и её решает купить какой-нибудь ИТ-гигант. Их юристы приходят изучать ваш код и находят чужой кусок с лицензией. «Упс, нарушаете», — говорят вам юристы. Правовой риск, сделка может не состояться. Юристы знают, что вас маленького никто таскать по судам не будет, а ИТ-гиганта — только в путь. Им дешевле не проводить сделку с вами, чем рисковать плохой лицензией.
Или вы начинаете продавать свою программу и становитесь успешны. Автор изначальной программы об этом узнаёт, находит деньги на юристов и тащит вас в суд. Суд он выигрывает и забирает много денег. Но для этого он должен был о вас узнать и найти представителей в вашей стране, чтобы защитить свои права. Это дорого, но отсудит он в разы больше.
Последний вариант: вы госкомпания. Ваше ведомство выкатило вам требование, что вы не должны использовать ПО с открытым исходным кодом или написанное в недружественных странах. Вы случайно использовали такой код. На очередной проверке это вскроется, кто-то лишится должности и сядет.
Используй только свободные программы!
Поэтому лицензии лучше не нарушать. В краткосрочной перспективе вам за это ничего не будет, но если дело пойдёт, нарушенные условия лицензии могут дорого обойтись.
Популярные лицензии софта
GNU GPL (GNU General Public License) — универсальная общедоступная лицензия, которая считается основной лицензией в мире открытого и свободного ПО. По этой лицензии пользователь получает 4 свободы:
- запускать программу с любой целью;
- изучать и изменять её исходный код;
- распространять и исходный код, и саму программу;
- улучшать программу и выкладывать её для всех, но под той же лицензией.
Под этой лицензией выпущено большинство дистрибутивов Linux , и именно эта лицензия чаще всего применяется для определения свободного ПО.
Mozilla Public License — эту лицензию используют для почти всех продуктов Mozilla (браузер, почта и остальные) и во многих других компаниях. Она похожа на GPL, но с важным отличием — код под этой лицензией можно использовать вместе с закрытым кодом, права на которые есть только у его разработчика. Это значит, что в одной программе может встретиться и открытый, и закрытый код.
Лицензия Apache — она разрешает делать с кодом что угодно, главное — указать всех авторов и все патенты, которые использовались при разработке. Например, можно взять открытый код под этой лицензией, доработать его, закрыть свой код для всех и начать продавать. При этом единственное, что нужно будет сделать, — добавить два файла: один с текстом лицензии Apache, а во втором перечислить весь код, что мы использовали под этой лицензией.
Лицензии Creative Commons
Ещё есть большая группа лицензий, разработанных организацией Creative Commons, которую можно применять к программам и исходному коду. Вот некоторые лицензии, которые там предусмотрены:
- CC Attribution (CC BY) — с кодом можно делать что угодно, главное — указывать автора исходной версии.
- CC Attribution — Share Alike (CC BY-SA) — если на основе этого кода вы сделаете что-то своё, то оно тоже должно распространяться под этой же лицензией.
- CC Attribution — Noncommercial (CC BY-NC) — можно использовать код как угодно, но зарабатывать на нём нельзя.
- CC Attribution — Noncommercial — No Derivative Works (CC BY-NC-ND) — программу можно использовать как угодно, но не зарабатывать на ней и не менять в неё ни строчки кода.
Есть и много других сочетаний. Тут главное увидеть принцип: лицензии CC определяют, нужно ли указывать автора, нужно ли распространять эту лицензию дальше, можно ли менять код, можно ли на нём зарабатывать. Из этих сочетаний рождаются разные комбинации лицензий.
Бесплатное ПО — просто можно не платить, а внутри что угодно
Бесплатное ПО — то, которое авторы изначально решили отдавать бесплатно, а значит, запретили его продавать. Продажа бесплатного ПО будет считаться нарушением лицензии, за это можно привлечь к ответственности.
Бесплатным может быть любой софт: с открытым кодом, закрытым, свободное несвободное. Например, «Скайп» — бесплатное ПО, но у него закрытый исходный код.
Бывает так, что у софта есть открытый исходный код, но компания зарабатывает на его установке, поддержке или каких-то ещё услугах. Пример — платформа WordPress.com. Это сервис, который предоставляет вам платные услуги хостинга на базе открытой, бесплатной и свободной системы WordPress. Сам WordPress продавать нельзя, а вот услуги по его поддержанию, наладке, размещению и резервированию — можно.
Открытое ПО — можно посмотреть исходники
Открытое программное обеспечение — это софт, у которого исходный код доступен всем, поэтому эту категорию ещё называют «ПО с открытым исходным кодом», «опенсорс» и open source.
Открытый исходный код значит, что любой человек может посмотреть, как сделана программа, найти уязвимости и написать что-то совместимое или похожее. Или взять какой-нибудь алгоритм и сделать что-то на его основе. Или найти недочёт и предложить улучшение.
В силу технологий любой софт на Python, PHP или JavaScript имеет открытый исходный код (если разработчик не пытался его намеренно обфусцировать ). Если вы скачаете дистрибутив WordPress для своего сайта, вы сможете залезть во все модули программы, посмотреть на их логику работы и написать что-то своё, что будет дружить с «Вордпрессом».
Несмотря на открытость кода, сама программа может быть под любой лицензией — например, можно сделать программу с открытым кодом и только для некоммерческого использования. Или сделать открытый код, но запретить его менять. Открытость кода ничего не говорит о правах на использование программы.
Свободное ПО — делай что хочешь, но не закрывай
Свободное ПО — это софт, который можно использовать, применять, изучать и менять без ограничений. Но результат тоже должен быть свободно доступен для всех желающих, иначе это уже не свободное ПО. То есть взять свободный софт и поменять там строчку кода можно; а вот продавать этот изменённый софт уже нельзя.
Пример с отличием открытого от свободного ПО. Есть библиотека машинного обучения TensorFlow . Она выпущена под лицензией Apache. Это проект с открытым исходным кодом, и каждый может в него заглянуть и разобраться, как там всё устроено. Но при этом кто угодно на основе этой библиотеки может создать свою, закрыть свой код и начать продавать — лицензия Apache это позволяет. Это уже не свободное ПО.
Риски и нюансы
Опенсорс может быть опаснее: если у вас сайт на опенсорсной платформе, то любой хакер может посмотреть исходный код этой платформы и найти там баг. Если хакер захочет вам навредить, он использует этот баг и что-нибудь поломает. Или он сообщит о баге разработчику и предложит заплатку.
Так как опенсорсные проекты поддерживают группы разработчиков, часто анонимные, они могут решить сделать в коде что-то вредоносное. Это разрушит их репутацию, но чем не пожертвуешь в порыве массового психоза.
Когда у софта закрытый код, то найти в нём уязвимость намного сложнее (но тоже возможно), а если появится что-то вредоносное — понятно, кто за это отвечает.
Открытое ПО не работает в энтерпрайзе. Когда у тебя маленькое предприятие, ты можешь отлично использовать открытое ПО и никому ничего не платить. Но однажды у тебя появятся потребности в доработке или обслуживании этого софта — например, что-то сломалось, а у тебя на этом завязаны важные технологические процессы. К кому ты пойдёшь? Тебе никто ничего не должен.
Поэтому в крупном бизнесе используют закрытое энтерпрайзное ПО — это программы, написанные специально под задачи крупного бизнеса. Поставщики этих программ занимаются не только разработкой, но и поддержкой и докруткой этого софта. Причём их основной бизнес — это именно поддержка. У каждого предприятия свои запросы и поломки.
Хорошие примеры — Atlassian и 1С. Первые делают систему Jira, которую используют почти во всех ИТ-компаниях. Вторые — систему для бухгалтерского учёта, склада и т. д. «Джира» и «1С: Предприятие» — не самые удобные и вылизанные программы. Но когда тебе срочно нужно добавить какую-то возможность (или что-то починить) — ты звонишь своему провайдеру, и он обязан по договору тебе помогать. С открытым ПО так не получится.
Открытое ПО нельзя так просто закрыть. Вот была компания Intuit, делала энтерпрайзную бухгалтерию, CRM и сервисы рассылок. Потом они решили, что больше не будут обслуживать клиентов из России. И ничего ты им не сделаешь, имеют право.
А вот OpenOffice и LibreOffice, для сравнения, нельзя будет просто так отключить для России или любой другой страны. Это свободное ПО, и спасибо ему за это.
Источник: dzen.ru
Что такое свободное программное обеспечение (СПО)?
Свободное программное обеспечение (СПО) – программное обеспечение, которое пользователь имеет право неограниченно раз устанавливать, запускать, а также это свободное использование, изучение, распространение и изменение (совершенствование) защищено юридически авторскими правами при помощи свободных лицензий.
История
Когда появились первые компьютеры, то все программы для них представляли собой СПО в том смысле, какой вкладывается в это понятие сейчас. Например, стоимость программ, установленных на компьютерах IBM, была включена в цену аппаратного обеспечения.
В 1969 году правительство США объявило, что включение свободных программ в комплект аппаратных средств нарушает принципы конкуренции. Поэтому в 1970 и начале 1980-х годов в индустрии программного обеспечения начали использовать технические меры, чтобы предотвратить изучение и модифицирование ПО, а в 1980 году был принят закон об авторском праве для компьютерных программ.
В 1983 году Ричард Столлман, член хакерского сообщества MIT Лаборатории искусственного интеллекта, объявил начало проекта GNU, разочаровавшись в последствиях изменения культуры компьютерной индустрии. В январе 1984 года началась разработка программного обеспечения для операционной системы GNU и был создан Фонд свободных программ. Ричард Столлман разработал свободное программное обеспечение и понятие free software (свободное программное обеспечение) для того, чтобы обеспечить свободу копирования ПО для всех.
Термин open source (открытый код) был создан гораздо позднее, в 1998 году Эриком Реймондом и Брюсом Перенсом, которые считали, что термин free software в английском языке неоднозначен, т.к. может означать и «свободный», и «бесплатный», а потому смущает многих коммерческих предпринимателей.
Определение свободного программного обеспечения
“Свободное программное обеспечение” означает свободу, а не цену. Чтобы понять эту концепцию, следует представлять себе “свободу слова”, а не что-то бесплатное.
Существуют четыре разновидности свободы пользователей программы:
- Программу можно свободно использовать с любой целью («нулевая свобода»).
- Можно изучать, как программа работает, и адаптировать её для своих целей («первая свобода»). Условием этого является доступность исходного текста программы.
- Можно свободно распространять копии программы — в помощь товарищу («вторая свобода»).
- Программу можно свободно улучшать и публиковать свою улучшенную версию — с тем, чтобы принести пользу всему сообществу («третья свобода»). Условием этой третьей свободы является доступность исходного текста программы и возможность внесения в него модификаций и исправлений.
Только удовлетворяющая всем четырём перечисленным принципам программа может считаться свободной программой, то есть гарантированно открытой и доступной для модернизации и исправления ошибок и дефектов, и не имеющей ограничений на использование и распространение. Нужно подчеркнуть, что эти принципы оговаривают только доступность исходных текстов программ для всеобщего использования, критики и улучшения, и права пользователя, получившего исполняемый или исходный код программы, но никак не оговаривают связанные с распространением программ денежные отношения, в том числе не предполагают и бесплатности. Наоборот, свободное ПО вполне можно распространять (и распространяют), взимая при этом плату, однако соблюдая при этом критерии свободы: каждому пользователю предоставляется право получить исходные тексты программ без дополнительной платы (за исключением цены носителя), изменять их и распространять далее. Всякое программное обеспечение, пользователям которого не предоставляется такого права, является несвободным — независимо от любых других условий.
Источник: linuxmasterclub.ru
Лицензионные и свободно распространяемые программные продукты
презентация к уроку
Неотъемлемой частью компьютера является программное обеспечение , ведь компьютер работает по программе и с программами. Сам компьютер не обладает знаниями ни в одной области применения. Все эти знания сосредоточены в выполняемых на компьютерах программах. Программное обеспечение ( англ. software ) – это совокупность программ, обеспечивающих функционирование компьютеров и решение с их помощью задач предметных областей.
Классификация программ по их правовому статусу программы Свободно распространяемые Условно бесплатные лицензионные
Использование программного обеспечения (ПО) является законным только тогда, когда на это есть согласие владельца авторских прав. Основой правовых отношений между пользователем и собственником ПО является ЛИЦЕНЗИЯ . Лицензия на программное обеспечение это правовой инструмент, определяющий использование и распространение программного обеспечения, защищённого авторским правом
Лицензия на ПО Копии программ, используемые в соответствии с условиями лицензионного договора, называют ЛИЦЕНЗИОННЫМИ . Копии, используемые без соответствующего лицензионного договора или с нарушением его условий, называют КОНТРАФАКТНЫМИ или , в просторечии, ПИРАТСКИМИ .
Лицензионные программы В соответствии с лицензионным соглашением разработчики программы гарантируют её нормальное функционирование в определенной операционной системе и несут за это ответственность.
Лицензионные программы разработчики обычно продают в коробочных дистрибутивах. В коробочке находятся CD-диски, с которых производится установка программы на компьютеры пользователей, и руководство пользователей по работе с программой.
Платные программы эта группа содержит следующие виды лицензий: Commercialcc , payware — это программа, которая защищена законом об авторском праве и распространяется только за деньги. Здесь все просто — сначала купи, а потом пользуйся. Пользоваться такой программой без предварительной оплаты нельзя! Abandonware — так называемые внерыночные программы.
Как правило, это бывшие коммерческие программы, которые больше не распространяются автором. Могут распространяться правообладателем бесплатно, но с жестким запретом продаж . Orphanware — разновидность Abandonware , но когда автор неизвестен или его невозможно найти.
Платные программы Spyware — программы-шпионы . Без разрешения пользователя собирают информацию о компьютере и его действиях. Могут маскироваться под Adware . Для борьбы с такими программами используют специальные программы, антивирусы и брандмауэры. Betaware — п редварительная версия коммерческой или некоммерческой программы (бета-версия), выпущенная для тестирования . Может ограничиваться периодом тестирования.
Условно бесплатные программы ( Shareware) В русском языке этот термин интерпретируется как «условно-бесплатное программное обеспечение» или trial . Основной принцип Shareware — « попробуй, прежде чем купить ». Программа, распространяемая как shareware , предоставляется пользователям бесплатно. В течение определённого срока он может пользоваться программой, тестировать её, осваивать её возможности. По истечению этого срока пользователь обязан купить программу, заплатив автору определённую сумму или прекратить её использование и удалить со своего компьютера.
Виды лицензий условно бесплатных программ: Shareware (или «шаровары») — программа из серии «попробуй, прежде чем купить». Такую программу можно использовать бесплатно, но только с некоторыми ограничениями. Ограничения могут быть по времени использования (например, только 30 дней или только 10 запусков программы) или по функционалу (не все возможности программы доступны).
Nagware – модель лицензирования компьютерных программ, использующая навязчивое напоминание о необходимости регистрации программы за определенную плату. Trial , trialware — вид лицензии, схожий с предыдущим, но без ограничений функционала. Ограничение только по времени использования или по количеству запусков программы. Demo , demoware — демонстрационная версия коммерческого ПО.
Смысл такой программы в демонстрации возможностей и интерфейса. Функционал обычно сильно ограничен, поэтому часто такую программу невозможно попробовать в работе. Демоверсией может быть даже обычный видеоролик.
Свободно распространяемые программы Это программное обеспечение с открытым кодом, которое пользователь может легально запускать , модифицировать и распространять с небольшими ограничениями или вовсе без таковых.
Свободно распространяемые программы
Виды лицензий бесплатных программ: Freeware — полностью бесплатная программа без ограничений по функциональности и времени использования . Платить за нее не надо, если мы просто пользуемся программой в личных целях (в домашних условиях ).Если же программа используется в коммерческих целях (например, на предприятии), то чаще всего за нее потребуется заплатить. Кроме того, могут накладываться ограничения на распространение программы (автор запрещает распространение программы). OpenSource — бесплатная программа с открытым исходным текстом (кодом программы) . Такую программу можно не только использовать, но и вносить в нее изменения (изменять код), тем самым улучшая ее или переписывая «под себя». Авторские права при этом сохраняются. Могут накладываться ограничения на использование в коммерческих целях и на распространение (например, изменения могут распространяться только в виде дополнений к исходному коду).
Виды лицензий бесплатных программ: GNU GPL (GNU GeneralPublicLicense ) — универсальная общественная лицензия. Пользователю позволено практически все: использовать, изучать работу программы, изменять ее код, распространять саму программу и исходный код.
Adware — бесплатная программа без ограничений функционала, но с принудительным показом рекламы внутри самой программы . Деньги автор программы получает от рекламодателя. Зачастую рекламу можно отключить, заплатив определенную сумму разработчику.
В большинстве случаев такая программа во время работы скачивает рекламные модули (баннеры) с сайта производителя, что может оказаться небезопасным для пользователя, так как во время такого скачивания в компьютер может попасть вредоносный код. Антивирусы часто реагируют на этот механизм как на «троянского коня». Donateware , donationware — бесплатная программа без ограничений функционала. Если такая программа понравилась пользователю, то он (при желании) может сделать пожертвование ее разработчику (и об этом сказано в лицензионном соглашении).
Общие требования ко всем группам программного обеспечения : Лицензионная чистота (применение программного обеспечения допустимо только в рамках лицензионного соглашения). Возможность консультации и других форм сопровождения. Соответствие характеристикам, комплектации, классу и типу компьютеров, а также архитектуре применяемой вычислительной техники. Надежность и работоспособность в любом из предусмотренных режимов работы, как минимум, в русскоязычной среде.
Общие требования ко всем группам программного обеспечения : Наличие интерфейса, поддерживающего работу с использованием русского языка. Для системного и инструментального программного обеспечения допустимо наличие интерфейса на английском языке. Наличие документации, необходимой для практического применения и освоения программного обеспечения, на русском языке. Возможность использования шрифтов, поддерживающих работу с кириллицей. Наличие спецификации, оговаривающей все требования к аппаратным и программным средствам, необходимым для функционирования данного программного обеспечения.
Преимущества лицензионного и недостатки нелицензионного программного обеспечения
Лицензионное ПО имеет ряд преимуществ: Техническая поддержка производителя программного обеспечения Обновление программ Законность и престиж В ногу с техническим прогрессом Профессиональные предпродажные консультации Повышение функциональности
Приобретая нелицензионное программное обеспечение вы очень рискуете Административная ответственность за нарушение авторских прав Уголовная ответственность за нарушение авторских прав
При использовании нелицензионного, то есть измененной пиратами версии, программного продукта, могут возникнуть ряд проблем: Некорректная работа программы. Взломанная программа– это изменённая программа, после изменений не прошедшая цикл тестирования. Нестабильная работа компьютера в целом. Проблемы с подключением периферии (неполный набор драйверов устройств).
Отсутствие файла справки, документации, руководства. Невозможность установки обновлений. Отсутствие технической поддержки продукта со стороны разработчика. Опасность заражения компьютерными вирусами или другими вредоносными программами. При использовании нелицензионного, то есть измененной пиратами версии, программного продукта, могут возникнуть ряд проблем:
устранения неполадок в системе безопасности; обеспечения совместимости со вновь появившимися на рынке комплектующими компьютеров; оптимизации программного кода; повышения производительности всей системы. Организация обновления программного обеспечения через Интернет Обновления представляют собой дополнения к программному обеспечению, предназначенные для:
Все обновления подразделяются на: Важные обновления обеспечивают существенные преимущества в безопасности, конфиденциальности и надежности. Их следует устанавливать сразу же, как только они становятся доступны. Их можно устанавливать автоматически. Рекомендуемые обновления могут устранять менее существенные проблемы или делать использование компьютера более удобным.
Хотя эти обновления не предназначены для устранения существенных недостатков в работе компьютера их установка может привести к заметным улучшениям. Их можно устанавливать автоматически. К необязательным обновлениям относятся обновления, драйверы или новое программное обеспечение, делающее использование компьютера более удобным. Их можно устанавливать только вручную. К остальным обновлениям можно отнести все обновления, которые не входят в состав важных, рекомендуемых или необязательных обновлений.
Для обновления программного обеспечения через Интернет рекомендуется включить автоматическое обновление
Автоматическое обновление обеспечивает установку первоочередных обновлений, которые включают в себя обновления безопасности и другие важные обновления, помогающие защитить компьютер. Также рекомендуется регулярно посещать веб-узел для получения необязательных обновлений, которые помогут улучшить производительность компьютера.
По теме: методические разработки, презентации и конспекты
Лабораторная работа «Оценочное тестирование программного продукта»
Лабораторная работа по МДК.03.01 Технология разработки программного обеспечения ПМ.03 Участие в интеграции программных модулей для специальности 09.02.03 Программирование в компьютерных системах тема .
Доклад к педагогическому совету «Преимущества и недостатки использования свободного программного обеспечения в образовательном процессе СПО»
Внедрение свободного программного обеспечения (СПО) является одним из наиболее перспективных направлений в использования средств ИКТ при подготовке специалистов среднего звена. Переход образовате.
Использование свободного программного обеспечения в урочной и внеурочной деятельности (на примере ГБОУ школы №632Приморского района Санкт-Петербурга)
Лицензионные и свободно распространяемые программные продукты
Презентация к уроку «Лицензионные и свободно распространяемые программные продуктыhttps://nsportal.ru/npo-spo/informatika-i-vychislitelnaya-tekhnika/library/2020/09/29/litsenzionnye-i-svobodno» target=»_blank»]nsportal.ru[/mask_link]