Geen categorie

MetaFactory Herfst Hackathon 2019

[object Object]
Albert Mensinga
September 19, 2019

De aanleiding van deze hackathon legt senior Java-developer (en partner van MetaFactory) Marnix van Bochove in dit interview uit. Deze liveblog is een chronologisch verslag van de twee hackathon-dagen. Over de definitieve resultaten lees je hier.

Dag 1: donderdag 19 september

09:01 uur – Over de definitieve keuze van onderwerpen was tot op donderdag 19 september nog niets bekend. De heren senior Java-developers gingen rond de klok van half 11 ter briefing, ondermeer om te besluiten of en wie er de IntelliJ Plugin doorpakken en hoe het verdergaat met het Polyglot Java Patterns-project. We wachten in spanning af wat de dag brengen gaat…

10:45 uur – Briefing. De belangrijkste topics passeren de revue. Vlnr: Marnix legt uit wat er op het programma staat en Kim, Marco, Friso, Bart en Bruno vullen aan, vragen en kiezen. De doelen komen langzaam in zicht en worden scherp gesteld.

Op het scherm staan 10 onderwerpen waar er voor deze hackathon twee worden uitgekozen. De keuze valt op de InteliJ Plugin en Java Code Instructions in Java. Zaken als Patterns for Typescript, werkjes in Angular e.d. komen tijdens een volgende hackathon aan de beurt.

Aan het einde van de sessie worden de teams geformeerd en de namen achter de onderwerpen gezet.

> Klik om de onderwerpen te zien

11:30 uur – Aan het einde van de briefing besluit de groep om met elkaar een kijkje onder de motorkap van de MetaFactory codegenerator te nemen, aangezien de gekozen onderwerpen hier om vragen.

Bart: “Everything is written out in Freemarker. It’s plain text and it needs to be Typscript because you want to have more control like adding a metamodel like the AST model in Java so you can build up a complete class or components.”

We spreken Engels met elkaar aangezien onze laatste aanwinst, Bruno uit Brazilië, het anders niet kan volgen. Tussen de technische details en aanvliegroutes door is er tijd voor grapjes. Denk Make That The Cat Wise.

Marco geeft het goede voorbeeld en maakte maar liefst twee shirts voor de gelegenheid.

12:59 uur – Na een stevig potje team-ontwikkeling is het tijd voor de lunch. We nemen de start door maar al snel gaat het over politiek. Prinsjesdag ligt immers nog vers in het geheugen. Om half twee ruimen we af en in een mum van tijd staan de laptops weer op tafel. Kim en Bruno kiezen voor de dubbele grote schermen in The Developers Room.

13:59 uur – Marnix praat uw verslaggever bij: “Er zijn 2 teams: een team gaat verder met de InteliJ Plugin en een team start het Polyglot Java Patterns-project door, dus voor de code instructies in Java. Tijdens de briefing van zojuist bleek dat het voor beide teams nuttig en belangrijk is om de MetaFactory tool vanuit de ontwikkelomgeving te draaien, dus daarvoor gaf ik na de lunch een mini-masterclass van 2,5 uur. Je moet meer dan 10 Git Repo’s uitchecken, je Maven configuratie hebben, Nexus configureren, je settings tussen InteliJ en je commandline… Het is best een complex project, maar de jongens zijn wel wat gewend. Bij de grote corporates krijg je doorgaans een week om je laptop up and running te krijgen en wij doen dat hier met 6 man – ik ben tot dusver de enige met toegang tot de MetaFactory internals – in een half dagdeel.” Soit.

