Всем привет !

Это моя история о GSoC 2020. Я рад поделиться с вами своим путешествием. Найдите волшебство где-нибудь в статье и поделитесь им 😛.

Представляем себя и моих фантастических 4 наставников

Я Логи Перинпанаягам из Университета Моратува, Шри-Ланка. Я был выбран для GSoC 2020 для подключаемого модуля машинного обучения в Jenkins. Меня назначили с четырьмя наставниками, которые с энтузиазмом помогли мне начать это лето программирования.

Ученик

Наставники

Как прошла моя подготовка в прошлом году?

Я узнал об этой программе с открытым исходным кодом на втором курсе. Но, по крайней мере, в прошлом году я пробовал работать над проектом другой организации, который был связан с Рекомендациями по визуализации данных для науки о данных. Но проблема заключалась в том, что я не внес такой большой вклад, как в этом году, и слишком поздно подал заявку. Как обычно, проекты, связанные с машинным обучением, имеют большую конкуренцию по сравнению с другими проектами. Я подготовился к обучению визуализации данных в машинном обучении и существующих моделях для системы рекомендаций. Наконец, я написал предложение с моделью SeqToSeq, не имея в то время особых знаний о нейронных сетях. И я мало общался по выделенному каналу Slack. Это может быть одной из причин неудачи. Но главной причиной была моя задержка на GSoC 2019.

Как я преодолел GSoC 2020?

С тех пор, как я понял, насколько открытый исходный код необходим и полезен для сообщества, я с энтузиазмом участвовал в проектах с открытым исходным кодом. К примеру, я закончил стажировку в Бангалоре, Индия в 2019 году, и сразу сосредоточился на участии в GSoC. Это мой последний год (2020) в качестве студента бакалавриата по информатике, я хотел, чтобы меня выбрали в этом году в качестве студента.

Наш отдел организовал руководящий семинар, я узнал, что Дженкинс открыл свои проектные идеи. Это было чрезвычайно впечатляющим началом моего пути к GSoC 2020. Я просмотрел все черновики и принял проекты на странице Jenkins.io. Поскольку я уже интересуюсь машинным обучением и знаком с Java, я выбрал для себя самую впечатляющую идею, у которой нет исходного репо. Это означает, что я хотел использовать свои знания, чтобы много думать и исследовать в этом проекте. Но мне пришлось внести свой вклад и я хотел узнать об инфраструктуре кодовой базы Jenkins. Потому что это позволяет с помощью панели выбора легко выбрать студента для проекта. Затем я неоднократно пытался внести свой вклад в Jenkins. Я обнаружил проблемы, с которыми мне было легко работать с плагином git и клиентским плагином git. Я начал вносить некоторые тестовые сообщения в плагин git и клиентский плагин git. Получив четкое представление о том, как работает плагин в Jenkins, я начал работать над POC с подсказкой, представленной на странице идеи проекта. На самом деле кодировать было весело.

Наставники помогли многим студентам в процессе подачи заявки. Мне удалось создать рабочий POC, который имел минимальные возможности для выполнения задачи проекта. Наконец наставники открылись для подачи предложений. Поспешил подготовить проект предложения. Получив отзывы от наставников, я начал улучшать предложение. В конце подачи предложения я смог представить хорошее предложение для этого проекта. Поскольку мне было любопытно об этом плагине, я подробно остановился на том, как интегрировать блокнот Jupyter с этим плагином. Я опубликовал статью среднего размера в результате моего исследования в период ожидания приема.

Результаты опубликованы

Результат должен был быть объявлен 4 мая, я верил в свое проектное предложение и POC, и меня выбрали для участия в GSoC 2020. Ого! Это был момент мурашек за всю мою жизнь. Ощущение было похоже на Something I achieved. Я заслужил это в результате своего упорного труда. Например, я потратил 7 дней на непрерывную работу POC без каких-либо конфликтов между артефактами maven.

Связь с сообществом

После публикации результатов я готовился к объединению в сообщество. Между мной и наставниками происходит гораздо больше взаимодействий, чем раньше. Мне пришлось обновить страницу моего проекта и свой профиль в Jenkins.io. 10 мая у нас была первая встреча с большим волнением и любовью. Мы с наставниками представились, хотя знакомы. Мы обсудили высокоуровневый взгляд на GSoC, и я задал несколько вопросов, которые у меня в голове. Поскольку мой плагин был новым репозиторием, большая часть обсуждения была связана с репозиторием и его именем. Мне нужно было найти название для нового плагина. У нас были регулярные разговоры о публикации в блоге и презентациях в конце.

На второй встрече мы обсудили процесс размещения нового плагина в Jenkins, отслеживание проблем с JIRA, сообщения в блогах и дорожную карту высокого уровня для проекта. И я предложил несколько интересных названий плагинов, но они не соответствовали цели проекта, наставники посоветовали мне попробовать другие названия, которые идеально описывают проект. Мне посоветовали прочитать все руководящие принципы исследования и соглашения об именах плагинов. Мы обсудили, как будут выполняться обзоры кода и управление исходным кодом через git. После этой встречи наша встреча перешла на официальный аккаунт Jenkins Zoom.

Наша третья встреча была довольно серьезной по поводу планирования нашего проекта. Я готовил свой дизайн-документ для проекта с помощью наставников до дня встречи. Таким образом, я получил множество обзоров и полезных примеров для моей будущей работы над фазой 1. На этом этапе мы выбрали имя плагина Machine Learning Plugin, которое было принято всеми наставниками, и я создал репо и запросил билет JIRA для запроса хостинга плагина. Мы планировали напомнить тикет JIRA в течение следующих 3 дней. Наставники хотят, чтобы я обновил страницу Jenkins GSoC до окончания периода сообщества. Много обсуждалось проектный документ, который я готовил на прошлой неделе перед встречей. Ниже приведены некоторые важные моменты из заметок о встрече:

  • Определите особенности в проектном документе
  • Диаграммы для операций
  • Как плагин работает в распределенной среде
  • Библиотека редактора кода
  • Требования для первого выпуска плагина
  • Черновик документа публикации в блоге
  • To Do работает для меня на следующей неделе

Поэтому после этой встречи мне пришлось потрудиться, это еще больше привлекло меня к проекту. Я должен приложить огромные усилия, чтобы сделать эту возможность золотой. Наша команда готова завершить этот проект и обязательно поможет сообществу Data Science с этим плагином. Престижность моей команде за отличную работу !!!

Это был весь мой путь до Gsoc 2020. Надеюсь, вам понравилось, и надеюсь, что вы узнали об ошибках, которые я сделал в прошлом году и исправил этим летом. Спасибо за чтение и следите за обновлениями. Я буду загружать сообщения в блог для тех из вас, кто хочет получить советы по выбору для GSoC.

Мир ✌️

P.S. Я начал свой путь с GSoC по этой ссылке. Спасибо позже.

Https://www.jenkins.io/projects/gsoc/#gsoc-2021