Разработка СПО: мифы и реальность. Как и зачем программисты становятся разработчиками свободного софта?::
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Дата-центры  

Дата-центры: есть ли опасность утечки данных?

Российские компании уже несколько лет испытывают дефицит вычислительных мощностей. Рост числа проектов,

 Читать далее...

Книжная полка  

Защиты много не бывает

Среди книжных новинок издательства «БХВ» есть несколько изданий, посвященных методам социальной инженерии

 Читать далее...

Событие  

В банке рассола ждет сисадмина с полей фрактал-кукумбер

Читайте впечатления о слете ДСА 2024, рассказанные волонтером и участником слета

 Читать далее...

Организация бесперебойной работы  

Бесперебойная работа ИТ-инфраструктуры в режиме 24/7 Как обеспечить ее в нынешних условиях?

Год назад ИТ-компания «Крок» провела исследование «Ключевые тренды сервисного рынка 2023». Результаты

 Читать далее...

Книжная полка  

Читайте и познавайте мир технологий!

Издательство «БХВ» продолжает радовать выпуском интересных и полезных, к тому же прекрасно

 Читать далее...

СУБД PostgreSQL  

СУБД Postgres Pro

Сертификация по новым требованиям ФСТЭК и роль администратора без доступа к данным

 Читать далее...

Критическая инфраструктура  

КИИ для оператора связи. Готовы ли компании к повышению уровня кибербезопасности?

Похоже, что провайдеры и операторы связи начали забывать о требованиях законодательства

 Читать далее...

Архитектура ПО  

Архитектурные метрики. Качество архитектуры и способность системы к эволюционированию

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

 Читать далее...

Как хорошо вы это знаете  

Что вам известно о разработках компании ARinteg?

Компания ARinteg (ООО «АРинтег») – системный интегратор на российском рынке ИБ –

 Читать далее...

Графические редакторы  

Рисование абстрактных гор в стиле Paper Cut

Векторный графический редактор Inkscape – яркий представитель той прослойки open source, с

 Читать далее...

День сисадмина  

Учите матчасть! Или как стать системным администратором

Лето – время не только отпусков, но и хорошая возможность определиться с профессией

 Читать далее...

День сисадмина  

Живой айтишник – это всегда движение. Остановка смерти подобна

Наши авторы рассказывают о своем опыте и дают советы начинающим системным администраторам.

 Читать далее...

Виртуализация  

Рынок решений для виртуализации

По данным «Обзора российского рынка инфраструктурного ПО и перспектив его развития», сделанного

 Читать далее...

Книжная полка  

Как стать креативным и востребованным

Издательский дом «Питер» предлагает новинки компьютерной литературы, а также книги по бизнесу

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 6385
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 7094
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4375
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 3077
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3872
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3890
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6382
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3229
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3522
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7353
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10713
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12437
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 14083
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9187
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7138
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5443
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4679
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3489
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3208
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3445
Комментарии: 0
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 3084
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 Разработка СПО: мифы и реальность. Как и зачем программисты становятся разработчиками свободного софта?

Архив номеров / 2021 / Выпуск №03 (220) / Разработка СПО: мифы и реальность. Как и зачем программисты становятся разработчиками свободного софта?

Рубрика: Разработка /  Open source

 ВИЗИТКА 


Алексей Новодворский,
заместитель генерального директора «Базальт СПО»

 

Разработка СПО: мифы и реальность
Как и зачем программисты становятся разработчиками свободного софта?

Курс государства на технологическую независимость в сфере ИТ поднял волну интереса к свободному программному обеспечению. К СПО стали обращаться разработчики, которые пришли из мира проприетарного ПО и не имеют опыта создания свободных программ. Люди, посвятившие свободному ПО бо́льшую часть своей жизни, рады притоку энтузиастов в свои ряды. Однако мы видим, что вокруг нового тренда возникло множество мифов, заблуждений, неточных толкований. В этой статье попытаемся развеять некоторые из этих мифов и расскажем, как обстоят дела в действительности

 

Четко ли вы представляете себе, какое именно программное обеспечение относится к категории свободного? Для того чтобы составить достоверное представление об СПО, прочтите, прежде всего, Манифест GNU, опубликованный в 1985 году Ричардом Столлманом. В нем внятно и образно изложены цели и принципы движения СПО. А затем, для полноты картины – ГОСТ Р 54593-2011 «Информационные технологии. Свободное программное обеспечение. Общие положения», где описан объем прав (свобод), которые может давать лицензионный договор на СПО-продукт.

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

