Het is oktober! En wat betekent dat? Juist! Hacktoberfest! Een evenement waarbij ontwikkelaars worden aangemoedigd om contributies te maken aan de open source community van software ontwikkeling! Enne.. als je genoeg contributies maakt, krijg je een cool t-shirt cadeau! Arcady is gek op software ontwikkeling, dus wij doen mee aan Hacktoberfest (al zijn onze t-shirts natuurlijk veel beter)! In deze blog post delen wij graag een paar tips over hoe jij als ontwikkelaar effectief een aantal contributies kan maken! Maar eerst..
Wat is open-source?
Jouw project "open-sourcen" betekent (in de basis) dat de code van jouw project publiekelijk zichtbaar is. Iedereen kan jouw code bekijken en in de meeste gevallen ook zelf "bouwen". Op die manier weet je precies wat er op jouw toestel draait. Ook kunnen anderen meehelpen! Stel dat een gebruiker van jouw code een bug ziet, dan kan de gebruiker een fix indienen! Zelf help ik wel eens mee in de open-source wereld. En het is super tof om te zien dat mijn code mensen over de hele wereld heeft kunnen helpen!
Open source is heel belangrijk voor de wereld van software ontwikkeling. Er zijn veel ontwikkelaars tijdens hun werk en/of vrije tijd bezig om mee te helpen. Ik durf te wedden dat je dagelijks gebruikmaakt van meerdere open source projecten! De ontwikkelaars van die projecten zouden het dus erg op prijs stellen als je ze kan helpen! Al is dat het fixen van een kleine bug, meedenken aan de ontwikkeling van een nieuwe feature, of het schrijven van een stukje documentatie!
Wist je dat de corona melder app open-source is? Iedereen kan de code van de applicatie bekijken. Wel zo veilig; je zou niet willen dat een applicatie zomaar jouw locatie kan volgen zonder dat je weet waar het voor gebruikt wordt.. Facebook! Minister de Jonge heeft zelfs een commit bijgedragen tijdens de livegang van de corona melder website!
Tips
Meedoen aan de wereld van open source? Tof! Hier zijn een aantal tips om direct van start te kunnen gaan! Maar eerst... Wees voorbereid! Hacktoberfest werkt samen met GitHub, een van de vele platformen om jouw code op te zetten en publiekelijk beschikbaar te kunnen maken. Het biedt ook de mogelijkheid om issues aan te maken, een wiki te schrijven voor documentatie, planningen maken, etc..
Als je een beginner bent, of als je een project wil vinden om een contributie voor te kunnen maken, lees dan even goed de handleiding door! Lees ook even de informatie over deelname door. Gedaan? Tof! Dan beginnen we met de eerste tip!
Effectief helpen
Veel projecten bevatten een bestand met de naam CONTRIBUTION.MD . Hierin staat verwerkt hoe jij het beste kan meehelpen aan het project. Lees dit goed door! Soms staat dit ook vermeld in README.MD . Kijk ook even goed naar bestaande issues en PR's. Hoe zijn ze opgedeeld? Hoe zit het met de communicatie, is er een bepaalde styling? Hoe meer jij de "workflow" volgt van het project, hoe sneller jouw toevoeging in gebruik genomen zal worden!
Ga je bezig met een bepaald issue? Check dan even dat niemand anders er al mee bezig is, of kijk even of je die persoon verder kan helpen. Als je zelf begint met een nieuwe issue, laat het dan even weten dankzij een comment! Dan weet iedereen wat de status is!
Zoek de community op
Zit je vast? Of weet je niet helemaal waar je moet beginnen? Veel projecten bevatten wel een link naar een chatgroep waar je met andere ontwikkelaars kan overleggen.
Let op de licentie
Een diepe uitleg over software licenties valt voor nu even buiten de boot, mogelijk kan deze site daar bij helpen! Websites zoals Github hebben vaak ook een link naar een handige uitleg over de licentie zelf, dus maak je geen zorgen!
Let goed op als je iets doet omtrent het toevoegen van een externe library die mogelijk een andere licentie gebruikt dan jouw project. Een project dat bijvoorbeeld de MIT licentie gebruikt is heel erg vrij in wat je er mee doet, je mag het gebruiken in closed-source projecten en commercieel inzetten. Een licentie zoals GNU GPLv3 heeft wat meer restricties. Je mag software met die licentie commercieel inzetten, maar je bent o.a. verplicht om jouw software ook te open-sourcen zodat anderen weer kunnen leren van jouw wijzigingen. Dus als jij aan een project meewerkt en iets toevoegt waardoor de licentie niet meer klopt, mag dit niet..
Be nice!
Voor niks gaat de zon op.. Maar toch verwachten veel mensen dat hun issues direct gefixt moeten worden in een open source project. Mensen werken vaak aan open source in hun vrije tijd. Sommige dingen kunnen dus wat langer duren. Wees dus geduldig en bied anders jouw hulp aan! We're all in this together!
Have fun!
Werken aan open source geeft heel veel voldoening. Zelfs al aan het aanmaken van een issue of meedenken kan al voldoende zijn om het project weer een stapje verder op weg te helpen! Vergeet dus niet veel plezier te hebben!
Wil je nog meer weten? Of heb je vragen over open-source, hacktoberfest, etc..? Neem dan contact met mij op!
Sander ten Brinke