Marnix gaat enthousiast verder: “Bart praat nu Friso en Bruno bij over vorig jaar en Kim en Marco gaan verder met de plugin. Dat gaat dus over hoe we MetaFactory aanspreken om te kunnen draaien. Ik denk dat we vrijdag het Plugin project kunnen afsluiten met een werkende versie, die de bestaande versie kan vervangen. Het Polyglot Java project gaat wat langer duren en gaan we deze hackathon niet af krijgen. Daar gaan we in de lente mee verder. Wat wel mooi is: voor al de overige (8) ideeën die we hadden is kennis nodig van de MetaFactory codegenerator. En dat is winst want daarmee doen de teams dus nu ervaring op. Die 8 onderwerpen zijn elk kleiner dan de twee projecten van de hackathon nu. De kans dat we over een half jaar meer projecten afkrijgen is heel groot en de basis daarvoor leggen we vandaag! Bovendien ontstaan er de komende tijd meer ideeën. Je was erbij toen het gebeurde tijdens de briefing: de creativiteit die ontstaat, zorgt voor nieuwe ziens- en denkwijzen en geeft vrijheid om de komende stappen verder te ontwikkelen.”

16:59 uur – Developers Boiler Room. Het (alcoholvrije) bier komt uit de ijskast en de koffiemachine draait op volle toeren. De schermen staan bol van de code, de sfeer is super en de werkzaamheden vorderen gestaag. Over een uurtje Indiaas eten voor 8 bestellen. Zin an!

17:59 uur – Marco werkt in opperste concentratie – what’s new? Ik zal ‘m na het avondeten eens vragen hoe het gaat. Drie schermen? Check! Aanslaggevoelig en LED-verlicht Wooting toetsenbord? Check! Schoentjes uit en coden maar! De sfeer is super en de twee teams gaan als een banaan.

Friso informeert Bruno. Voor nieuwkomer Bruno is deze 2-daagse hackathon een vuurdoop. Kwart over zeven gaat de deurbel en even later pakken we twee volle tassen vol Indiase heerlijkheden uit. Aanvalluh!

20:15 uur – Uitbuiken en doorrrrr. Bruno: “I’m really enjoying this hackathon. Not that I can contribute too much but I surely learn a lot from what’s happening here. Teammate Friso is leading me through our Polyglot Java project and I can follow the development. I’m very excited to hear the InteliJ Plugin is making good progress and may be finished in a viable version for us to use in our client projects. Now if you excuse me…?”

22:15 uur – Terwijl de biervoorraad slinkt en de pepernoten bijna op zijn, blijven de hersens knarsen en de toetsenborden rammelen. Om een uur of acht knipte ‘s ochtends het licht aan dus de oogjes worden een beetje moe. Uw verslaggever draait er een punt aan. Morgen verder. Ook Marnix en Kim taaien af maar de rest schakelt nog even een versnelling terug om het laatste uurtje door te trekken.

Dag 2: vrijdag 20 september

08:57 uur – Good morning hackathon! Developers Marco en Bruno zijn als eerste binnen. Eerst koffie en dan verder met waar we gisteravond tegen elven waren gebleven. De oproep om een hip t-shirt aan te trekken was niet aan dovemansoren gericht. Bruno heeft een kast vol en Marco liet er twee speciaal maken voor deze 2-daagse MetaFactory Herfst Hackathon.

Marco wint niet alleen de prijs voor zijn t-shirt-actie maar ook voor het bespelen van veruit het hipste keyboard, vaderlands trots: de Wooting. Check de toetsen, en ze zijn nog aanslaggevoelig ook. Wat de Wooting bijdraagt aan de eindresultaten weten we einde van deze vrijdag.

10:17 uur – Developer Ralph (sinds augustus) heeft zich bij het gezelschap gevoegd. Wat ga jij vandaag doen Ralph? “Aansluiten bij de teams heeft niet zoveel zin. Ze zijn nu ingewerkt en goed op dreef en ik ga testen of het naar behoren functioneert. Dus niet ‘hoe’ het werkt, maar ‘of’ het werkt. Daarvoor richt ik nu een testomgeving in (zie foto onder) en in de loop van de ochtend start ik de eerste tests. Als de resultaten van Friso en Bruno (Polyglot Java project) er goed uitzien, is er weer een flinke stap gezet. Vandaag komt het gehele project niet af maar tijdens de komende MetaFactory Lente Hackathon 2020 gaat dat zeker lukken. Ik richt overigens ook tests in van het andere team. Kom na de lunch maar even kijken hoe het gaat.”

