Check Levi9 best QA positions to Backbase team!
×Закрыть

Як почати контриб’ютити в Open Source

Я нерідко спостерігаю, як розробники, які багато років користуються певним фреймворком через певний час долучаються до чату і запитують, мовляв, з чого найпростіше почати контрибьютити в цей проект? Мабуть, це питання турбує багатьох, тому я вирішила приготувати пост з чого ж почати свій шлях в Open Source.

Open Source (опен сорс) — ідеологія вільного (що включає в себе, в тому числі, безкоштовність) розповсюдження програмного забезпечення. Здавалося б, яке відношення має ідеологія до розробки ? Як мінімум таке, що переважна більшість сайтів в світі працюють саме на програмах, написаних у відповідності з ідеологією Open Source — тобто на ліцензійно чистих і легально безкоштовних.
У розумінні ідеї Open Source є багато нюансів. Наприклад, те, що Open Source — це більше, ніж просто безкоштовне програмне забезпечення. Для Open Source важлива доступність і відкритість коду програми, що дозволяє всім бажаючим розвивати і покращувати програму або робити власні модифіковані версії.

Я б хотіла розказати з чого почати свій шлях з Open Source на прикладі проєкту від українських айтішників — PandAid ❤️

Як народилась ідея проєкту

Цього року з початком пандемії всі ми почали отримувати все більш депресивніші новини про кількість захворівших та померлих від короновірусу в Україні. Багато ІТ компанії та благодійних організацій також долучились до закупілі захисту та необхідного обладнання в лікарні. Зазвичай всі волонтерські та благодійні організаціі збирали запити в звичайні гугл форми . Так як зазвичай благодійні оргнізаціі не обмінювались інформацією з іншими, деякі лікарні отримали 3000 захисних костюмів замість необхідних 300, а в інших не було взагалі жодного захисту. Ми хотіли вирішити цю проблему і створити платформу яка б зручно могла координувати допомогу від благодійних організацій для госпіталів та дозволила залучати волонтерів, які хочуть допомогти в своєму регіоні.
Так народився проєкт PandAid (Pandemy + Aid).

PandAid

Ми запостили в LinkedIn про пошук розробників, і буквально в перший тиждень понад 70 людей зголосилися допомогти. Ядро команди сформувалося з близько 10 людей з різних міст (Київ, Дніпро, Львів, Таллінн, Дублін) і компаній (Bolt, Nix, Amazon, HeadWorks, Upwork) — ми з багатьма не були знайомі, але всі профі в свої сфері —архітектурою проекту займається Tech Lead в Bolt Denys Pysmennyi, бекендом Andrii Romanenko , розробкою фронтенду Сергій Бабіч , дизайном Maksim Jegcuba , бізнес аналіз Vira Chesnokova , хмарна інфраструктура на AWS Ivan Mushketyk, який до речі раніше працював в Амазоні. Наша комнада працювала над документацією( для Open Source проекту це найважливіша частина) та архітектурою проєкту, спілкувалися з благодійними організаціями, дізнавалися про проблеми, які вони мають, а також комунікували з госпіталями.

Goodness Squad

Нещодавно наша команда PandAid долучилася до ініціативи Wix — Goodness Squad, де розробники протягом трьох годин контриб’ютять у різні соціальні та відкриті проєкти. Вчора разом з Wix дуже драйвово провели Goodness Squad та допомогли багатьом проєктам з відкритим кодом RehabJS, JS TL;DR, Icecast Parcer— більше 50 розробників долучилось до ініціативи!

Наш проект PandAid показав найкрутіший Burn down chart — і це все лише за менше ніж 3 години! ❤️

За цей час 10 розробників зробили 11 pull requests, накодили більше 1000 рядків коду та зробили дуже багато імпрувментів до проекту!

Приклад задач по фронтенду які були на Goodness Squad від Wix

З чого почати свій перший контрибюшин?

Я б хотіла показати як створити свій перший контрибюшин на прикладі нашого проєекту PandAid (github.com/hospitalrun-ua) ❤️

