Linku in München voor de International PHP Conference 2018

Ontwikkel-inspiratie opdoen in München. Dat deden onze ontwikkelaars van 15 t/m 19 oktober tijdens de International PHP Conference 2018.

Koen
Geschreven door Koen
Linku biertjes2-min
Linku biertjes2-min

We zetten graag vraagtekens bij wat we ‘gewoon’ vinden. We zoeken altijd naar nieuwe manieren om de kwaliteit van ons werk te verbeteren. Dat doen we bijvoorbeeld door ons vertrouwde kantoor te verlaten en ons te laten inspireren door andere ontwikkelaars en bedrijven.

München was dit jaar het podium voor de International PHP Conference. Een mooie kans voor onze ontwikkelaars om tijdens de oktobermaand naar Duitsland af te reizen.

Met vraag en antwoord vertellen we je graag wat iedere ontwikkelaar heeft geleerd en gedaan.

Bart

Wat waren de onderscheidende factoren van deze conferentie?

Dat er zowel PHP als Javascript talks waren, dus zowel frontend als backend kwamen aan bod. Er waren veel interessante talks, maar ook een aantal superslechte. Maar dat houd je toch. De organisatie was uitstekend. Het programma en de communicatie was duidelijk, de venue mooi en de catering goed.

Wat onderscheidt een interessante talk van een slechte?

  • Spreker biedt nieuwe informatie of een nieuwe kijk op iets dat je al wist

  • Spreker is goed verstaanbaar (spreekt goed Engels)

  • Spreker gebruikt goed leesbare / zichtbare slides die iets toevoegen aan de talk

En dan nog wat secundaire zaken die ook meetellen zoals: tempo van de talk, amusementsfactor (een grapje tussendoor mag best), engagement met publiek en op tijd klaar zijn.

Thomas Junior

Je eerste conferentie! Hoe heb je deze ervaren?

Voor mij was het de eerste keer dat ik mee mocht naar een conferentie. Ik wist van tevoren niet zo goed wat ik moest verwachten, dus ik heb me laten verrassen door de presentaties die gegeven werden. Over het algemeen waren deze erg interessant en zie ik veel mogelijkheden voor onze huidige en toekomstige projecten.

De conferentie zelf was ook erg goed verzorgd, met een goede indeling van de ruimtes en verdeling van de presentaties, uitgebreide lunch in de middag en op dinsdag een welverdiend biertje om de eerste dag mee af te sluiten.

Voor mij is deze conferentie dus zeker een succes geweest, waarmee ik nu met extra motivatie verder kan werken!

Bram

Welke dingen heb je geleerd die je toe kunt passen in je eigen werk?

Ik noem er een paar:

  • Domain storytelling 

    Het in kaart brengen van de processen binnen het ‘domein’ van de klant. Developers denken vaak in classes en methods, en dit leidt nog wel eens tot verschil in interpretatie ten opzichte van de klant over hoe iets moet werken, of bedoeld is.

    Middels het uitschrijven van de verschillende processen die plaatsvinden, in de vorm van een ‘pictographic language’, kan zowel voor de klant als de developers beter inzichtelijk worden gemaakt wie de belangrijke hoofdrolspelers zijn, wat zij doen, en wat de volgorde van handelingen is alvorens een proces is voltooid.

  • Effective code reviews 

    Waar let je op als je samen met collega’s een code review doet? Waar zoek je precies naar? Begrijp je wat de code doet, is deze leesbaar en logisch?

    Handige tips en trucs om een goede reviewsessie te doen met je collega’s en het constructief en leuk te houden.

  • Alternatieven voor inloggen

    Alternatieven voor het inloggen met een wachtwoord voor een applicatie: ‘Passwords are legacy’ (gedateerd). Tegenwoordig gebruiken veel mensen hetzelfde wachtwoord om in te loggen op meerdere online systemen.

    Het moge duidelijk zijn dat deze handelswijze op termijn niet veilig is, want stel dat er een datalek plaatsvindt bij een van de websites? Dan is het voor een hacker makkelijker raden en uitproberen op andere platformen.

    Het is aan te raden om voor belangrijke applicaties op zijn minst 2-factor of multiple-factor authentication te activeren indien mogelijk. Tijdens een talk werden, naast het tonen van een goede password generator, interessante alternatieven behandeld voor het inloggen bij applicaties: bijvoorbeeld inloggen via een magnet-link (een link die per mail wordt verstuurd nadat een gebruiker zijn/haar e-mailadres of username heeft ingevuld). Met deze methode kan de gebruiker binnen 3 klikken inloggen zonder een wachtwoord in te voeren.

    Een andere mogelijkheid is het gebruiken van een USB-key met daarop een private key, die per online applicatie kan worden gegenereerd. De applicatie in de browser communiceert dan via een speciale API met de USB-key die in de computer zit, om de gebruiker te authenticeren voor de desbetreffende applicatie. Het enige wat de gebruiker hoeft te doen is een druk op de knop geven.

  • Hello my name is “if” 

    Het gebruik van meerdere geneste if-statements kan binnen je code tot een hoop verschillende uitkomsten leiden. Daardoor kan de ‘cyclomatic complexity’ (aantal verschillende condities, en daardoor verschillende uitkomsten van een methode) hoog zijn.

    Een talk over dit onderwerp maakte ons wijzer over het reduceren en het liefst vermijden van (geneste) if-statements in je code, zodat deze beter leesbaar en beter testbaar wordt.

