Moira участвует в Google Summer of Code 2019
В этом году пройдёт пятнадцатый Google Summer of Code, и в нём примет участие 206 проектов с открытым кодом. Для 27 проектов этот год будет первым, в том числе для Moira. Это наша любимая система для уведомлений о нештатных ситуациях, созданная в Контуре.
Я слегка поучаствовал в том, чтобы Мойра попала в GSoC, так что сейчас расскажу из первых рук, как случился этот маленький шаг для open source и огромный скачок для Мойры.
Каждый год в GSoC участвует примерно тысяча студентов со всего мира. В прошлом году студентов было 1072, они были из 59 стран и работали над 212 проектами с открытым кодом. Google спонсирует участие студентов и платит им стипендии, а разработчики проектов выступают менторами для студентов, помогают им влиться в open source. Для многих студентов это лучший шанс, чтобы получить опыт промышленной разработки и прикольную строчку в резюме.
Какие проекты участвуют в GSoC в этом году? Кроме проектов от больших организаций (Apache, Linux, Wikimedia), можно выделить несколько больших групп:
- операционные системы (Debian, Fedora, FreeBSD)
- языки программирования (Haskell, Python, Swift)
- библиотеки (Boost C++, OpenCV, TensorFlow)
- компиляторы и системы сборки (GCC, LLVM, webpack)
- инструменты для работы с исходным кодом (Git, Jenkins, Neovim)
- инструменты DevOps (Kapitan, Linkerd, Moira)
- базы данных (MariaDB, PostgreSQL)
Сейчас расскажу, как в этом списке оказалась Мойра.
В январе начался приём заявок на участие в GSoC. Мы с командой разработчиков Мойры из Контура поговорили и поняли, что хотим участвовать. Мы категорически не представляли — и всё ещё не представляем — сколько сил для этого нужно, но чувствовали сильное желание увеличить комьюнити разработчиков Мойры, добавить в Мойру несколько больших фич и поделиться нашей любовью к сбору метрик и правильному алертингу.
Всё началось без неожиданностей. Сначала заполнили страничку проекта на сайте GSoС, рассказали про Мойру и её сильные стороны.
Потом нужно было решить, над какими крупными фичами участники GSoC будут работать этим летом. Создать страницу в документации Мойры было легко, а вот договориться, какие задачи туда вписать, было тяжелее. Нужно было ещё в феврале выбрать задачи, которые будут делать студенты в течение лета. А это значит, что нам нельзя будет взять и внезапно сделать их вместо студентов. Когда обсуждали с разработчиками Мойры, какие задачи придётся «отложить» для GSoC, в наших глазах практически стояли слёзы.
В итоге туда попали задачи из ядра Мойры (про API, health-чеки и каналы для доставки алертов) и из её веб-интерфейса (про интеграцию с Grafana, миграцию кодовой базы на TypeScript и переход на нативные контролы). Кроме того, мы заготовили некоторое количество мелких задач на Гитхабе, с помощью которых будущие участники GSoC могли бы познакомиться с кодовой базой и понять, на что будет похожа разработка в Мойре.
Потом были три недели ожидания, лёгкая радость от письма счастья…
…и взрыв в чате разработчиков Мойры. Туда пришло много активных участников с интересными именами и началась движуха. Сообщения в чате сменили язык с русско-английского микса на pure engineering English, а разработчики Мойры в фирменном стиле стали знакомиться с новыми участниками:
«Good first issues» на Гитхабе разлетелись как горячие пирожки. Пришлось заняться тем, чего совершенно не ожидали: придумыванием большой пачки небольших ознакомительных задач специально для новых участников сообщества.
Однако мы справились и рады этому.
В ближайший понедельник, 25 марта, на сайте Google Summer of Code откроется приём заявок от студентов на участие в конкретных проектах. У всех желающих будет две недели, чтобы подать заявку на летнее участие в разработке Moira, Haskell, TensorFlow или любого другого из двух сотен проектов. Участвуйте вместе с нами, и давайте сделаем большой вклад в open source этим летом.
Полезные ссылки:
А ещё подписывайтесь на блог Контура на Хабре и наш канал для разработчиков в Телеграме. Буду рассказывать в них, как участвуем в GSoC, и про другие интересные штуки.