zaterdag, oktober 11, 2008

Software Release Magazine column: Slow IT

Ik mocht een een praatje houden op JavaZone: een congres in Oslo dat jaarlijks 2400 software engineers trekt. Wat u zegt, niet helemaal een gelukkig geval van typecasting. Ik heb me in het verleden nog wel eens licht kritisch uitgelaten over Java, hoewel ik moet toegeven dat het altijd een kwestie van spijkers op laag water zoeken was. Met uitzondering misschien van de bizarre complexiteit van de taal, de lage productiviteit en de semicriminele toeren die ontwikkelaars elke dag weer uithalen om hun dolgedraaide objectgeoriënteerde ideetjes af te beelden op een database. Maar dat zijn details, laten we eerlijk zijn.

En gelukkig viel er heel wat meer te genieten dan geklets over een programmeertaal. Er waren zoveel sessies dat de organisatie zes grote schermen in de centrale hal had geplaatst. Zo kon je tegelijkertijd alle spreekbeurten in de zaaltjes volgen. En met speciale Overflow Headphones kon je steeds wisselen van audiokanaal. Het is veelzeggend dat veel congresbezoekers er de voorkeur aan gaven de hele dag te blijven zitten in de hal, rusteloos zappend op zoek naar interessante fragmenten in de sessies.

Heel passend eigenlijk. Veel voordrachten stonden in het teken van agile systeemontwikkeling en zo’n beetje alle beroemdheden uit het vakgebied waren er. Dat leidde tot het ondertussen overbekende gepreek voor eigen parochie in een gelijkhebberig ons-kent-ons sfeertje. Op een gegeven ogenblik merk je dat het je gaat tegenstaan, al die intergalactisch gecertificeerde, 7e dan Scrum masters. Allemaal de mond vol over hoe het nog sneller, interactiever en in nog kortere cycli kan. En hoe de eindgebruikers zich steeds weer blij verrast zullen werpen op de zoveelste daily build.

Hoe weten ze dat eigenlijk zo goed? Zonder uitzondering lieve, vriendelijke mensen, die agile guru’s. Maar de meesten maken toch de indruk dodelijk verlegen te zijn en op zijn minst te lijden aan pleinvrees, dagdromerij en wereldvreemdheid. Ik vraag me af hoe vaak ze in het wild met echte gebruikers te maken hebben.

Al die flexibiliteit en interactie, het wil de laatste tijd wel eens een tikje kortademig aanvoelen. Op het Internet werken we ons googlend en klikkend door een reeks van nieuwsbronnen heen. Een filmpje hier, een blog-item daar: als het meer dan twee minuten kost, raken we afgeleid. Die hijgerigheid slaat ook neer op onze aanpak van systeemontwikkeling. Niet te lang met je gebruikers praten over specificaties, want die zijn toch nog niet helder. Maak eerst maar eens iets werkends, dan komen we er later wel weer op terug. In een workshop of zo. Niet te diep in je ontwerp opgaan, je kunt in een volgend stadium altijd weer terugvallen op refactoring.

Ik zie nog steeds grote voordelen in een iteratieve benadering en intensieve gebruikersparticipatie. Maar het ruikt onmiskenbaar naar politieke correctheid in agile kringen en de balans is zoek. Tijd voor een tegenbeweging. Laten we weer eens wat vaker bewust de tijd nemen om de essentie van het beoogde systeem tot ons te laten doordringen en te begrijpen wat onze gebruikers nodig hebben. We kunnen veel leren van de principes van Slow Food: een onder koks populaire stroming die ervan uitgaat dat goed eten een kwestie is van geduld, rijping en toewijding. Gewoon drie dagen rundvlees op 57 graden laten sudderen in een Grieks herderspotje. Dat is nog eens wat anders dan een zootje ingrediënten door elkaar mikken in een wok.

Van een echt goed, doortimmerd databaseontwerp heb je decennia lang plezier. En het getuigt van respect naar de gebruikersorganisatie om zorgvuldig aandacht te besteden aan het doorvoelen van de vraagstelling voordat er specificaties worden gekrast.

Slow IT. Het vakgebied is er gereed voor. Nu nog een keer een uur vinden om het concept verder uit te werken.

Gepubliceerd in Software Release Magazine oktober 2008; korte, bewerkte versie verscheen eerder in IT Executive.

Geen opmerkingen: