Contribution Day op Meet Magento: Hoe Joachim officieel Magento-contributor werd

Geschreven op 28/09/2017 door Joachim

Op 26 en 27 september trok ik samen met Pieter naar Meet Magento, het grootste Magento-event op Belgische bodem. De Belgische Magento-community verzamelde in Hotel Bloom in Brussel om 2 dagen lang in de code en de features van het e-commerceplatform te duiken.

De eerste dag verzamelden een 40-tal developers in Hotel Bloom. Op het programma: Contribution Day. Samen met de Magento Director of Community Engineering bij Magento, Max Yekaterynenko, losten we een dag lang issues uit GitHub op.

Door de community, voor de community

Magento rekent op developers wereldwijd om het e-commerceplatform nog veelzijdiger, nog gebruiksvriendelijker, dus uiteindelijk nog beter te maken. Iedereen kan bugs rapporteren door tickets aan te maken in GitHub. 

Evenementen zoals Contribution Day werden in het leven geroepen om die tickets collectief te bekijken en om te zetten naar verbeteringen aan de Magento-core. Enkele architecten van Magento leiden alles in goede banen. Kwaliteitscontroleurs in de Magento-kantoren in Kiev analyseren de pull requests en geven groen licht aan aanpassingen die opgenomen worden in de volgende update van de broncode.

Kort gezegd: we schreven tijdens Meet Magento mee aan de code waar duizenden developers en webbureaus wereldwijd mee werken. Dat is zo opwindend als het klinkt.

Een oude bekende op het GitHub-projectboard

Ik opende GitHub om op het projectboard een interessante issue te kiezen. Mijn oog viel op een issue dat ik meteen herkende vanuit mijn werkervaring. 

Bezoekers die zich op een Magento-webshop willen registreren, moeten soms hun geboortedatum opgeven tijdens het registratieproces. Nu is het zo dat Magento rekening houdt met de gebruikelijke datumnotatie in elk land: dag-maand-jaar in België, maand-dag-jaar in de VS, enzovoort.

Het probleem dat het issue aankaartte, is dat de validatie die daarop uitgevoerd wordt geen rekening houdt met de verschillende formats. Een bezoeker die zich wil registreren op een webshop zal in dat geval voortdurend een foutmelding krijgen, zonder iets verkeerd te doen. Heel frustrerend.

Ik vond het interessant om die werkervaring mee te nemen naar de Contribution Day. Een andere deelnemer, Pieter Hoste, verwoordde dat treffend: “Problemen detecteer je door aan webshops te werken. Niet door een GitHub-board te bekijken.” Ik wilde met mijn bijdrage echt een verschil maken en een probleem definitief oplossen dat ik eerder ontdekt had.

Tonnen Magento-expertise op 1 plek

Ik zocht urenlang naar een oplossing voor mijn issue, maar stond er niet alleen voor. Het leuke aan Contribution Day is dat je niet per se hoeft te googelen naar oplossingen, maar je gewoon te rade kon gaan bij andere deelnemers. Elke developer heeft zijn of haar eigen programmeermethodes, werkervaring en expertise. Doordat je er werkt in ware hackathon-sfeer, doe je ook sneller een beroep op elkaar.

Ik vond uiteindelijk ook een oplossing voor de datepicker, schreef een stukje code en stuurde een pull request. In totaal leverde de Contribution Day in Brussel 25 pull requests op. Waaronder 2 van mij en 2 van Pieter. Daarna wachtten we op feedback uit Kiev ...

Mijn stukje code gaat binnenkort internationaal

De 2e dag van Meet Magento stond in het teken van een aantal sprekers. Aan de ontbijttafel praatten we echter nog wat na over Contribution Day. En dan kreeg ik plots een verrassende e-mail uit Kiev: mijn pull request werd aanvaard!

Daarvoor doe je het toch. Ik besef dat mijn issue niet supercomplex of uitdagend was, maar de wetenschap dat mijn code wereldwijd gebruikt zal worden, geeft me veel voldoening. Dat is mijn bijdrage aan de community. Ik kreeg ook respons op Twitter, onder andere door Magento Architect Oleksii Korshenko. 

De Magento-community leeft! En belangrijker: bij de update van magento naar versie 2.2.2 zal er minder gevloekt worden tijdens het registreren in Magento-webshops. 

Deel deze tip:

Tip is geschreven door Joachim Vanthuyne

Back-end-developer. Verzorgt de interactie tussen websites en mensen.

Lees meer over: ,

Plaats een reactie

Wordt niet weergegeven op de website.

Plaats een reactie

Wordt niet weergegeven op de website.