Hvordan man bidrager til Open Source Project

Det har aldrig været let at lære at programmere. Men på trods af tonsvis af måder at lære at kode på, mener vi, at den bedste måde at forbedre dine færdigheder på er ved at bidrage til open source-projekter.

Open source-fællesskabet giver en fantastisk mulighed for håbefulde programmører til at skille sig ud; og ved at bidrage til forskellige projekter kan udviklere forbedre deres færdigheder og få inspiration og støtte fra ligesindede mennesker. Men vigtigst af alt kan de bevise, at de kan bygge fantastiske oplevelser, som folk elsker.

Sidst har vi diskuteret, hvad open source-projekter er, og hvorfor open source er godt for din virksomhed. I denne artikel vil vi forklare, hvorfor du bør bidrage til sådanne projekter, hvordan du kan bidrage, og hvilke projekter du skal vælge. Denne artikel er rettet mod udviklere, der lige er begyndt deres karriere og gerne vil engagere sig i fællesskabet (og måske blive et kodningsgeni).

Hvorfor bidrage til open source-projekter?

Der er en række grunde til at bidrage til OSS (open source software). Lad os se, hvad der motiverer udviklere til at bidrage.

For det første er der mange entusiaster, som simpelthen mener, at kode bør være åben. De er idealister, der ønsker at gøre verden til et bedre sted, og det driver dem til at bidrage med kode. Ønsket om at dele kan være en stærk motivationsfaktor.

For det andet giver OSS dig et godt udgangspunkt. Begyndere kan starte med at rette mindre ting, f.eks. en fejl i et bibliotek, sende en pull request eller endda skrive et stykke dokumentation. Begynderudviklere kan dog også lære at skrive såkaldt “ren kode” – kode, der er læsbar og vedligeholdelsesvenlig – mens de bidrager til open source-projekter. Når udviklere er klar over, at deres kode er udsat for verden, får det dem til at fokusere på at gøre denne kode let at forstå og supportere. Programmører holder sig til generelt accepterede regler inden for et team, som omfatter normer for indrykninger, beskrivelser af metoder og klasser, variabelnavne og overholdelse af “don’trepeat-yourself”-reglen. Kort sagt, når du bidrager til gratis projekter, er du forpligtet til at overholde normerne for et projekt.

For det tredje får du mulighed for at blive en del af et aktivt open source-fællesskab, hvor du kan møde ligesindede og tilhængere. Hvis du er freelancer og bidrager aktivt til open source-projekter, øger du desuden dine chancer for at blive bemærket af potentielle arbejdsgivere.

De vigtigste grunde til, at udviklere går til free-for-modification-projekter, er for at blive anerkendt, for at skærpe deres programmeringsfærdigheder og for at blive en del af det pulserende fællesskab. Lad os nu se på, hvad du bør overveje, før du begynder at bidrage.

Hvad du skal overveje, før du går i gang med open source

Okay, så du kan ikke vente med at starte dit første OSS-projekt. Lad os gennemgå et par tips, der kan hjælpe dig med at vælge, hvad du skal arbejde på.

Programmeringssprog

Den mest grundlæggende teknologi bag enhver applikation er et programmeringssprog. De mest populære sprog på GitHub (en samarbejdsplatform til hosting af kode) er JavaScript, Python, Java, Ruby og PHP. Der findes et væld af projekter, der måske passer til dine færdigheder og din smag.

Da vi hos RubyGarage elsker Ruby og dets økosystem, vil vi gerne dele flere levende OSS-kodebaser for begyndere:

  • Sinatra, et Ruby-baseret bibliotek, der hjælper med at skabe Rails-frie apps;
  • Hanami, en moderne webramme bygget med Ruby;
  • Chef, en Ruby-baseret ramme, der bruges til at automatisere dit arbejde med serveren;
  • Goby, en ramme, der giver dig mulighed for at bygge tekstrollespil;
  • JRuby, en anden top Ruby-fortolker.