Ключевые вопросы
1.Какие свободные программные продукты можно взять за основу собственной разработки?
2.Под какой лицензией (лицензиями) вы будете распространять свой программный продукт? Почему выбрана именно эта лицензия?
3.Как найти помощников, которые заинтересуются совместной разработкой и распространением программного продукта?
4.Как распространять продукт?
5.Как обеспечивать его жизненный цикл (модернизировать, улучшать, обеспечивать преемственность версий и т.п.)?

«На плечах гигантов»: сторонние компоненты в вашем программном продукте

В современном мире практически ни одно приложение не разрабатывается «от и до» собственными силами. В той или иной мере все разработчики используют компоненты свободного ПО: достаточно привести в пример таких гигантов как Microsoft, IBM, Google, Яндекс.

Одно дело, когда вы знаете, что коллеги увидят и оценят ваши разработки. И совсем другое, когда вы инкогнито для сообщества создаете код, к которому бизнес предъявляет одно требование: работоспособность. Выдавая «на гора» такой код, вы становитесь крепким благополучным ремесленником, но уменьшаете шансы стать уникальным мастером

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

Например, компоненты для обеспечения харденинга (безопасности) ПО создают Kernel, Glibc, libssl, GCC и Open Wall Linux (OWL). Контроль цепочек зависимостей на основе RPM обеспечивает Apt RPM. Xcat – управление узлами, используемыми в суперкомпьютерах. Strace – отслеживание системных вызовов между процессом и операционной системой (ядром) и многие другие.

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

Например, если вы взяли за основу программный продукт под GNU GPL и модифицировали его, то производный продукт обязательно должны будете распространять тоже на условиях GNU GPL – лицензии, которая запрещает закрывать коды после их модификации. Таким образом воплощается принцип «наследования» прав, или «копилефт».

«Все-в-одном»: репозиторий

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

Репозитории тесно связаны с инфраструктурой разработки ПО. Создавать программные продукты на основе репозитория могут не только его владельцы: как правило, он открыт для всех желающих, которые готовы соблюдать правила работы. Это взаимная выгода: репозиторий получает полезные, качественные разработки, а программисты – возможность пользоваться аккумулированными плодами чужого труда, причем «свежими» и лучшими плодами. Подобные репозитории ведут, например, крупнейшие проекты разработки операционных систем на основе ядра Linux: Red Hat, Debian, SUSE и отечественный репозиторий «Сизиф» (Sisyphus).

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

Например, разработчикам, работающим с «Сизифом», открыт доступ практически ко всем хранящимся в нем разработкам, к технологиям и сборочным системам. Закрытые разработки, составляющие небольшую долю от общего объема, связаны, как правило, с обеспечением безопасности или обязательствами «Базальт СПО» (держателя репозитория) перед сторонними фирмами.

Существенное преимущество работы с отечественным репозиторием – в том, что вам становятся доступны разработки отечественных программистов, которые не включаются в зарубежные репозитории.

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

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

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

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

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

Перспективно ли быть разработчиком свободного ПО?

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

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

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

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

«Покажи мне свой код»!

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

«Покажи мне свой код!» – это требование, ставшее каноническим в среде СПО, неизменно предъявляет Линус Торвальдс к программистам, желающим присоединиться к проекту разработки ядра Linux.

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

Деньги vs имя

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

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

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

Ждать готовы не все. Веяние сегодняшнего времени – создание стартапов, разрабатывающих решения с использованием компонентов СПО. Участие в таком проекте сильно повышает шансы быстро получить желаемое материальное вознаграждение. Но побочным эффектом становится ваша «обезличенность» для сообщества. В проектах, нацеленных на извлечение прибыли, известность обретают, как правило, не разработчики, а бизнесмены, которые организовали стартап, вложили в него деньги и продвигают продукт на рынок.

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

Еще один минус начала карьеры с коммерческого проекта – достаточно слабый стимул добиваться высокого качества кода. Одно дело, когда вы знаете, что коллеги увидят и оценят ваши разработки. И совсем другое, когда вы инкогнито для сообщества создаете код, к которому бизнес предъявляет одно требование: работоспособность. Выдавая «на гора» такой код, вы становитесь крепким благополучным ремесленником, но уменьшаете шансы стать уникальным мастером. Что важнее – каждый решает для себя.

 


Подпишитесь на журнал
Купите в Интернет-магазине

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru