Dreaming in Code

Two Dozen Programmers, Three Years, 4,732 bugs, and One Quest for Transcendent Software

Scott Rosenberg, 2007, 400 s

dreamingincode.jpg

”Software is hard.”

Dessa ord yttrades av professor Donald E. Knuth efter att i flera år ha slavat med med typsättningsprogrammet TEX. Det är ett uppseendeväckande uttalande, Knuth har nämligen skrivit datavetenskapens bibel, The Art of Computer Programming, ett verk som spänner över fyra tjocka volymer. Hur mästerligt detta verk än är ur en rent akademisk synvinkel så upptäckte alltså Knuth att det var bra mycket svårare att skapa en riktig fungerande mjukvara än att teoretisera om dess ingående delar. ”Software is hard” kan också sägas vara temat för Dreaming in Code.

Lite talande statistik: 1995 ansågs endast 16% av alla mjukvaruprojekt vara lyckade, 31% var helt misslyckade och lades ned utan resultat; resten, 53%, var delvis misslyckade (försenade, över budget och/eller inte vad beställaren ville ha). 2004 var siffrorna bättre: 29% lyckade, 18% helt misslyckade, 53% delvis misslyckade. En avsevärd förbättring, men fortfarande ett ganska erbarmligt resultat som innebär att miljarder slängs i sjön varje år. Varför är det på detta viset?

Rosenberg ger inget svar, men han ger dig en chans att själv fundera på svaret genom denna bok. Dels beskriver han mjukvaruutvecklingens historia, från de första datorerna med Assembler, Fortran och COBOL till dagens Web 2.0 implementerat i moderna språk, med moderna verktyg och moderna metoder. Dels följer han ett utvecklingsprojekt som borde ha alla möjligheter att bli framgångsrikt: det har förutom ovan nämnda hjälpmedel också en mycket namnkunnig, kompetent och erfaren grupp utvecklare, hälften av dem ekonomiskt oberoende IT-miljonärer. Projektet heter Chandler, en ”Outlook-killer”, och pågår fortfarande, tyvärr, eftersom det borde ha varit avslutat för något år sedan.

mythicalmanmonth.jpg Utvecklingsmetodernas korta historia gås igenom, från inga metoder alls till minutiös planering, som CMM och RUP, dvs ceremonitunga dokumentproducerande processer, fram till dagens smidigare ”agila” processer. Annan teori som tas upp är Fred Brooks klassiska The Mythical Man Month och No Silver-Bullet och Eric Raymonds The Cathedral and the Bazaar. Nick Carrs förutsägelse att IT doesn’t matter förkastas som varandes lika prematur och vilsen som Francis Fukuyamas The End of History and the Last Man. Snarare är det så att vi snart har hunnit till pyramiderna och har mycket långt kvar till katedralerna. När det gäller systemutveckling flyger vi fortfarande på bröderna Wrights nivå.

Summa summarum är detta en upplysande genomgång av hur långt, eller hur kort, mjukvaruutveckling har kommit, men boken innehåller kanske inte så mycket nyheter för för den som redan är väl insatt i området. Chandler pågår fortfarande men förmodligen har projektet sprungits förbi av hela Web 2.0-vågen med Gmail, Google Calendar och otaliga andra smidiga webbapplikationer. Även om Chandler så småningom blir färdigt så har dess tidsfönster stängts. Den tekniska utvecklingen går fortfarande framåt med stormsteg och ett projekt som tar för lång tid är gammalmodigt redan när det kommer ut. Snabbhet är A och O på dagens IT-arena.

Published in: on maj 6, 2007 at 10:25  Kommentera  
Tags: , , ,