Geen enkel product van ons menselijk vernuft is zo nuttig of geniaal dat het immuun is voor kritiek. Alles wat wijdverbreid is stuit wel ergens op tegenstand en wetenschappelijk bewezen nut kan een toenemend aantal lieden niet overtuigen. Nee, ik ga het niet over vaccinaties hebben, al zou dat algoritmisch geen slecht idee zijn voor een LinkedIn artikel.
De toepassing van de Agile principes ligt regelmatig onder vuur, in tegenstelling tot de principes. We staan doorgaans nog wel achter het Agile Manifesto, maar grootschalige projecten stranden nog steeds, en softwarekwaliteit is sinds 2001 bepaald niet met sprongen vooruitgegaan. We doen iets niet goed.
We weten wel wat eraan schort. Even talkrijk als de how to handleidingen zijn de how not to adviezen. In dat kader kan ik Zombie Scrum Survival Guide (Verwijs/Schartau/Overeem) van harte aanbevelen, dat de valkuilen uitstekend in kaart brengt. De schrijvers merken terecht op dat de complexe problemen die we op ons bord krijgen je niet in de richting van een oplossing wijzen als je er maar lang genoeg naar staart. Dat is de rode draad in dit soort adviezen: Agile draait om voortdurende aanpassing; het vermogen om het schip tijdig bij te sturen. Het klassieke gebod van twee keer meten, één keer zagen klinkt aannemelijk, maar first time right pakt voor de meeste projecten zelden goed uit, en nooit goedkoop. Toch zie ik in het Agile principe van adaptatie net zo goed een mismatch van psychologische aard die te weinig aandacht krijgt. Het is onze hang naar een voorspelbare procedure.
Ontwikkeling draait om originele oplossingen voor nieuwe problemen. Los je een herhaling van een bestaand probleem op met nieuwe software, dan ben je waarschijnlijk het wiel aan het heruitvinden. Originaliteit is rommelig van nature en onttrekt zich per definitie aan een herhaalbaar recept. Het Agile kader kan hooguit door regelmatige feedbackmomenten voorkomen dat het in chaos verzandt, maar succes is nooit gegarandeerd.
We verwachten nogal wat van Agile teams. Ontwikkelaars moeten betrokken worden bij alle stadia in de levenscyclus van een product (denk Devops) en zijn minder aan het coderen. Zakelijke stakeholders moeten dan weer nauwer samenwerken met de techneuten. Dat betekent regelmatig overleg met een rijk pluimage aan mensen. Dat vraagt om soft skills die je alleen leert in de praktijk.
In mijn post Wij witte mannen van Agile vond ik het wel een dingetje dat de initiatiefnemers van weleer zo weinig divers waren in gender en etniciteit. Dat bleek controversiëler dan ik dacht. “Wat doet dat ertoe?” was de voorspelbare respons van andere blanke witte mannen. Wat er wel toe doet, en waar je geen speld tussen krijgt is dat het zeer ervaren heren waren. Decennia aan cumulatieve ervaring in hoe je het niet moet doen gaf hun met name recht van spreken. Maar van het diepe inzicht in de geest van Agile kun je niet doordrongen raken met twaalf bullet points op een poster. Je moet praktiseren, struikelen, en leren.
Een ambachtelijk proces is bevredigend juist omdat het voorspelbaar is. Ik heb respect voor handenarbeid, liefst van het moeilijke soort zoals een plafond stuken of een viool bouwen. Ook coderen volgens strikte specificaties kan heerlijk zijn. Ik kan genieten van een middag andermans spaghetticode uit elkaar trekken, documenteren en testen. Ook dat vraagt wel wat originaliteit, maar het is een ander soort uitdaging dan bijvoorbeeld schrijven voor mijn blog. Steeds weer starten met een leeg Word document is best ontmoedigend. Het werktempo hangt helemaal af van je concentratie en gemoed. En ondanks je inspanning levert niet elk idee een even goed stukje op.
Werken met onvoorspelbaarheid is meestal niet prettig. Niemand kan acht uur per dag originele oplossingen bedenken. Misschien vluchten we daarom wel in Zombie Scrum en volgen we enkel de letter van de wet in ongeïnspireerde demo’s en retrospectives in de hoop dat het ons iets oplevert. Vergeet het maar. Agile is geen recept.
Agile ontkent niet dat er verschillen in senioriteit bestaan in teams, maar verbindt er verder ook geen consequenties aan. Dat is slecht, want in een junior team is Agile gedoemd te mislukken. Daar grijpt men het te snel aan als makkelijk recept. Het volgende kun je de Scrum Foundation wel degelijk kwalijk nemen: de arrogantie om iemand met het PSM1 certificaat Master te noemen. Ik heb het zelf ook, maar Master is een devaluatie van het begrip. Een meesterniveau in wat dan ook is een proces van jaren, geen middagje stampen. Het zou Scrum Foundations moeten heten.
Leren hoezeer een echt project niet volgens het boekje verloopt hoort erbij, en ook de voor velen teleurstellende les dat een modern softwareontwikkelaar minder code tikt dan ze eigenlijk zou willen en vaak haar juweeltjes moet verbouwen of weggooien. Sommigen verlaten daarom het vak en worden manager, maar het bloed kruipt waar het niet gaan kan. Ooit eigende de manager van ons team zich een sappige programmeertaak toe en riep verheerlijkt door de zaal: Ah, life is sweet when there is a bit of coding to be done!