До 30 ноября

Скидки до 81 000 руб и вторая профессия в подарок!

Главная | Все статьи | Мотивация

Почему не нужно бояться опенсорса: студенты Хекслета о пользе участия в проектах с открытым исходным кодом

Без стека Время чтения статьи ~9 минут 17
Почему не нужно бояться опенсорса: студенты Хекслета о пользе участия в проек... главное изображение

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

Всем привет! Меня зовут Максим Скрипов, я отвечаю за развитие опенсорс проектов на Хекслете и организую стажировки для студентов.

Опенсорс — это проекты с открытым исходным кодом, которые может развивать любой желающий разработчик. Участие в таких проектах помогает:

  • Закрепить свои знания на практике
  • Прокачать скилл в работе с Git
  • Научиться читать чужой код
  • Устроиться на желаемое место работы.

У опенсорс проектов Хекслета большое комьюнити разработчиков, которые вместе обсуждают трудные задачи и находят им решение. Комьюнити насчитывает более 35 тыс. человек и постоянно растет. На опенсорс проектах Хекслета наши разработчики регулярно выполняют код-ревью — так студенты учатся на своих ошибках и набираются опыта у своих старших коллег.

Несмотря на очевидные плюсы опенсорса, некоторые студенты отказываются от участия в проектах с открытым исходным кодом. Свое решение они объясняют так:

  1. «У меня мало опыта для опенсорса»
  2. «Я не знаю, с чего начать»
  3. «У меня не получилось запустить проект, и я забил»
  4. «Мне кажется, что я еще совсем не готов к опенсорсу»
  5. «Я приступлю к опенсорсу после того, как закончу обучение».

Такие возражения возникают из-за неуверенности разработчиков в своих силах. Это нормально — бояться пробовать что-то новое и впадать в ступор от сложных задач. Тем более, когда человек видит перед собой гигантские куски кода, которые писали разные люди. Но на самом деле все не так страшно, как кажется.

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

Сергей Каликин: «Я наконец-то стал ощущать себя полноценным разработчиком»

Во время учебы я не решался попробовать силы в опенсорсе Хекслета, однако периодически заходил на страницы проектов, смотрел issues. Совсем простые задачи выполнять не хотел, а на что-то покрупнее, вроде перевода редактора Hexlet-SICP на React, не мог осмелиться. Я ощущал непонятный страх сделать что-то не так.

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

Тогда же я изучил условия отбора на стажировку в Ростелеком. Компания рассматривала только тех кандидатов, которые участвовали в опенсорсе. Тут я задумался: раз это требуют такие большие компании на официальном уровне, значит, опенсорс проекты могут быть мне полезны.

Читайте также: Как выбрать свой первый опенсорс проект: инструкция от Хекслета

Я поборол страх неизвестности и вспомнил про задачку, которая меня давно интересовала — та самая, про перевод Hexlet-SICP на React. Сделал форк репозитория Hexlet-SICP, локально развернул проект и пошел разбираться, что и как тут работает. После дня экспериментов у меня даже получилось сделать что-то по этому проекту, чему я был очень рад.

Потом я написал в сообщество Хекслета к Николаю Гагаринову (в Хекслете он занимался организацией стажировок) и узнал у него, как работают пулл-реквесты. После этого я очень увлекся переводом редактора на React. Мне было приятно осознавать, что я занимаюсь реальным проектом. В итоге до релиза фичи с поэтапным внедрением функций я сделал около десяти пулл-реквестов, и мне даже удалось поработать с PHP.

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

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

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

Артем Кропп: «Опенсорс сыграл весомую роль в принятии решения по моей кандидатуре на работе»

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

Поначалу было страшно. Боялся, что другие разработчики увидят, как плохо я пишу код, не хотел напортачить. Но я все же превозмог себя, понял, что плюсы от участия перевешивают мои страхи и взялся за проект Hexlet Friends. Тогда разработчики собирали на нем статистику по участию в проектах Хекслета на Github. В статистику входили комментарии, пулл-реквесты, issues.