Selv om vi kun har nævnt fem aktive open source-projekter, der har brug for hjælp, kan du starte din jorney som Ruby-bidragyder med dem.

Type af projekt

Når du har valgt det sprog, du vil arbejde i, skal du vælge den type projekt, du foretrækker. GitHub-projekter er kategoriseret i mapper kaldet Showcases. Her er nogle eksempler på Showcases: “security”, “virtual reality”, “text editors” og “CSS preprocessors”. Du skal bare vælge et emne, der interesserer dig.

Vi anbefaler dog, at du er ekstra opmærksom på de projekter, der vil blive brugt af et bredt spektrum af mennesker, så du får mulighed for at teste din kode på et stort publikum i den virkelige verden. For eksempel indeholder “Emoji” Showcase 25 repositories, der repræsenterer dets popularitet. Et andet tip til, hvordan du vælger et OSS-projekt, er at begynde at arbejde på software, du allerede bruger, eller software, du er interesseret i at bruge. Det vil holde dig motiveret til at arbejde videre.

Projektets omfang

Store softwareprojekter som VLC Media Player eller Spree – med tusindvis af linjer kode – er ikke det bedste valg for en nybegynder. Når du bidrager til store projekter, forventes det, at du opfylder de fastsatte krav inden for det pågældende team. Et her er endnu et lille tip: Vær opmærksom på issue labels. Nogle issues er mærket som “first-timers-only”, “beginner”, “easy” og så videre. Du kan også finde en liste på Github med samlinger af projekter, der passer til nybegyndere.

Tænk på disse tips, når du vælger et projekt at bidrage til. Og husk altid at vælge software, som du er interesseret i, og at afsætte tid i forvejen.

Sådan bidrager du til open source-projekter

Når vi taler om fri software, kan vi ikke undgå at tale om GitHub og relaterede værktøjer. Lad os se, hvad GitHub er, og hvordan det hjælper dig med at deltage i open source-projekter.

Lær GitHub at kende

GitHub er den mest populære platform for open source-samarbejde, så du vil sandsynligvis bruge den, når du udforsker verdenen af OSS. Først skal du oprette en GitHub-konto og læse den vejledning, der hjælper dig med at komme i gang. På GitHub kan du bidrage til projekter ved at indsende problemer og bidrage med kode. Indsendelse af problemer betyder, at du sender meddelelser om fejl i programmer og foreslår måder at rette dem på. At bidrage med kode indebærer at sende pull requests med dine rettelser og forbedringer.

Lær det grundlæggende

Når du arbejder med GitHub, skal du vide, hvordan du bruger Git – et af de mest populære versionskontrolværktøjer (også kendt som revisionskontrolværktøjer). Fordi udviklere konstant foretager ændringer i deres kode, har de brug for et system, der kan administrere disse ændringer i et centralt repository. På denne måde kan alle, der er involveret i udviklingsprocessen, downloade et givent stykke software, foretage ændringer og indsende opdateringer.

Ud over at være fortrolig med revisionskontrolværktøjer omfatter væsentlige færdigheder også at kunne klone et repository og sende pull requests. Pull requests informerer kodevedligeholdere om ændringer, der er foretaget i koden; de kan derefter gennemgå disse ændringer, starte en diskussion om dem eller tildele dem til en yderligere commit.

Gå med i fællesskabet

Du kan nemt gå med i et open source-projekt ved at abonnere på mailinglisten for det pågældende projekt. Du kan finde mailinglister på officielle websteder eller på GitHub-sider. Når du er blevet accepteret på listen, kan du kommunikere med teammedlemmer og få støtte, hvis det er nødvendigt. Takket være de levende fællesskaber, der findes i næsten alle OSS-projekter, vil du sandsynligvis få hurtige svar på dine spørgsmål.

Alle færdigheder er velkomne

