Twój pierwszy projekt open source
Wkład w projekt open source może być bardzo satysfakcjonujący. W tym artykule opowiem o moich doświadczeniach z pracy nad takimi projektami oraz postaram się Ciebie przekonać, że warto tego spróbować.
Mój pierwszy projekt open source
Chciałem wziąć udział w projekcie typu open source już przez jakiś czas, ale nigdy nie byłem w stanie znaleźć niczego odpowiedniego. Pracuję jako pełnoetatowy programista i chociaż dużo się uczyłem, to nie zajmowałem się rzeczami, które mnie naprawdę interesują. Zdecydowałem więc, że nadszedł czas na open source. Nie wiedziałem jednak, jak zacząć, dlatego wpisałem w Google „Jak zacząć z open source”.
W końcu włączyłem się do Taskcluster. To projekt, który ciepło przyjmował nowych uczestników. Wiedziałem już trochę o ich stosie technologicznym i bardzo chciałem dowiedzieć się więcej. Ostatecznie mój pull request został zaakceptowany i włączony do gałęzi głównej. Stałem się współtwórcą projektu.
Taskcluster w akcji — z Taskcluster Readme
Jak znaleźć odpowiedni projekt open source
Ten artykuł na HackerEarth doprowadził mnie do Mozilla’s OpenSource Finder. Zainteresowało mnie to, ponieważ zawsze byłem fanem ich produktów. Sporo czasu poświęciłem na poszukiwanie odpowiedniego projektu. Znalazłem wiele, do których mogłem coś wnieść, ale szukałem przede wszystkim czegoś ekscytującego i wykonalnego. Próbowałbym nawet samemu pracować nad problemami, zanim się do nich zgłoszę, by sprawdzić, czy dałbym radę je rozwiązać.
Dzięki temu mógłbym sprawdzić, czy mam jakieś braki, które uniemożliwiłyby mi dokończenie zadania, oraz zobaczyć, jak dużo czasu muszę na dany problem poświęcić. Uważaj także na opisy swoich commitów. Dowiedziałem się, że dodanie # do commita, nawet lokalnie, stworzy notyfikację na GitHubie w issue, nad którym pracujesz.
Omyłkowe wysłanie commita
Czego szukać
Szukając pierwszego projektu typu open source, należy wziąć pod uwagę następujące rzeczy:
- Wymagane umiejętności i to, czego możesz się nauczyć
- Poziom zainteresowania projektem
- Łatwość wkładu w projekt
Wymagane umiejętności i to, czego możesz się nauczyć
Głównym problemem, przez który miałem trudności z tworzeniem oprogramowania typu open source, był brak umiejętności. Nadal byłem mocno początkującym programistą i nie wiedziałem, jak korzystać z wielu popularnych bibliotek i frameworków, z których korzystają projekty open source.
Powinno się znaleźć projekt, który pokrywa się z posiadanymi umiejętnościami lub poświęcić czas na naukę. Kiedy zdecydowałem się przyłączyć do Taskcluster, jedyne co mogłem wnieść to znajomość JavaScriptu i Reacta. Moim pierwszym wkładem był zatem PR, który dokonał pewnych zmian w kodzie Reacta.
Możesz także wykorzystać projekty open source jako sposób na zdobycie nowych umiejętności lub wzmocnienie obecnych. Kiedy po raz pierwszy spojrzałem na Taskcluster, byłem zainteresowany różnymi technikami i narzędziami, których tam używano. Jedną z bibliotek używanych w projekcie był GraphQL, o którym dużo słyszałem, ale nigdy nie poświęciłem mu wiele czasu. Mogłem zatem zobaczyć, jak korzysta z niej prawdziwa aplikacja i mogłem popracować z GraphQL bez zaczynania nowego projektu od zera.
Możesz również dowiedzieć się, jak organizować swoje projekty, przyglądając się, jak robią to inni. Taskcluster postanowił, na przykład, zorganizować swój projekt jako monorepo — nie miałem o czymś takim wcześniej pojęcia.
Zainteresowanie projektem
Dobrze by było, żeby praca Ci się spodobała. O wiele łatwiej jest dawać z siebie wszystko, jeśli coś sprawia Ci przyjemność. Upewnij się, że masz odpowiednie motywacje.
Łatwość wkładu w projekt
Dobre projekty open source to takie, które mają przyzwoitą ilość dokumentacji i ułatwiają innym dodanie czegoś od siebie. Dokumentacja dla deweloperów w Taskcluster pomaga mi zrozumieć, jak powinienem pomóc oraz mówi, o czym muszę pamiętać.Nie każdy projekt będzie zawierał tyle dokumentacji, więc dobrze jest trochę poszukać na własną rękę.
Istnieje również wiele projektów na Githubie, które ciepło przyjmują nowych. Próbując znaleźć problemy, poszukaj etykiet typu „good first issue”.
Good first issues
Życie po pierwszym projekcie open source
Właśnie zostałeś/aś współtwórcą projektu open source. Z pewnością chcesz to powtórzyć. Co dalej? Kontynuuj z tym samym projektem, znajdź inny lub rozpocznij swój własny. Ucz się i buduj dalej. To jest tego warte!