ga('send', 'pageview');
Categories
Blogg Teknik

Kom igång med open-source-utveckling

Att bidra till öppna källkodsprojekt är en mycket lovvärd sak att göra, oavsett om man gör det som utvecklare, grafiker, översättare, UX:are eller någon annan roll. Det är dock erkänt svårt att bryta sig in i denna värld och detta trots att de tekniska trösklarna blivit lägre och lägre över tid. Vissa projekt är helt enkelt svåra att sätta sig in i samtidigt som de existerande utvecklarna i vissa fall inte har tid eller intresse att coacha nybörjare som vill hjälpa till. I andra fall är det kanske inte särskilt svårt att greppa hur projektet fungerar tekniskt, men de som underhåller det är ointresserade av att ta emot hjälp utanför deras egen krets.

Efter att jag själv lyckats ta mig över trösklarna och bidra till ett par olika projekt så vill jag i denna artikel dela med mig några tips om hur jag gjorde i hopp om att du, käre läsare, också ska kunna bidra till världens levande arkiv av öppen källkod.

Tips 1: Välj ett projekt som du redan använder.

Försök inte bidra till ett projekt som du aldrig använt, även om det verkar häftigt. Mitt första bidrag var till ett Mozilla-projekt som heter DXR, ett stort och häftigt verktyg för code-reviews som jag aldrig hört om att någon utanför Mozilla någonsin använt. Det var även därför mitt eget bidrag stannade på en blygsam PR varefter jag gav upp.

Välj istället ett projekt som du ofta använder, antingen i arbetet eller på fritiden. Om du ändå vill välja ett nytt projekt, prova det först, bli bekant med det som slutanvändare och försäkra dig om att det är något du vill fortsätta använda. Om du inte har någon användning för projektet kommer det vara svårt att göra meningsfulla bidrag.

Tips 2: Välj ett projekt i ett språk du är bekant med.

Det är sällan en bra idé att lära dig ett språk samtidigt som du försöker bidra till OS-projekt.

Kärnutvecklarna har ofta inte tid att coacha dig genom språket. Därför är det oftast en bra idé att välja ett projekt skrivet i ett språk (helt eller delvis) som du är välbekant med. Är projektet skrivet i ett obekant språk så är det bäst att först sätta dig in i det, exempelvis genom att skriva ett eget litet projekt i språket, och återkomma till OS-projektet senare.

Tips 3: Håll dina bidrag lagom stora.

Om du gör för stora PRs/MRs så är risken stor att kärnutvecklarna ber dig att dela upp bidraget eller till och med tackar nej till det. Risken att du inte har tid att slutföra bidraget eller tappar motivationen blir också större, särskilt om du jobbar på projektet vid sidan om arbetet och/eller har familj och övriga hobbys som tar upp tid. 

Tips 4: Förbättra gärna kodkvaliteten, men gå inte överstyr.

Ett bra första bidrag till ett projekt kan vara förbättringar av kodkvalitet, men en massiv refaktorerings-PR är inte alltid välkommen, särskilt inte om du är både utomstående och ny.

Börja smått och bygg förtroende hos projektets kärnutvecklare.

Kontakta dem sedan via deras föredragna kanaler och presentera vad för större refaktorering du vill göra.

Tips 5: Träffa utvecklarna, digitalt eller fysiskt

Många projekt brukar, när dom nått en viss storlek, bestämma sig för att hitta en smidigare kommunikationskanal än kommentarstrådarna för PRs/MRs/tickets. Populära val är då exempelvis IRC-kanaler eller på senare tid Slack/Discord-kanaler. Dessa brukar vara öppna och det kan vara en bra idé att hoppa in där för att tala direkt med utvecklarna.

Vissa projekt kan till och med ha närvaro på olika internationella konferenser, särskilt i Linux-världen. Ett exempel är FOSDEM, en årligt återkommande konferens i Belgien som samlar utvecklare av fri- och öppen mjukvara för såväl presentationer som kollaborativ utveckling. En sån konferens kan vara perfekt för att träffa representanter för olika projekt och lära sig hur och vad man kan bidra med.

Tips 6: Ta dig inte vatten över huvudet.

Många drömmer nog om att få sitt namn listat i den digra listan med människor som bidragit till Linuxkärnan. Tittar man på dagens mest aktiva Linux-utvecklare så framgår det dock att dom allra flesta som bidrar till projektet är heltidsanställda av olika stora företag för att enbart arbeta med Linux, vilket skär sig från den bilden många har av Linux-utvecklare som hobbyister som hackar i sina sovrum.

Börja istället smått. Tittar man på Linux-världen så finns det ett massivt ekosystem av mjukvara utanför själva kärnan där det är betydligt lättare att bidra: det finns massvis med Linux-projekt som bara försöker återskapa mjukvara som enbart finns för Windows, MacOS, Android eller iOS. På nivån ovanför dem så finns olika desktop environments (KDE, Gnome, Xfce, LXQT, LXDE, osv) som är mer lättillgängliga för den som vill bidra. Och ovanför dessa så återfinns de många olika Linux-distributionerna (Debian, Ubuntu, Arch Linux, Slackware, NixOS, osv) som också är relativt mer öppna för utomstående bidrag.

Tips 7: Sätt igång!

Vad väntar du på? Det finns mängder av intressanta projekt där ute. Följ stegen ovan, hitta ett och hugg i.

By Ola Rende

Backendutvecklare, fullstackutvecklare

Leave a Reply

Your email address will not be published. Required fields are marked *