Systemudvikling og systemer

Ole Objekt Orientering

Gennem hele sit liv har Ole Lehrmann Madsen kæmpet for en ting: Bedre kompilere til objektorienteret programmering. Den erfarne datalogiprofessor er en af Europas ivrigste ambassadører for den metode, der vurderes at blive grundlaget for fremtidens mobile internet.

 

Da PROSAbladet første gang kontakter Ole Lehrmann Madsen for at få en interviewaftale, er overblikket for et kort øjeblik forsvundet. Han har nemlig siddet længe op aftenen før og programmeret i sit eget objektorienterede programmeringssprog, Beta. Men overblikket kommer hurtigt igen, selv om han er en travl mand.

Det lykkedes også kun at finde et hul med kort varsel i den travle professor, direktør, bestyrelsesformand og forskers kalender, fordi han har undladt at slette punktet fra en anden aftale, der var aflyst.- Jeg fjerner aldrig et møde i min kalender, hvis det bliver aflyst. Så vil jeg hellere gemme og glemme det. Det er den eneste måde, jeg kan skaffe mig tid og åndehuller på. Derfor var der lige tid til i dag, forklarer Ole Lehrmann Madsen med et skævt smil, da vi møder ham på Alexandra Instituttet i den nye it-by Katrinebjerg i Århus.

Men historien om Ole Lehrmann Madsens livslange kærlighed til objektorienteret programmering begynder et helt andet sted for 30 år siden.

Da den norske professor Kristen Nygaard i vinteren 1973-74 besøgte Aarhus Universitet som gæsteprofessor og forelæste om objektorienteret programmering, blev Ole Lehrmann Madsens livsbane udstukket. Kristen Nygaard havde allerede udviklet det første programmeringssprog, Simula I og Simula 67, der baserede sig på objektorienteret programmering, og den unge datalogistuderende greb straks stafetten.

En discipel og hans mentor
- Vi har kontinuerligt arbejdet sammen siden. Indtil Kristen Nygaard pludselig faldt om og døde af et hjerteslag sidste sommer, fortæller Ole Lehrmann Madsen.

Han lægger ikke skjul på, at den norske datalogiprofessor har været som en mentor ham, og det var da også Ole Lehrmann Madsen, der måtte overtage opgaven med at holde forelæsningen, da Kristen Nygaard sidste sommer modtog den berømte Turing Award, der gives til personer, der har bidraget med markante teknologiske landvindinger inden for datalogi. Rækken af markante notabiliteter indenfor forskning og udvikling af datalogi, der i tidens løb har modtaget prisen, er imponerende. Foruden æren består prisen da også af 100.000 dollar.Ole Lehrmann Madsens historie er ligeså tæt forbundet med Kristen Nygaard som med objektorienteret programmering, og Kristen Nygaards navn dukker op i næsten hver anden sætning, når Ole Lehrmann Madsen skal fortælle om mere end et kvart århundredes arbejde med at forske i og udvikle objektorienteret programmeringssprog. Men det har ikke altid været et nemt samarbejde.

- Kristen Nygaard var meget ustruktureret. Når vi aftalte, hvad vi skulle, så endte vi altid med noget helt andet. Men han var meget inspirerende, fortæller Ole Lehrmann Madsen om sin tidligere ven og læremester.

Far til århusianske Beta
Den unge danske datadiscipel er i mellemtiden selv blevet professor, og hårfarve og hårvækst har også antaget et udseende, der svarer til forestillingen om en datalogiprofessor. Og Ole Lehrmann Madsen er tydeligvis den type professor, der føler sig bedst tilpas ved en tavle og foran et auditorium af interesserede lyttere. Vi er ikke nået fem minutter ind i interviewet i det lille mødelokale på Alexandra Instituttet, før han springer op til det store Whiteboard i den ene ende og i et rasende tempo lirer abstrakte begreber og en sand syndflod af navne på programmeringssprog og personer af sig.

- I 1975 begyndte Kristen Nygaard og jeg sammen med flere andre at udvikle Beta. Et programmeringssprog, der skulle være en videreudvikling af Simula, fortæller Ole Lehrmann Madsen.Han blev færdig med sin magistergrad i datalogi i 1975. I 1980 blev han færdig med sin ph. d. - også fra Aarhus Universitet. Og der har han i øvrigt undervist og forsket siden. Samtidig med at han blandt andet har udviklet kompileren til Beta.

Beta er et nordisk udviklet programmeringssprog, der ikke er kendt af ret mange, men sammen med en række andre objektorienterede teknologier som LISP og Smalltalk, ligger Betasproget til grund for blandt andre Java og C++ og C#. Sprog, der siden er blevet brugt til at udvikle et utal af de applikationer, vi bruger i dag. I første omgang foregik gik udviklingen af Beta i et fælles nordisk projekt, Mjølner projektet, men i 1988 stiftede Lehrmann og Nygaard i stedet et firma til formålet, Mjølner Informatics. Projektet var blevet kommercielt.

