Profielfoto
Karl van Heijster

softwareontwikkelaar · filosoof · spreker

(Overpeinzingen)

Je zegt: het is een kennisprobleem. Daar ben ik het niet mee oneens. Maar volgens mij heb ’m dan nog niet helemaal. Het gebrek aan kennis is een symptoom van een dieper liggend probleem. Vraag je af: hoe kan het dat iemand na zoveel jaar ervaring deze code schrijft, en op deze manier ook?

Existentialisme op de werkvloer

Normaal is: kleren aantrekken die je voor een sollicitatiegesprek kocht en in de file staan in een auto die je nog aflost, zodat je de baan kan krijgen om te kunnen betalen voor de kleding en auto, en voor het huis dat je de hele dag leeg laat staan zodat je je kunt veroorloven erin te kunnen wonen. Deze observatie van journalist Ellen Goodman illustreert prachtig de absurditeit van het moderne bestaan. We besteden een enorm groot deel van ons leven op het werk – maar waarom eigenlijk? Hoe past werk in ons bestaan? Hoe vormt – en vervormt – het ons? Dit is het soort vragen dat Mark Cole behandelt in zijn Being at Work: Using Existentialism to Make Sense of Your Organisational Life.

Een verbetering (?) in onze pipeline

De verbetering was eenvoudig: rol niet meer altijd alles uit, maar kijk naar de wijziging in de laatste commit. Bevindt die zich in de front-end, rol dan de front-end uit; bevindt die zich in de back-end, dan de back-end. Simpel, duidelijk, efficiënt: iedereen blij. – Maar wat we over het hoofd hadden gezien: merges. Help! Probleem!

Veranderen doet pijn

Er gebeurde iets interessants, onlangs tijdens een bijeenkomst van het strategietraject waar ik mezelf volledig uit vrije wil mee heb opgezadeld. We werden gewezen op een deadline – en schoten in een kramp. Onze eerste reactie was: “Dat is te vroeg, het is nog niet af!”

De increment, het cadeautje

Scrum is, als ik het meningencircus op LinkedIn mag geloven, al een tijdje uit de mode. Dat is onterecht en terecht. Het is onterecht in zoverre dat veel interpretaties en implementaties van Scrum de geest van het framework niet gevat hebben. Maar het is terecht in zoverre dat Scrum wel degelijk tekenen van ouderdom vertoont, littekens van de tijd waarin het is ontstaan. Beide soorten problemen komen bijeen in de notie van het increment.

Een ontwikkelaar is verantwoordelijk voor drie systemen

Ik weet niet meer waar ik de inval had, onder de douche of op de wc of tijdens het tanden poetsen (duidelijk is in elk geval dat het op de badkamer was): een ontwikkelaar is verantwoordelijk voor (ten minste) drie systemen.

Hoe testers kwaliteit kunnen ondermijnen

Een complex systeem is een systeem waarin het onmogelijk is om te voorspellen wat de relatie is tussen oorzaak en gevolg. Om die reden worden complexe systemen vaak gekenmerkt door tegenintuïtiviteit. Een ontwikkelteam kan worden gezien een complex systeem. Dus het verbeteren van een ontwikkelteam wordt gekenmerkt door tegenintuïtiviteit.

Gegenereerde tests

Als ik collega’s spreek over de voordelen van LLMs, dan is meestal één van de eerste toepassingen die ze voor zich zien: tests laten genereren door AI. Ik begrijp waar die behoefte vandaan komt. Want tests achteraf schrijven is een rotklusje. Achteraf denk je als ontwikkelaar namelijk al te weten dat je code doet wat ‘ie moet doen. Zulke tests fungeren als een soort administratie van de handmatige tests die je tot die conclusie leidden. En wie houdt er nu van zijn administratie bijwerken? – En toch geloof ik niet dat het een goed idee is om AI in te zetten om tests te genereren.

"Trunk"

Op het virtuele bord van onze Retrospective verscheen in de kolom kan beter een sticky met maar één woord erop: ’trunk’. Na een aardige tijd trunk-based te hebben ontwikkeld, bekende een collega de werkwijze nog altijd niet helemaal onder de knie te hebben.