Timo

Wat maakt een conferentie zoals deze waardevol voor jou als ontwikkelaar?

Netwerken, ideeën opdoen, nieuwe dingen leren, ervaringen delen en netwerken.

Netwerken klinkt voor jou als een belangrijk aspect. Heb je hier nog nieuwe connecties gemaakt?

Ja, ik heb gesproken met wat ‘grote namen uit de industrie’ (altijd een leuke term). En een aantal nieuwe mensen om te volgen op Twitter / GitHub.

In Duitsland zijn ze nu ook bezig om wat dingen op te zetten rondom helpen met Open Source Contributies (dagen afspreken om samen met anderen te gaan programmeren aan Open Source projecten). Dat was wel interessant om in de gaten te houden.

Oh, en teambuilding is ook een belangrijk onderdeel.

Hoe hebben jullie aan teambuilding gedaan in München?

Als volgt:

Merel

Wat was voor jou een echte eye-opener?

Er is niet direct iets waarvan ik denk: dat was een echte eye-opener. Het waren meer kleine dingetjes in verschillende talks.

De talks op de conferentie waren heel wisselend. Van sommige heb ik ronduit spijt dat ik gegaan ben en andere waren erg leuk en/of interessant, maar niet nuttig voor mijn werk.

Gelukkig waren er ook voldoende talks waar ik wel wat van geleerd heb, al waren er niet direct enorme eye-openers bij.

Wat ik bijvoorbeeld erg interessant vond was de introductie tot de compiler Stencil. Gebaseerd op verschillende concepten van bijna elk bekend front-end framework zorgt Stencil ervoor dat je op een makkelijke manier Web Components (kleine stukjes website) kan maken. Deze Web Components kan je vervolgens in elke website gebruiken onafhankelijk van welk framework je gebruikt.

Ik denk er zelf over om dit binnenkort bij een nieuw project toe te gaan passen in combinatie met Angular. Dan kan ik gelijk ook wat andere nieuwe dingen gebruiken die ik opgepikt heb tijdens de conferentie, want er waren veel talks over Angular. Vooral de talk over RxJS vond ik erg interessant. Dit is een javascript library die ik al lang gebruik, maar waarvan ik nooit geweten heb hoeveel deze eigenlijk kan. Er zitten veel functies al ingebouwd die ik normaal zelf schreef. Tijd om deze eens te gaan gebruiken dus.

Zo heb ik nog veel meer kleine dingetjes opgepikt in verschillende talks, een leerzaam tripje dus.

Thomas

Hoe draagt het bezoeken van deze conferentie bij aan de kwaliteit van ons eigen werk?

Door oplossingen en optimalisaties van community-experts te bekijken, leer je nieuwe toepassingen gebruiken, en krijg je bevestiging van technieken die juist worden toegepast. Een concreet voorbeeld is was de talk over “My name is ‘if’” waarbij getoond werd hoe conditionele operators vermeden kunnen worden en leiden tot beter leesbare code.

Dat laatste draagt enorm bij aan de kwaliteit, omdat code nooit af is en vaak later uitgebreid moet worden. Om een aanpassing te kunnen maken moet je eerst de huidige code kunnen lezen en begrijpen.