På grænsen mellem forskning og erhvervsliv
- Vi var omkring en ti stykker, der hver stak 9.000 kroner i et anpartsselskab, fordi arbejdet ikke kunne rummes inden for
et offentligt forskningsprojekt. Men man kan ikke lave en forretning ud af at udvikle programmeringssprog, så rige er vi aldrig blevet. Der er ikke mange, der køber kompilere, fortæller Ole Lehrmann Madsen med sit skæve smil.

Det var lang tid, før det blev moderne at forene forskning og erhvervsliv og skabe synergi, og Ole Lehrmann Madsen afviser også, at Mjølner Informatics var forbillede for det nuværende Alexandra Institut, hvor professoren i løbet af de sidste år er blevet direktør. I begyndelsen kun i fire timer om ugen - nu på fuld tid.Alexandra Instituttet er en del af den århusianske it-by, Katrinebjerg, der netop skal fremme forskning og erhvervsliv - i fællesskab. Mjølner Informatics findes dog stadigvæk og udvikler avancerede it-løsninger med udgangspunkt i et team af højtuddannede dataloger, og Ole Lehrmann Madsen sidder for bordenden som bestyrelsesformand.

- Der kom rigtig skub i forretningen efter et seminar i Stockholm i 1994, hvor der åbenbart var folk fra Ericsson til stede i salen. De blev en stor kunde, og vi har lavet de centrale softwareelementer til deres telefoncentraler, forklarer datalogiprofessoren med en tydelig stolthed, der fortæller om, at objektorienteret programmering netop er en videnskabelig metode til at automatisere en kompliceret fysisk virkelighed med. Og mødet mellem forskning og teknologi på højt plan og fuldt fungerende systemer stadig er en tilfredsstillelse.

Der står OOP på alle kasketterne
Ole Lehrmann Madsen har både en forskerkasket, en kommerciel kasket og en kodekarls-kasket.

- Det er lakmusprøven, om det vi laver på et universitet, nytter noget i virkeligheden. Og i øvrigt får jeg abstinenser, hvis jeg ikke får lov at kode en gang imellem, forklarer han.Ole Lehrmann Madsen har ikke forladt Aarhus Universitet, siden han blev indskrevet i 1969. Undtagen to gange. Første gang da han i et års tid skiftede det østjyske universitet ud med det berømte Stanford universitet i Californien. Samt i 1994, hvor han igen tog et års orlov for at forske i objektorienteret programmering hos Sun Microsystems Laboratories - også i Silicon Valley.

- Jeg tog til USA for at forske hos Sun, fordi det er det eneste private firma, der udvikler programmeringssprog. Og så var de i øvrigt de første overhovedet, der havde købt en Beta-licens. Det demonstrerer jo en vis interesse for det, vi gik og arbejdede med her i Skandinavien, forklarer Ole Lehrmann Madsen.Hos Sun skulle Ole Lehrmann Madsen indgå i et lille forskningsprojekt kaldet SELF, men det var her, Ole Lehrmann Madsen som en af de første hørte om tankerne bag Oak - forløberen for Java.

- Vi så en demonstration af, at man kunne downloade en applet i en browser. Men det vakte ikke den store opsigt. Det var jo ikke særlig nyttigt, vurderede vi. Men i løbet af få måneder var der jo en aftale med Netscape, og så vender verden fuldstændigt. Pludselig handler det hele om Java, fortæller Ole Lehrmann Madsen.

Fremad for forskningen
Han erkender, at Java som objekt-orienteret programmeringssprog er et glimrende håndværk, og det faktum, at Java er baseret på en virtuel maskine, der fungerer uafhængigt af styresystem, var det rigtige valg på det rigtige tidspunkt. Men imponeret var han ikke.

- Set ud fra en forskningsmæssig synsvinkel, er det svært at finde noget nyt i Java. Det var jo ting, vi havde set før, forklarer datalogiprofessoren.Alligevel ærgrer det ham ikke, at der er nogle ting, der slår an kommercielt. Mens andre strålende opfindelser forbliver ukendte, ligesom folkene bag forbliver ukendte - og fattige.

- Sådan er det bare. Der er ikke meget at gøre ved det. Jeg har ingen problemer med at være anerkendt i forhold til de præsentationer, som kendes i miljøet. Selv om de kun er kendt der, siger Ole Lehrmann Madsen og henviser blandt andet til det europæiske forskningssamarbejde for objektorienteret programmering, AITO og ECOOP, hvor han i øvrigt også sidder i formandsstolen.- Når det kommer til det kommercielle, kan vi forskere kun påvirke udviklingen. Det er helt umuligt at vide, hvad der slår an, vurderer Ole Lehrmann Madsen, idet han peger på, at hvis det havde været Beta-sproget, der var slået an, så ville han være blevet "stinkende rig" i dag.

