Автор: Андрей Михалюк, CEO CoreWin
FOSS (бесплатное программное обеспечение с открытым исходным кодом) – это программное обеспечение, исходный код которого открыт для всех. Простыми словами, это означает, что любой может свободно получать доступ, распространять и менять такой софт. В отличие от него, проприетарное ПО защищено авторским правом, а исходный код недоступен. И открытый код, и коммерческие продукты имеют сильных поклонников в своих рядах.
Одним из аргументов за открытый код является то, что метод разработки программного обеспечения с открытым исходным кодом значительно превосходит коммерческие методы. Над FOSS обычно работают гораздо более большие команды, а открытость кода позволяет намного скорее выявлять уязвимости. Обычно такие уязвимости быстрее находят злоумышленники или активисты, и о них значительно быстрее становится известно как в целом, так и тем, кто разрабатывает FOSS.
Другие не согласны и указывают на важность гарантии эффективности, которую заявляет крупная коммерческая компания. Следует отметить, что маркетинговые заявления и настоящие обязательства не являются тождественными понятиями. И именно поэтому могут и не предоставлять реальных гарантий.
Одно можно сказать точно: FOSS прошел долгий путь, начиная с 80-х годов (в 1983 году стартовал проект GNU). Тогда невозможно было представить бизнес на программном обеспечении с открытым кодом. Теперь FOSS используется во многих компаниях, включая Amazon, IBM и Google. Времена, когда программное обеспечение с открытым кодом скептически воспринимали предприниматели и бизнес-профессионалы, давно позади. Более того, все громче раздается голос тех, кто считает что за открытым кодом будущее, и это происходит в первую очередь из-за смены парадигмы восприятия, как софта в целом, так и FOSS в частности. Общество все меньше воспринимает ПО как продукт и все больше как договор о предоставлении услуг.
Связано это в первую очередь с двумя факторами:
- динамичность программных средств, более короткий цикл разработки
- растущая непредсказуемость экономических реалий
С одной стороны, сейчас писать код легко как никогда. Есть и простые для понимания языки программирования высокого уровня, как Python или JavaScript с множеством библиотек и фреймворков. Невероятно много бесплатных видео-материалов, включая открытые лекции Гарварда и огромное количество форумов, таких как Stack Overflow. А также платные приложения-помощники редактора кода, которые буквально дописывают строчку за программиста. Интернет еще лихорадит ChatGPT и разговорами о том, что скоро программы будут писать программы, а человеку останется правильно поставить задачу.
С другой, мир сейчас не стабилен и инструменты, работавшие год назад, могут быть уже устаревшими или неактуальными для компании. Еще вчера стандартом мог быть бумажный журнал продаж, а сегодня компания меняет второе CRM-решение. И это не всегда связано с провалом предыдущей системы, она могла просто перестать соответствовать задачам бизнеса. О чем говорить, считается нормой обновлять корпоративный веб-сайт хотя бы раз в 3 года.
Поэтому иметь бессрочную лицензию на платное программное обеспечение без поддержки и обновлений — это медвежья услуга. Очень вероятно (практически гарантированно), что требования бизнеса к этому решению будут динамичными, это решение нужно будет донастраивать, а то и дорабатывать. Без поддержки разработчика, без доступа к коду и часто даже без форума пользователей самостоятельно это сделать практически нереально. А также достаточно быстро без систематических обновлений это решение перестанет нормально работать на обновленных ОС или с другими посторонними компонентами (БД, веб-сервер, прочее) и станет уязвимым.
Именно поэтому программное обеспечение, это по своей сути не товар, а услуга. А значит нет принципиальной разницы, код как таковой закрыт или открыт. На первый план выходит уровень поддержки и гибкости интегратора, дистрибьютора и команды разработки, которые обеспечивают работу решения и его адаптацию под вас.
С учетом этих тенденций на рынке возникают гибридные разработчики. Которые с одной стороны работают над FOSS решениями, с другой имеют штат разработчиков, службу поддержки и партнерский канал.
Плюсы и минусы
Давайте внимательно рассмотрим основные плюсы и минусы использования ПО с открытым кодом в бизнесе. А также посмотрим, как на них повлияет наличие качественного сервиса рядом с бесплатным софтом. Разберем каждый пункт и рассмотрим вариант гибридный, в котором код является бесплатным, но за ним стоит мощная компания-разработчик со службой поддержки и имеющимся каналом партнеров в вашем регионе.
Плюс: Начальная стоимость
Начальные расходы на программное обеспечение с открытым исходным кодом почти отсутствуют. Вам просто нужно скачать код из оригинального источника, и все готово. Если у вас ограничен бюджет, возможно, будет хорошей идеей воспользоваться открытым кодом, а не тратить деньги на дорогостоящие решения. Но отсутствие начальных затрат не означает, что их нет… что приводит нас к нашему первому аргументу против этого.
Минус: Долгосрочная стоимость
Когда-то затраты на программное обеспечение FOSS могут вырасти. Если возникнет какая-либо проблема, требующая немедленного решения, вы должны будете отреагировать быстро. Однако вы не можете нажать на поставщика или поддержку разработчика, поскольку они отсутствуют. Вместо этого вам придется либо решать проблемы самостоятельно, либо искать внешнюю помощь.
Минус в таком случае, как мы видим, упирается в отсутствие поддержки разработчиком и партнера на месте. На практике, хотя принято считать, что именно у бесплатного ПО отсутствуют эти элементы, они могут отсутствовать в конкретном регионе и у платного решения. А в случае наличия компании-разработчика FOSS и сети локальных партнеров – эти недостатки полностью нивелируются.
Вывод
В этом разделе мы видим подтверждение тезиса, что софт это в первую очередь услуги. При достаточном уровне поддержки ПО с открытым кодом позволяет избежать больших начальных инвестиций, но при этом иметь поддержку от разработчиков в критической ситуации.
Плюс: Надежность
Программное обеспечение с открытым кодом очень надежно. Обычно тысячи экспертов-разработчиков работают над созданием и постоянным усовершенствованием такого ПО. Это означает, что есть больше шансов, что кто-нибудь заметит недостаток или ошибку и быстро ее исправит. Еще одна пара глаз это всегда плюс, а в этом случае — сотни или тысячи глаз.
Минус: Поддержка
Ключевым преимуществом коммерческого программного обеспечения является обслуживание и поддержка. Именно этого обычно не хватает софту с открытым кодом. Коммерческие поставщики предлагают постоянную поддержку, и это важно, если вы не владеете техническими навыками.
Однако этот минус опять-таки нивелируется в гибридном типе решения, описанном выше.
Вывод
Для классического бесплатного софта отсутствие постоянной и оперативной поддержки является серьезной проблемой. Однако поскольку по последним тенденциям у бесплатного ПО есть компания, которая стоит за ним, то техническая поддержка есть в наличии. Важно не забыть ее приобрести.
Плюс: Долговечность
Поскольку любой может получить доступ к исходному коду, программное обеспечение с открытым кодом может постоянно развиваться. Любой может внести свой вклад в улучшение ПО без каких-либо ограничений поставщиков. Кроме того, если коммерческая компания, создавшая программное обеспечение, прекращает работу, вы теряете поддержку, исправление и все другие услуги, которые они включали. Это не касается FOSS, поскольку вы можете обратиться за помощью к сообществам пользователей или при необходимости нанять отдельных программистов.
Минус: Разработчики могут покинуть проект
Всегда существует вероятность, что разработчики программы потеряют интерес к дальнейшей работе над программным обеспечением или просто перейдут к другому проекту. В связи с этим как софт с открытым кодом, так и проприетарное ПО может быть прекращено по какой-либо причине.
Вывод
К сожалению, как для платного, так и бесплатного софта всегда есть риск, что компания обанкротится, все активисты потеряют интерес и ПО перестанет дорабатываться. Со всем тем, для гибридной компании риск того, что компания закроется, не выше чем для платных, но есть дополнительный ресурс в виде активистов, которые могут поддерживать решение.
Плюс: Безопасность
Приверженцы открытого программного обеспечения утверждают, что ПО с открытым исходным кодом в целом более безопасно, чем проприетарный софт. Ошибки и другие проблемы, как правило, разрешаются, как только их обнаруживают участники сообщества.
Минус: Безопасность
Софт с открытым кодом не разрабатывается в контролируемой среде. Учитывая, что над программным обеспечением работают сотни разработчиков, существует вероятность, что некоторые из них могут иметь плохие намерения. Для катастрофы нужен всего один программист, чтобы включить вирусы в программное обеспечение. В случае закрытого ПО только разработчики поставщика могут просматривать и менять исходный код.
Вывод
При гибридном подходе решение берет лучшее из обоих миров. С одной стороны, безопасность проверяют все желающие, а значит, выявление проблем значительно ускоряется. С другой, в случае наличия компании-разработчика именно они контролируют релиз основной ветки разработки. Так сказать, «сертифицированной» версии решения, а значит, применяют не меньший уровень контроля качества, чем платные решения.
Специалисты о развитии открытого программного обеспечения
В заключение, вот что о ПО с открытым кодом говорят коллеги, подтверждая, что рынок движется в сторону трансформации от закрытого кода к открытому.
«Открытый исходный код будет продолжать захватывать каждую область, к которой прикасается проприетарное программное обеспечение. Мы увидим больше (успешных) альтернатив программного обеспечения с открытым кодом (OSS) имеющимся инструментам, на которые мы все полагаемся. Будет расти и сообщество разработчиков, поскольку компании и правительства будут продолжать увеличивать свои инвестиции в стратегию программного обеспечения с открытым кодом», — Avi Press, CEO of Scarf.
«Проблема, которая сейчас возникает [для всех нас], состоит в том, что разработка и поддержка программного обеспечения с открытым кодом традиционно в значительной степени возлагается на небольшие группы участников с большим опытом. Эти небольшие группы заботятся о проектах, даже если эти проекты становятся более критичными для компаний и пользователей, поэтому эта технология встроена в программы, которыми пользуются миллионы людей. Это означает, что для того, чтобы программное обеспечение продолжало быть успешным, сами проекты в конечном итоге зависят от людей, которые не получают того уровня поддержки, в котором они нуждаются и заслуживают», — Amanda Brock, CEO of OpenUK.
«От операционных систем до механизмов безопасности и потока данных, прозрачность и инклюзивность — это суть открытого кода. Используя [их глобальные объединенные] общие ресурсы, разработчики могут вдохновиться на инновации, создание и, наконец, способствовать оптимизации организационных операций. Облачные вычисления воплощают этот дух, обеспечивая гибкое развертывание и сотрудничество для объектов с открытым кодом и делая их доступными для более широкой аудитории», — Yangqing Jia, former Vice President of Alibaba Group.