10:49 uur – Friso is druk met het omzetten van XML naar Java voor de MetaFactory codegenerator: “GitHub heeft een tool die dat al doet dus het is erg handig om die voor mijn werkzaamheden te gebruiken. Dit is commercieel een interessant project omdat XML toch een beetje uit een andere tijd komt. Als ontwikkelaars die code zien, schrikt dat toch een af en geeft geen goed beeld hoe we hier werken. XML is prima hoor en het doet wat het doet. Maar het kan beter en het is voor ons logisch aangezien we bijna alles in Java doen.”

12:18 uur – Voor de lunch lopen we nog even de laatste ontwikkelingen door. Het loopt echt als een trein en na de lunch geeft Marnix de status door. Kim en Marco reageren op een opmerking over communicatie tussen ontwikkelaars: “In tegenstelling tot wat veel mensen denken, is de communicatie tussen de ontwikkelaars hier – en niet alleen tijdens deze hackathon – intensief en constant. We werken met 3 collega’s samen aan de InteliJ Plugin en ik laat je hier op het scherm de resultaten zien. Het is echt een enorm verschil tussen de oude situatie (de plugin had een bekende bug) en de gister en vandaag aangepaste plugin. Zo’n resultaat haal je alleen als je goed met elkaar in verbinding staat en elkaar constant op de hoogte stelt van de ontwikkelingen. Het stelt eisen aan het team waaraan niet elke ontwikkelaar kan voldoen. Tijdens een hackathon als deze komen onze kwaliteiten echt optimaal naar boven. Ik begrijp heel goed dat het voor Bruno wennen is maar wij zijn echt 110% in ons element. Voor je het weet is hij gewend aan onze manier van werken.”

Kim en Marnix nemen de resultaten tot nu toe door. Als er niet af en toe een ‘verslaggever’ als buitenstaander binnen zou komen lopen om – ik zeg maar iets – de lunch aan te kondigen, zouden de heren developers gewoon in 1 ruk doorgaan. Bruno snapt het wel: lunchtime amigos!

13:37 uur – Bart stelt direct na de lunch een stand-up voor. De resultaten vat Marnix samen in begrijpelijke taal: “Het gaat heel erg goed en iedereen is heel gefocust bezig. Ralph is door het Polyglot Javateam bijgepraat en doet test- en verify-werk. De resultaten van het Plugin-team zijn ook bemoedigend. Eigenlijk hebben we in de afgelopen anderhalve werkdag – die uiteraard wel iets langer duurt dan een gebruikelijke werkdag – enorm veel kunnen doen. Daar is een hackathon ook goed voor: om te zien hoe het ook nog en anders kan. De InteliJ Plugin ziet er nu beter uit, de bugs zijn onder controle en hij doet precies wat de oude kon, maar dan beter. Er kan daadwerkelijk code mee gegenereerd worden. Wat we deze middag gaan doen, is zaken toevoegen waar we eigenlijk al een tijd op zaten te wachten.” Glunderend loopt een tevreden Marnix terug naar zijn teams.

15:44 uur – Drie minuten voordat het bier uit de ijskast komt, knikt Marnix tevreden en is trots op zijn 2 teams. Kim denkt er net zo over, zoekt naar de juiste woorden en doet ondertussen wat rek- en strekoefeningen.

16:45 uur – Uw verslaggever ruimt z’n boeltje op en rondt deze liveblog af. Ik kan nu al zeggen: very well done guys!

Nabrander: maandag 23 september

08:57 uur – De stand van zaken wordt opgemaakt en het is duidelijk dat beide hackathon-projecten vanaf nu al zo goed als bruikbaar ingezet kunnen worden. De laatste puntjes op de i worden in de komende sprint ingepland en uitgevoerd. In het voorjaar 2020 de volgende Hackathon!

Meer weten over MetaFactory?

Neem contact op via de contactpagina, mail info@metafactory.nl of bel 020 – 787 0393

Ook interessant

Geen categorie
Senior softwareontwikkelaar Kim: “Ik ben blij dat ik hier volop met techniek bezig kan zijn”
Geen categorie
Social media posts