Selv ikke-programmører kan bidrage til open source-projekter! Der er behov for dokumentation til alle projekter, og nogle gange er denne dokumentation dårligt skrevet og vedligeholdt. Du kan derfor hjælpe ved at skrive, opdatere eller endda oversætte dokumentation. Dine designfærdigheder kan også være nyttige: alle programmer har trods alt brug for en grænseflade. Endelig kan du bidrage ved at administrere et fællesskab ved at besvare spørgsmål og vejlede nyankomne.

Måder at bidrage til open source-projekter

Lad os fremhæve de mest almindelige måder at bidrage til OSS-projekter på.

Skab dit eget open source-projekt

Et hvert projekt bør starte med et identificeret behov. Hvis du føler, at eksisterende projekter på GitHub eller Bitbucket ikke tilbyder den funktionalitet, du gerne vil opbygge, skal du oprette din egen open source-løsning. Ud over et indledende projektudkast bør du overveje følgende sæt spørgsmål:

  1. Hvilke færdigheder har du brug for til dit projekt?
  2. Hvor meget tid er du villig til at bruge på dit projekt?
  3. Hvilket problem/problemer løser din software?
  4. Hvor mange potentielle brugere er der til dit produkt?

Skab open source-alternativer til kommerciel software

De kommercielle projekter af i dag inddrager aktivt open source-løsninger. Mange virksomheder baserer deres projekter på gratis værktøjer. Når der er et stort udvalg af software, behøver man ikke at genopfinde hjulet på ny. Derfor er det nyttigt at lege med gratis software, der kan erstatte lignende proprietær software, eller som løser et problem, man for nylig har stået over for.

En anden grund til at erstatte kommercielle løsninger med open source-software er ivrighed efter reel innovation og vækst. Kommerciel software hævder at være innovativ, men dens endelige mål er at skabe profit. Open source-software forener bedste praksis, god kodekvalitet og passionerede udviklere, der er villige til at kode, bare fordi de kan lide det.

Bidrage til eksisterende open source-projekter

Du kan finde mange projekter, som du frit kan deltage i, på GitHub – en udviklerorienteret platform med et simpelt, men væsentligt sæt af funktioner. GitHub tiltrækker udviklere med offentlige API’er, en slank og ofte opdateret brugergrænseflade, gists (Git-repositories), der giver dig mulighed for at dele kodestykker eller endda hele programmer og meget mere. Du kan bidrage til fri software på mange måder. Udviklere kan fork-projekter, foretage ændringer i koden og sende pull requests. Og kvalitetssikring er altid værdsat. Nogle gange har udviklerne for travlt eller er for dovne til at kontrollere kvaliteten af deres kode. Så værsgo at rapportere en fejl eller forsøge at rette den – din hjælp er værdsat.

Du kan nå de hotteste GitHub-projekter ved at følge “Trending”-linket. Og for at gøre din søgning mere relevant kan du bruge avanceret søgning: Vælg det sprog, du gerne vil kode på, og vælg “bedste match”-kriterier. Bedste match rangerer projekterne efter relevans, idet der tages hensyn til antallet af forks (som repræsenterer hvor aktivt projektet opdateres) og stjerner (“likes”, på Facebooks sprog). De fleste projekter har kendte problemer (nogle har dog ikke) med etiketter som “bug”, “discussion”, “security” eller “refactor” eller andre etiketter alt efter sværhedsgrad: “let”, “medium”, “svært.”

Konklusion

Open source-projekter giver mange fordele for dem, der deltager i dem, og en sådan erfaring er god for dit CV. Ved at deltage i et fællesskab af ligesindede og finpudse dine færdigheder kan du give dig selv et skridt opad som håbefuld udvikler. Vi har listet almindelige grunde til, at folk bidrager til OSS-projekter, og beskrevet forskellige måder at komme i gang på. Hvis du gerne vil læse mere om at bidrage til OSS-projekter, kan du læse vores tidligere artikler om, hvordan open source-projekter trænger ind på it-markedet, og om sikkerheden ved fri software.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.