1) Виберіть задачу над якою хочете працювати — для першого разу виберіть найпростішу задачу яку ви точно зможете вирішити протягом декількох годин.
Зі списоком відкритих задач по фронтенду можна ознайомитись тут.
Далі — заасайніть задачу на себе, якщо не виходить, то зв’яжіться з координатором проекту в коментарях до задачі.

2) Клонувати репозиторій для роботи
Більше всього, що в вас не буде permissions для створення гілки в проєкті, тому для початку роботи ви маєте форкнути необхідний репозиторій.

Якщо ви ще ніколи не створювали pull requests — є детальна документація від GitHub

3) Запустити проєкт
Перед старом зробіть Fork тут github.com/hospitalrun-ua/frontend (в верхньому правому кутку)
Якщо все добре з ключами то використовуйте ssh keys,якщо ні — https :

git clone git@github.com:${YOUR_GITHUB_USERNAME}/frontend.git 
cd frontend
npm i -g yarn
yarn install
yarn start

Перейти за лінком — дозволити доступ без сертифікату і зараз в вас є все готове до старту.
Відкрийте в браузері http://localhost:3000/ і ви побачите наш проєкт

4) Виконати задачу і створити pull request

Приклади pull requests в проєкті

Далі ваш pull request ревювить хтось з основних контрибюторів та мержить з проектом.
Вітаємо — ви тепер контрибютор проєкту!
Продовжуте спілкування з іншими розробниками — вся комунікація по Open Source зазвичай проходить в Slack каналах — так і в нас в каналі PandAid.

Що далі?

Facebook Open Source Immersion
developers.facebook.com/...​es/open-source-immersion

Facebook також підтримує багато Open Source проєктів і зараз запускає ініціативу для всіх розробників — Open Source Immersion!
Ця ініціатива допомагає здобути практичний досвід та залучити більше розробників до відкритого коду: напевно ви всі чули про React, React Native, PyTorch — це все відкриті розробки, які підтримує Facebook і які створюбться тисячами контрибюторів по всьому світу!

Як прийняти участь?
З 15 липня по 15 серпня необхідно створити 4 контрибюшини в відкриті проекти, один з яких — в проект який підтримує Facebook чи DevC GitHub Org — React or React Native, GraphQL,PyTorch,Hermes.
Наш проект PandAid також рахується — тому долучайтесь!

Хто може приймати участь?
Будь-який розробник з профілем на GitHub(github.com) та є учасником Developer Circle(www.facebook.com/groups/devCKyiv) спільноти.
Всі розробники, які комітили в наш проект також приймають участь в ініціативі від Facebook — Open Source Immersion ! На перших 1000 людей чекають дуже класні призи!
Для цього потрібно лише 4 контрибюшини в Open Source проєкти, один з який підтримується Facebook.

Ви ще до сих пір не контрибютите в Open Source?
Тоді долучайтесь! ❤️

Повне посилання на статтю- medium.com/@tomka
Слідкуйте за іншими ініціативами — в нашому Telegram каналі : t.me/DeveloperCircle та Facebook Group : facebook.com/groups/devckyiv

👍НравитсяПонравилось0
В избранноеВ избранном2
LinkedIn

Похожие топики

Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Open Source (опен сорс) — ідеологія вільного

У rms інфаркт трапився, сидимо тут, толпою його відкачуємо.

Часом трапляється і таке :)

До речі тут докладна інформація про те як прийняти участь в місяці Open Source від Facebook — developers.facebook.com/...​es/open-source-immersion

У меня обратная проблема найти кто будет контрибютить. Рук не хватает на все проекты.

Головне писати документацію :)

Дякую за статтю. Одне спостереження:

Більше всього, що в вас не буде permissions для створення вітки в проєкті, тому для початку роботи ви маєте форкнути необхідний репозиторій.

Мабудь, слово «гiлки» замiсть «вiтки» було б доречнiше.

Дякую! Виправлю свій суржик! часом проблеми з перекладом технологічних термінів на українську

Вже є перший контрибютор з Індіі після цієї статті :)

Подписаться на комментарии