Denne artikel stammer fra det trykte Computerworlds arkiv. Artiklen blev publiceret den Computerworld d. 1. oktober 2004.
Computeren skal kunne forstå, hvad vi vil have den til. Det kræver en ny type programmeringssprog, mener manden bag Microsofts C#, danskeren Anders Hejlsberg.
Softwareprogrammer skal kunne reagere på, hvad vi ønsker gjort, i stedet for som i dag at have at vide, hvordan det skal gøres. Sådan lyder visionen for fremtidens programmeringssprog fra Anders Hejlsberg, der er hovedarkitekten bag Microsofts C#-programmeringssprog en af nøglepersonerne bag .Net.
Visionen kræver et grundlæggende skift til såkaldt deklarativ programmering, som er i stand til at forstå brugernes hensigter. Udviklingen på dette område anser Anders Hejlsberg for noget af det mest perspektivrige inden for programmering, men det vil tage tid at nå dertil, mener han.
- Det er interessant, hvor langsomt software udvikler sig i sammenligning med hardware. Min computer har fået tusind gange hurtigere forbindelse og titusind gange hurtigere processor, men grundlæggende er programmeringssprogene som for tyve år siden. Vi har gjort computerne endnu bedre til det, de hele tiden har været gode til, men vi har ikke fået dem til at gøre noget nyt, siger han.
Målet er at frigøre programmørerne fra mange af rutineopgaverne, for at de kan bruge mere tid på den kreative del af programudvikling. Denne side af programmering ligger ifølge Anders Hejlsberg nærmere kunst end matematik.
- Der er meget videnskab i programmering, men har også et element af kunst: Programmørerne taler om, hvorvidt et stykke kode "ser rigtigt ud" eller "føles rigtigt", lidt ligesom design, der virker. På en måde er det design på et andet plan. Når man når frem til den rigtige kode, er det som når en brik falder på plads i et puslespil, siger han.
Fælles sprog
På kortere sigt arbejder Anders Hejlsberg på at gøre det muligt at benytte samme programmeringssprog til applikationer og databaser. Derfor arbejder Microsoft på at skabe fuld database-integration i kommende versioner af C# fra 3.0 og frem.
- Applikationerne er måske udviklet i C# eller Java, men i dag er det næsten umuligt at bruge et program uden at der skal laves forespørgsler i databaser, og så skal der benytte SQL eller lignende. Og da der stor forskel på programmeringssprog og databasesprog skaber det et komplekst miljø. Det kan gøres mere effektivt med en fælles syntaks, siger han.
Det første chok
Inden Anders Hejlsberg i 1996 blev ansat hos Microsoft arbejdede han 16 år for softwarehuset Borland, hvor han ledede skabelsen af udviklingsværktøjet Delphi, som han også skrev større dele af. Han blev ansat i Borland, mens han skrev udviklingssproget Turbo Pascal, og han husker stadig det chok, han fik ved mødet med den amerikanske softwarebranche.
- Da vi i sin tid udviklede Turbo Pascal, indgik vi en kontrakt med Borland, hvor vi mente, at vi havde dækket alt. Men vi havde ikke fastsat en minimumspris. Vi gik ud fra, at de ville sætte prisen så højt som muligt. Derfor kom det bag på os, da de satte prisen til knapt 50 dollars på et tidspunkt, hvor vi solgte det til ti gange så meget. Vi var ikke klar over, at de havde opdaget, at på software-markedet kan lav pris skabe et massemarked, og dermed i sidste ende større indtjening, siger han.
Ændret livsstil
Anders Hejlsberg skrev selv compileren og andre dele af Turbo Pascal, og sendte koden til Borland i USA via modem, mens han endnu boede i Danmark. Sådan laver man ikke programmer i dag, og slet ikke hos Microsoft. Her er der flere end tusind ansatte i Visual Studio-gruppen. Det betyder, at hans arbejdsdag ser noget anderledes ud i dag.
- Det er den samme slags job, det indgår bare i en større sammenhæng end tidligere. Og i dag tilbringer jeg mere tid med at kommunikere. På den anden side er min livsstil også ændret. Når du er ung, kan du arbejde 80 timer om ugen eller mere og brænde dit lys i begge ender og også på midten. I dag holder jeg 50 timer det meste af tiden og søger at være hjemme seks-halvsyv for at spise med min kone og mine børn. Om aftenen prøver jeg at begrænse arbejdsaktiviteterne til at tjekke lidt mail, siger Anders Hejlsberg, der i dag er 43 år gammel.
Men selv om Anders Hejlsberg bruger mere tid på at kommunikere, er han opmærksom på risikoen for at drukne i information.
- Microsoft har et rimeligt fladt hierarki baseret på teknisk dygtighed. Det er godt, fordi det sikrer input og kompetence fra mange til projekterne, men det betyder i nogle tilfælde, at tusind mennesker fremfører en teknisk mening, siger han.
Rutinerede medspillere
På den anden side er udviklergrupperne bag C# begrænsede: Der er fire-fem medlemmer i C#-designgruppen, compilergruppen har fem medlemmer, og værktøjsgruppen har otte-ti deltagere. Siden lanceringen af C# i april 2002 har disse grupper arbejdet på at videreudvikle dette sprog og .Net-platformen. C# blev ISO-certificeret i april 2003, og yderligere standardisering er i gang.
Møderne i designgruppen har siden slutningen af 1998 foregået i samme lokale hver fredag mellem 13 og 16, og gruppen består grundlæggende af de samme mennesker.
- Det er interessant at indgå i en gruppe på fem mennesker, der alle ved nogenlunde det samme, men som hver især har rubriceret deres viden på deres egen måde. Vi skal ikke starte møder med en 50 minutters indledning for at opnå konsensus. Vi udviklet en fælles filosofi for, hvordan tingene skal gøres, som vil gå igen i de kommende versioner af C#, siger Anders Hejlsberg.
I dag står der Distinguished Engineer på hans visitkort. Det er en rang, som kun 14 medarbejdere i selskabet har, og som han beskriver som "svarende til en Vice President, men uden at der er nogen, der refererer til dig."
Billedtekst:: - I dag holder jeg 50 timer det meste af tiden og søger at være hjemme seks-halvsyv for at spise med min kone og mine børn, fortæller Microsofts danske Distinguished Engineer, Anders Hejlsberg.