På tavlen tegner han to lodrette søjler, hvor forskning er isoleret i den ene søjle og kommercielle produkter i den anden. Og det er tydeligt, at Ole Lehrmann Madsens kærlighed forbliver ovre i den venstre spalte, hos forskningen, hvor det gælder om at finde nye veje. Og der er masser af uudforskede områder inden for objektorienteret programmering, selv om Kristen Nygaard og Ole Lehrmann Madsen med en række andre videnskabsfolk kloden over har forsket i det her i mere end et kvart århundrede.

To program is to understand
- Modelleringsmæssigt er der stadig en masse uafklarede aspekter. Der mangler et hav af forskningsprojekter indenfor den her verden, vurderer Ole Lehrmann Madsen.

Selv om objektorienteret programmering er en abstrakt begrebsverden, som det kan være svært at fatte for lægfolk, er det netop den tætte kobling mellem det objektorienterede begrebsapparat og virkeligheden, der interesser Ole Lehrmann Madsen.- Tænk på, hvordan børn lærer om begreber. Dét, synes jeg, er vældig spændende. Det svarer jo til, at man står overfor et nyt domæne, en ny virkelighed eller et nyt system. Det er ekstremt kaotisk ved første øjekast, men jo mere modellen afspejler domænet, jo lettere er det at forstå. Men der er langt endnu. "To program is to understand", siger Ole Lehrmann Madsen.

Han peger på, at netop det område, som Alexandra Instituttet har specialiseret sig i, pervasive computing, er meget velegnet til objektorienteret programmering. Pervasive computing betyder populært sagt computere i alting og til alle formål. Og her kommer objektorienteret programmering netop til sin ret, fordi teknologien er uafhængig af hardware og operativsystem. Det vil sige, at komponenter kodet efter objektorienterede metoder for eksempel i Java direkte kan overføres fra en computer til små bærbare enheder - eller måske helt nye enheder bygget ind i tøj, tasker, under huden og så videre.

Der er stadig masser at opfinde
- Vi har tre visioner, som vi forsker i her i it-byen på Katrinebjerg. Hvordan skal man bruge it, når der bliver allestedsnærværende? Hvad kræver det af ny infrastruktur og nye måder at planlægge sikkerhed på? Og hvordan skal brugergrænseflader se ud i fremtiden, forklarer Ole Lehrmann Madsen.

Han lægger ikke skjul på, at han på disse områder forventer sig meget af det erhvervsrettede forskningsmiljø i den århusianske it-by. Han peger på, at samarbejdspartnere som Danfoss, B & O og Vestas skal bruge objektorienteret programmering i mange af de apparater, som de fremstiller.- Det gik hurtigt op for mig, at det var en god ide at forene forskning og erhvervsliv. Forskere skal ikke sidde isoleret. Men det griber om sig. Da vi begyndte i oktober 2000, var det jo bare tanken, at jeg skulle bruge fire timer om ugen på at være direktør for stedet her. Nu er jeg her på mere end fuld tid, fortæller universitetsprofessoren, programmøren, forskeren og direktøren.

Og der er stadig masser af opgaver at kaste sig over. Igen rejser Ole Lehrmann Madsen sig og går til tavlen for at forklare om muligheden for at skabe universelle programmoduler, der kan genbruges i koden - eller skiftes ud. Nedarvning, som det hedder i fagsproget.Der bliver mere af det i fremtiden

- Vi skal frem til at lave nedarvning mellem programmeringssprogene. Det er ikke lavet før, og blandt andre Microsoft lægger vægt på, at så mange sprog som muligt kan nedarve. På den måde kan man udnytte programmeringssprogene på en helt anden måde end før, ivrer Ole Lehrmann Madsen.Og det kan måske give hans eget hjertebarn, Betasproget, en renæssance.

- Nok er Beta et gammelt sprog, men jeg har masser af ideer i forhold til den mobile, pervasive verden. Hvis applikationer for eksempel skal føres over i mobiltelefoner, så er det nødvendigt med et programmeringssprog, der har sådanne objektorienterede funktioner, vurderer Ole Lehrmann Madsen.Gennem hele sit voksne liv har hans verden drejet sig om objektorienterede teknologier, og det forventer han vil blive virkeligheden for endnu flere i takt med, at de nye trådløse og mobile netværksteknologier indtager vores hverdag.

- Der har været meget fokus på det her, og det bliver der helt sikkert også i fremtiden. Objektorienteret programmering kommer til at indgå i store dele af processen, vurderer Ole Lehrmann Madsen.