четверг, 22 января 2015 г.

Ура! СПО нас спасет!

Хотел писать про мифы СПО, но не пришлось, Минкомсвязи написало.
http://beta.minsvyaz.ru/ru/activity/directions/106/


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

Нет. Уважаемый г-н Столман, которого трудно обвинить в предвзятости, на каждом своем выступлении повторяет:
 - free - значит свободное, free не значит бесплатное. И все это неравно Open Source. Это три понятия, которые смешивать не стоит.



Из свежего - славный пример Android.

http://www.cnews.ru/top/2014/03/27/vtoroy_po_velichine_proizvoditel_pk_soglasilsya_platit_microsoft_dan_za_android_565841

https://www.gnu.org/philosophy/android-and-users-freedom.html

Конечно, иногда, особенно "для себя", оно бесплатное. Но в массовых инсталяциях, при необходимости кастомизации, багфикса ты остаешься один на один с Git куда ты волен свои фиксы, ну, или если вдруг ты выпрыгнул из GNU тем или иным способом - то вперед, команда разработчиков для поддержки форка, ура!

2. Во-вторых, СПО более безопасно...

Которое из них? Свободное, бесплатное или Open Source? Скажу сразу, ни одно из них. Приводится великолепная аргументация

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

Отвечу - "многие из открытых (свободных) (бесплатных) приложений содержат недокументированные функции". Ну просто парни забыли документацию дописать. Более того, ряд документированных функций являются потенциальной грозой. Пример: Userialize, Bash.

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

Однако все это игра в слова, по сути - если ты хочешь быть более уверен в безопасности кода, то:
1. Надо найти "крайнего" за это (внутреннего или внешнего, например производителя)
2. Вменить ему этим заниматься
3. Обеспечить силами и средствами
4. Внедрять Secure SDL, configuration management, управление уязвимостями

И без разницы, "свободное" и "бесплатное" это ПО или "платное" и "пропиертарное". Да, исходные коды облегчают этот процесс, но не делают его бесплатным! А слишком "свободность" не дает выполнить задачу номер 1 - найти крайнего.

Более того, тотальная открытость делает бесполезным вопрос "кто писал эту строчку"!
Уже приводил пример, повторюсь.



Ходили слухи о "бэкдоре в криптопримитивах RSA за 10 M$". Правда кроме слухов пока ... Однако внести уязвимость а-ля HeartBleed стоит вообще ничего. И ощутили ее все.

3. В-третьих, СПО легко адаптируется: большое количество доступных свободных приложений позволяет приспосабливать их под конкретные нужды пользователей и создавать на их основе новые необходимые программы. 

Это верно. Но не стоит забывать про необходимость иметь для этого команду разработчиков (или разработчики СПО тоже free?) и соблюдать GNU (если мы про СВОБОДНОЕ ПО в терминологии). Например установка "закрытой" "несвободной" и "за деньги" Windows на HMI в системах АСУ ТП с циклом жизни в десятки лет это ошибка. Если кто не знает, во многих системах сейчас не устранена CVE-2010-2568, через которую "самоходил" Stuxnet. И не будет, пока не сменят Windows 2000/Windows XP на что-то более новое. Все, поддержка кончалась. Использование "открытой" системы позволило бы разработать свой патч.

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

Вот сразу так. Т.е. если ты "перелицовываешь" OpenSource (даже с нарушениями GPL), то ты молодец и отвечаешь национальным национальным интересам, а если пишеь свою технологию (но не СПО), то не отвечаешь?

Конечно есть уважаемые организации, такие как ALT Linux которые делают все и в духе и по букве. И к ним вопросов нет. Молодцы. Но, к сожалению таких "как правило, национальных фирм" в России можно пересчитать по пальцам.

Резюме. Конечно, боятся СПО не стоит. Использовать, адаптировать, развивать. Но всему свое время и место. Приведенные тезисы не выдерживают критики.
Более того "разработка пакета свободного отечественного программного обеспечения" может и светлая задача, но не первоочередная. См опять таки Андроид. Ну и с точки зрения безопасности, мы действительно хотим, чтобы любой АНБ free (т.е. свободно и бесплатно) "контрибутил" пакет свободного отечественного программного обеспечения?
Не надо сказок про "бесплатно", "безопасносно" и счастье. Бесплатный сыр только сами знаете где.

3 комментария:

Анонимный комментирует...

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

Анонимный комментирует...

Спасибо за конструктивный комментарий!
"Мама, ты с кем сейчас говорила?"

Unknown комментирует...

Спасибо за отличную статью.

Позиция по поводу востребованности и успешности OpenSource в промышленной разработке от практикующих специалистов: Open Source Epic Fail