Без трудностей не обошлось. Было тяжело поначалу вникнуть в проект, понять, как он работает. Также я долго разбирался в чужом коде. Потом, когда я разъяснил все непонятные моменты, задача показалась уже не такой страшной, какой была на первый взгляд. Мои пулл-реквесты ревьюили другие разработчики и грамотно объясняли, где у меня недочеты и как я могу их избежать в будущем.

Когда я устраивался на работу, меня спрашивали о том, участвовал ли я на каких-то проектах, просили подробно рассказать об этом. Наверное, хотели понять, какой вклад я внес в проект и как я в целом работаю. В итоге мое собеседование прошло удачно, и меня взяли. Думаю, что опенсорс сыграл весомую роль в принятии решения по моей кандидатуре.

Читайте также: Как присоединиться к работе над опенсорсом, что такое PS1 и другие вопросы: отвечает разработчик Хекслета Андрей Мошков

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

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

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

Ольга Пеженкова: «Опенсорс проекты очень похожи на реальные рабочие задачи»

Разработчики рекомендуют участвовать в опенсорсе еще во время учебы, но я познакомилась с проектами позже. Будучи студенткой, я просто не знала, как выбрать проект, с чего начать его выполнение и где искать помощи, если что-то пойдет не так.

Теперь, когда у меня уже есть некоторый опыт работы, я могу сказать точно — участие в опенсорсе дает отличную возможность погрузиться в эмуляцию рабочего процесса. Опенсорс проекты очень похожи на реальные задачи: у всех есть цель или описание проблемы, список технологий, которые нужно использовать.

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

Далее нужно разобраться, какие инструменты используют разработчики и какие на проекте есть практики — от naming conventions до тестирования. Важно также понять, как устроена сборка, изучить кодовую базу и определить для своей задачи «точку входа». И, конечно, в опенсорсе не обойтись без знания основных команд по работе с Git.

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

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

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

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

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

Как принять участие в опенсорс проекте

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

Помните, что в любом деле главное — начать. Выберите себе любой проект и прочитайте информацию о нем в файле Readme на GitHub:

Затем изучите, как запустить этот проект локально у себя на компьютере.

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

Еще вы можете задать свой вопрос разработчикам из Хекслет Комьюнити или в комментариях к задаче, и вам помогут. Главное на этом этапе — не бросать участие в проекте и идти дальше, потому что трудности — абсолютно нормальны.

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

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

Подготовьтесь к участию в опенсорсе! На Хекслете есть сотни образовательных программ по разработке на разных языках и технологиях, которые дадут вам все необходимые знания для участия в опенсорс проектах. Пройдите курсы, чтобы получить от опенсорса максимум практического опыта!

Аватар пользователя Maxim Skripov
Maxim Skripov 26 октября 2022
17
Рекомендуемые программы
профессия
Осваивайте разработку веб-страниц, оживляйте дизайн макетов, публикуйте сайты и приложения. Отслеживайте ошибки в интерфейсе и устраняйте их
10 месяцев
с нуля
Старт 21 ноября
профессия
Обучитесь разработке бэкенда сайтов и веб-приложений — серверной части, которая отвечает за логику и базы данных
10 месяцев
с нуля
Старт 21 ноября
профессия
Выполняйте ручное тестирование веб-приложений, находите ошибки в продукте. Узнайте все о тест-дизайне.
4 месяца
с нуля
Старт 21 ноября
профессия
Научитесь разработке веб-приложений, сайтов и программного обеспечения на языке Java, программируйте и используйте структуры данных
10 месяцев
с нуля
Старт 21 ноября
профессия
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 21 ноября
профессия
Занимайтесь созданием сайтов, веб-приложений, сервисов и их интеграцией с внутренними бизнес-системами на бекенд-языке PHP
10 месяцев
с нуля
Старт 21 ноября
профессия
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 21 ноября
профессия
Обучитесь разработке визуальной части сайта — фронтенда, а также реализации серверной — бэкенда. Освойте HTML, CSS, JavaScript
16 месяцев
с нуля
Старт 21 ноября
профессия
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 21 ноября
профессия
новый
Организовывайте процесс автоматизации тестирования на проекте, обучитесь языку программирования JavaScript, начните управлять процессом тестирования
8 месяцев
c опытом
Старт 21 ноября