Open-source: что это и зачем нужно разработчикам?
24.06.22, Пт, 14:53, Мск,
Open Source — формат программного обеспечения с открытым исходным кодом, который интенсивно набирает популярность в современном софтовом мире. Сегодня всё большее число компаний, от крупных корпораций до небольших стартапов, выбирают именно этот тип разработки ПО и поддерживают ценности открытости и сотрудничества.
Подобная структура не предполагает обособленности организаций, позволяет работать вместе и, используя меньшее количество ресурсов, достигать лучших результатов для всех. Корпорация получает возможность не изобретать велосипед и работать с готовыми решениями опенсорс-сообщества, быстро адаптируя их под свою экосистему. Для разработчика Open Source-проекты открывают широкие перспективы для профессионального роста, повышения квалификации и улучшения репутации.
Мы решили подробнее разобраться в том, какие плюсы имеют подобные проекты, и побеседовали на эту тему с веб-разработчиком и team-лидером Александром Хачикянц. За его плечами более 14 лет работы в сфере IT в крупных компаниях, менторство технических команд, организация и проведение митапов внутри компании, а также активное участие в Open Source-разработке. Вот, что Александр Хачикянц рассказал о своём взгляде на открытое ПО.
Что значит термин «Open Source» на практике?
Под Open Source подразумевают программное обеспечение с открытым исходным кодом для просмотра, изучения и изменения. Это дает возможность проанализировать, что в программе нет скрытых или недокументированных функций, например, слежки за пользователями, благодаря чему такой код считается одним из самых качественных и безопасных. Кроме того, конечный потребитель может принять участие в доработке этого софта под собственные нужды.
Какие выгоды получает конечный потребитель открытого ПО?
Большинство Open Source-решений бесплатны, что позволяет заказчикам сэкономить на разработке собственного продукта и использовать готовый, проверенный многочисленным сообществом профессионалов и временем. Сегодня существует большое число Open Source-проектов, с которыми работают многие крупные компании, среди них веб-серверы, например, nginx, и базы данных, такие как MariaDB, PostgreSQL и другие.
Также стоит отметить, что в случае возникновения проблем с открытым ПО компания-разработчик предоставляет бесплатную или платную поддержку. Кроме того, при наличии знаний и опыта такой тип исходного кода позволяет попробовать исправить проблему своими силами и сделать полезный вклад в Open Source-решение.
Стать частью мирового сообщества энтузиастов и присоединиться к подобным проектам могут как профессионалы, так и новички. Какие возможности для последних открывает Open Source-разработка?
Участие в открытых проектах может стать отличной отправной точкой в карьере разработчика. На мой взгляд, подходящей площадкой для старта является GitHub. Для многих IT-компаний аккаунт там является визитной карточкой кандидата, которая даёт возможности познакомиться с кодом разработчика. Поэтому участие в Open Source несомненно является плюсом для соискателя при прохождении интервью.
Кроме того, это хороший способ прокачать свои навыки разработчика, научиться писать код и решать проблемы так, как принято во многих ведущих IT-компаниях. Участники получают возможность познакомиться с процессами Code Review, больше узнать про стили написания кода, которые могут различаться в зависимости от проекта.
Как можно приобщиться к Open Source?
Есть много способов, перечислю пару из них. Самый простой — самостоятельно исправить проблему в одном из приложений, которым вы пользуетесь.
Также можно принять участие в онлайн-соревнованиях, которые запускаются различными IT-компаниями, например, Advent of Code или Hacktoberfest. Его организуют каждый октябрь компании GitHub и DigitalOcean. В течение месяца участники должны создать несколько пулл-реквестов с полезными изменениями в Open Source проектах. По окончании конкурса все кандидаты получают различные подарки, например, футболки с символикой конкурсов.
Как вы считаете, какими компетенциями должен обладать IT-специалист сегодня, чтобы стать частью сообщества?
Сегодня к сфере IT отлично применимо высказывание: «Нужно бежать со всех ног, чтобы только оставаться на месте».
Технологии меняются очень быстро, поэтому, чтобы оставаться «на волне», помимо фундаментальных знаний компьютерных наук, важно обладать любознательностью и широким кругозором. «Иначе, за прогрессом не угнаться», — делает вывод Александр Хачикянц.