Hvor mye kan du om it-historie?

Hvor mye kan du om it-historie?

KRONIKK: Er it-utviklere historieløse? Og i så fall - Gjør det noe?

Filosofen Simone Weil skal ha sagt: "Hvis man ikke kjenner fortiden, forstår man ikke nåtiden og egner seg ikke til å forme fremtiden." I hvilken grad stemmer dette for it og hvor mye it-historie kan de som jobber med eller forsker på dette?

Med jevne mellomrom stiller jeg spørsmålet: "Hvem oppfant datamaskinen?" til it-studenter, systemutviklere og informatikkforskere. Spørsmålet har ingen fasit og riktig svar avhenger av hva man mener med en datamaskin.

Svar som kan forsvares omfatter blant annet:

Leibnitz (mekanisk kalkulator), Hollerith (hullkortdrevet vevemaskin), Babbage (dampdrevet beregningsmaskin som kunne programmeres), Alan Turing (elektronisk datamaskin laget for å knekke tyskernes koder under 2. verdenskrig), teamet som laget Collosus Mark I (nok en elektronisk datamasking laget for å knekke tyskernes koder under 2. verdenskrig) og Konrad Zuse (den første ”moderne” datamaskinen, laget for å simulere baner til tyske raketter under 2. verdenskrig).

Sjeldent i opplæring

Svært få av dem jeg spør kjenner til noen av disse navnene, eller kommer med andre forslag som kan forsvares. Dette er ikke særlig overraskende siden it-historie sjelden inngår i opplæringen. Har denne manglende kunnskapen om it-historien noen negative effekter? Mange tror åpenbart at det har det. Det finnes blant annet et "IT History Society" med formålet å "demonstrere verdien av it-historien for forståelse og forbedring av vår nåværende og fremtidig verden".

Jeg var nylig inne på web-sidene deres for å se om jeg kunne finne noen eksempler på at de hadde klart å gjøre nettopp dette, samt gjennomførte noen søk i ulike bibliotekbaser om verdien av å kunne sin it-historie. Jeg fant svært mye it-historie – det er til og med egne tidsskrifter og konferanser for dette – men jeg fant ingen overbevisende demonstrasjon av viktigheten av å kunne denne it-historien.

Del for del

Dette kunne jo indikere at det er helt greit at dagens studenter, systemutviklere og forskere ikke kan så mye it-historie. Jeg tror imidlertid det er en for kjapp konklusjon. Jeg opplever for eksempel alt for mange it-utviklings- og forskningsmiljøer som har kommet på en god ide og som synes å anta at de er de første – uten å være det. Få ideer er helt like, men enda færre er helt ulike andre ideer.

Ta for eksempel iden om inkrementell utvikling av it-systemer. Denne ideen bygger på at det kan være fordeler ved å ferdigstille et it-systemet del for del. Dette til forskjell til fossefallsmodellen der man forsøker å levere alt på en gang. Inkrementell utviklingsmetode har vært i bruk i minst 50 år. Gerald Weinberg skriver blant annet: "We were doing incremental development as early as 1957, in Los Angeles, under the direction of Bernie Dimsdale [IBM]. All of us, as far as I can remember, thought waterfalling of a huge project was rather stupid, or at least ignorant of the realities ". Norges egen Tom Gilb var også svært tidlig ute og har siden 1960-tallet vært en av de viktigste forkjemperne for inkrementell utvikling. Mer om historien til inkrementell utvikling i: "Iterative and incremental development: A brief history" av Larman og Basili.

Mangelfulle spørsmål

I lys av dette, og tallrike annen dokumentasjon om tidligere bruk av inkrementelle utviklingsmetoder, er det snodig å observere et jevnt tilsig av miljøer som gjennom sin mangel på referanser til tidligere erfaringer synes å gå ut fra at det er de som har kommet på ideen om inkrementell utvikling. De "nye" metodene presenteres ofte med små innholdsmessig og store terminologimessige variasjoner fra tidligere inkrementelle metoder.

Det at de fleste systemutviklere som promoterer nye metoder ikke synes å være særlig informert og/eller opptatt av IT-historien er ikke først og fremst uheldig fordi man tilraner seg å være pioner der man i stor grad er gjenoppdager. Mye verre er det at den manglende historiske kunnskapen lett kan føre til at man ikke stiller spørsmål som: "Hva har vært tidligere erfaringer med inkrementell utvikling?", "Hvis dette er en fantastisk ide og inkrementell metode første gang ble brukt for mer enn 40 år siden, hvorfor bruker ikke alle den i dag? Er det fordi det er prosjekter der den ikke er særlig egnet, eller er det andre grunner?" Historisk ballast er altså ikke først og fremst viktig som faktakunnskap, men mer som mental modell som stimulerer til kritiske spørsmål og nyttig informasjonsinnhenting.

En kjerne av sannhet

Mulige innvendinger mot det å kunne sin it-historie er at "historieløse pionerer vil være mer motiverte og dermed gjøre en bedre jobb enn reflekterte gjenoppdagere" og at "alt har endret seg så mye siden den gang. Det er ikke lett å overføre erfaringer fra tidligere it-prosjekter." Begge innvendingene har en kjerne av sannhet, og det vil alltid være avveininger som må gjøres. På den ene siden vil det være meningsløst å ikke lære av store feilgrep eller repetere suksessformler fordi de ligger mer enn, for eksempel, fem år tilbake i tid. På den annen side vil være farlig å avvise engasjement og glød med innvendinger som "dette har man forsøkt før, og kan ikke ha virket særlig godt siden det ikke er i bruk i dag".

Det er kanskje av like liten praktisk nytte å vite hvem som oppfant datamaskinen som hvem som var konge i Norge i perioden 995-1000. Det som er åpenbart nyttig er imidlertid å ha en tenkeprosess som inkluderer et historisk perspektiv basert på at ideer, særlig de gode, har en sørgelig tendens til å være testet ut lenge før en selv fikk dem og at det kan være verdt å lære av tidligere erfaringer.