Guds programmeringssprog

Igen er det blevet den tid på året – masser af studerende på 4. semester kommer og spørger mig om hjælp til deres projekter. Noget af det rigtig interessante her er, at nogle laver projekter om programmeringssprog til begyndere – og alle programmeringssprogene ligner udgaver af C (fra 1972), måske spædet op med elementer af Java (fra 1995). Til en fremlæggelse sagde en projektgruppe, at deres sprog lignede C, fordi det var beregnet til at være nemt at bruge for alle dem, der aldrig havde programmeret før! På en eller anden måde tænkte de studerende på C som “det oprindelige programmeringssprog”.

Den slags fejlslutninger minder om gamle dages antagelser om at der findes et “oprindeligt sprog”, som alle mennesker taler og forstår inden de lærer det, der senere bliver deres modersmål – dette oprindelige sprog var så Guds sprog. Der har i tidens løb været en række eksperimenter, der alle gik ud på at opdrage børn uden at de lærte et sprog. Den skotske kong James d. 4 sendte således i sin tid to børn ud til øen Inchkeith for at de kunne vokse op hos en stum kvinde; hans antagelse var at børnene ville ende med at kunne tale hebræisk. Det eneste, der skete i alle disse eksperimenter, var selvfølgelig at de stakkels børn mistede forstanden.

En moderne variant af “Guds sprog” er den ofte hørte udtalelse om chokket ved at erfare at man er rejst til et land, “hvor man ikke taler engelsk”.

Alle fejlslutningerne om at C er “Guds programmeringssprog” skyldes selvfølgelig, at det programmeringssprog, som de studerende først lærte, var netop C. Dette taler for at man bør lære flere forskellige sprog ganske tidligt, hvis man studerer et datalogisk fag – præcis som alle også bør lære andre fremmedsprog end engelsk.

Forår i Prag

En nedgravet russisk kampvogn.

I går morges kl. 7.42 tog jeg toget fra Aalborg, skiftede i Aarhus og siden igen i Hamburg. Klokken 21.26 var jeg fremme i Prag. Her deltager jeg i mødet i BEHAPI-projektet, som jeg og ganske mange andre universiteter og virksomheder fra rundt om i Europa er med i. Jeg er selv site leader for Aalborg Universitet; det lyder umiddelbart flot, men vi er lige nu kun to med fra AAU. Der var også en dansk virksomhed med (en IT-virksomhed, der har været omtalt i medierne), men den trak sig pludselig ud i sin tid. Det var en skuffelse.

De fleste af dem, der deltager i mødet, er kolleger fra rundt om i Europa, som jeg samarbejdede med og besøgte som del af BETTY-netværket, der sluttede i 2016. Det er godt at se dem igen. BEHAPI-mødet indgår i den store ETAPS-konference, som finder sted i den kommende uge. Men da er jeg taget hjem; undervisningen venter.

På dagens møde var der særligt fokus på hvordan vi kan formalisere matematiske teorier i bevisassistenter som Coq, og der var nogle spændende præsentationer om dette emne. Selv er jeg desværre ingen vegne kommet. Jeg har tidligere skrevet om hvordan jeg burde kaste mig over dette, men bogen om Coq ligger stadig og truer på et bord på mit kontor. Jeg har haft rigeligt at tænke på i dette forår, men en dag må jeg vel få tid – måske på togturen hjem?

Det er også noget særligt for mig at være på disse kanter. Jeg har kun været i Tjekkiet én gang før, og det var helt tilbage i 2002, hvor jeg besøgte Brno. Dette er med andre ord mit første besøg i den tjekkiske hovedstad nogensinde. På vej fra hotellet til BEHAPI-mødet så jeg en slags skulptur i et grønt område – en russisk kampvogn, halvt gravet ned i en plæne. Det er underligt at tænke på, at det i år er 50 år siden, russiske kampvogne rullede ind i byen og betød slutningen på de demokratiske reformer, som siden blev kendt som foråret i Prag.

Vi kan ikke få armene ned (men hvorfor egentlig ikke?)

I dag var jeg til endnu et møde hvor der blev talt om hvordan Institut for datalogi på Aalborg Universitet skal udbyde uddannelser på AAU-afdelingen i København. “Det kan ikke gå galt”, er den officielle melding fra ledelsen. Og vi kan ansætte flere, lød det.

Optimismen var stor. Der var således også nogle af mine kolleger, der udtrykte ønske om at overtage kurser på første studieår, som det lige nu er andre institutter, der leverer.

Det var unægtelig som om nogle af mine kolleger ikke kunne få armene ned over al denne mulige succes. Men jeg har det anderledes. Jeg er bekymret for at vi kan risikere at sidde med en boble, der pludselig brister. Og jeg ved, jeg ikke er den eneste. Hvad skal vi gøre, hvis vi ikke kan klare os i konkurrencen med KU, DTU, ITU, RUC og CBS, der allerede udbyder universitetsuddannelser i datalogi i hovedstadsområdet og tilmed har nogle veletablerede forskningsmiljøer derovre? Hvad skal vi gøre, hvis vi ikke kan finde nogen på Institut for datalogi til at undervise i de kurser, vi så gerne vil overtage fra andre? Og hvad skal vi gøre, hvis vi om få år pludselig står med et underskud? Andre institutter har haft den slags problemer for ganske nylig; det er kun få måneder siden, der skete fyringer på næsten alle institutter på AAU og jeg var bisidder ved fyringsmøder.

Det, jeg ønsker mig, er – som jeg skrev det i går – en god form for forudsigelighed.

Jeg burde lære det…

Logoet for Coq (http://www.inria.fr)

I dag var der statusseminar på 4. semester af datalogiuddannelsen, hvor projektgrupper fremlagde problemformuleringerne i deres projekter. En projektgruppe, som jeg vejleder, havde i deres materiale nævnt bevisassistenten Coq (som et eksempel på hvordan man ved hjælp af en bevisassistent kan implementere en bevisligt korrekt oversætter til et programmeringssprog). og da måtte jeg modstræbende indrømme, at jeg inden for de seneste år ofte har haft en ambition om at komme til at lære at bruge Coq, så jeg kunne formalisere alle mine beviser én gang for alle. Jeg har tidligere her skrevet om de store resultater inden for formaliseret matematik, som er nået gennem brug af Coq. Og jeg røbede, at jeg havde købt Adam Chlipalas bog om Coq, da jeg var til POPL2019 i Portugal i januar i år. Nu ligger bogen og truer på et bord på mit kontor; jeg havde lovet mig selv at bruge en eftermiddag om ugen på at komme i gang med at lære at bruge bevisassistenten. Men endnu har jeg end ikke fået læst bogens forord. Min ambition om at lære Coq er desværre på vej samme sted hen som min ambition om at blive bedre til at spille guitar. Og jeg ved, at jeg ikke er den eneste, der har det på denne måde. Til POPL2019 mødte jeg flere, der havde det på den måde og havde samme underlige længsel som mig.

En studerende fra en anden gruppe spurgte til statusseminaret, om ikke jeg kunne give ham en henvisning til Chlipalas bog, for det ville han da gerne give sig i kast med. Og det kunne jeg selvfølgelig – bogen kan hentes kvit og frit hos forfatteren som PDF-fil.Det vil være noget helt særligt, hvis den første person på Aalborg, der lærer at bruge Coq, bliver en studerende på 4. semester af bacheloruddannelsen!

Kristian G. Olesen

I dag var sidste dag, hvor Kristian G. Olesen var institutleder på Institut for datalogi, og i den anledning var der reception. Rigtig mange var mødt op på Selma Lagerlöfs Vej 300, for der er rigtig mange rundt om på universitetet, der kender ham.

Også jeg har kendt Kristian længe, faktisk siden 1983, hvor jeg begyndte at læse matematik. Han var dengang den første decentrale studievejleder ved de naturvidenskabelige uddannelser på AUC; jeg blev hans efterfølger i den henseende.

Ti år senere deltog jeg i adjunktpædagogikum sammen med Kristian, og fra dengang husker jeg meget tydeligt hans store talent for formidling. Han valgte dog en anden vej end at undervise – først en årrække som studienævnsforperson, siden som institutleder. Her samarbejdede jeg i mange år med ham i samarbejdsudvalget på Institut for datalogi, hvor jeg repræsenterer medlemmerne af Dansk Magisterforening. Jeg lærte ham at kende som en gemytlig mand, der tænkte sig om og ville det gode – vigtige egenskaber i en akademisk verden, der med årene desværre er blevet mindre og mindre tilgivende. Kristian har altid gjort meget at leve op til nogle gode dyder om åbenhed og om at lytte til mangfoldigheden på instituttet. Det var nogle idealer, der kendetegnede AUC, men er på stærkt retur på det AAU, vi har nu. Jeg har på fornemmelsen, at han ikke altid havde det let med netop dét.

Jeg vil godt hermed sige tak for til Kristian for mange års godt samarbejde; jeg håber og tror at han vil få glæde af sin nye tilværelse som lektor. Fra og med i morgen hedder institutlederen på Institut for datalogi ved Aalborg Universitet Jesper Kjeldskov.

Undervejs

Katedralen i Bayonne, set i et glimt fra TGV-toget.

I dag rejste jeg fra morgen til aften. Dvs. jeg havde en times ventetid i Hendaye, hvor de fleste andre i ventearealet var en gruppe unge døve, der formodentlig var fra Spanien (men sikker er jeg selvsagt ikke). TGV-toget til Paris var ligesom sidst en fornøjelse. En skægget mand et par sæder bag mig var måske en anden deltager fra POPL; han så bekendt ud og var endda iført en af de reklame-t-shirts, som diverse firmaer kastede i grams under konferencen. Jeg fik rettet de tilbageværende eksamenssæt og sendt min oversigt til censor, så om få dage skulle alle de mange studerende kunne få deres eksamensresultat at vide.

Det tog længere tid at komme fra togstationen på Gare de Montparnasse til metrostationen på Gare de Montparnasse, nemlig 20 minutter, end det tog at tilbagelægge strækningen i metrotog til Gare de l’Est bagefter. Vel fremme i toget til Frankfurt oplevede jeg et af de meget sjældne tilfælde af en dobbeltbooking; en anden passager havde også fået en pladsreservation til plads 12 i vogn 26. Så efter en kort forhandling satte jeg mig på sædet bagved – kun for at opleve, at den anden passager med samme plads som mig lidt senere rejste sig og gik. Måske var hun blevet træt af min hoste. Det er jeg også selv.

På vej hjem

I skrivende stund sidder jeg og venter på at komme ombord på nattoget til Hendaye. Sporvidden er anderledes i Spanien og Portugal end i Frankrig og det meste af resten af Europa. Derfor er man nødt til at skifte tog, når man når til grænsen.

Jeg forlod mit uopvarmede værelse kl. 11.00 og prøvede at finde nogle opvarmede lokaliteter med gode siddepladser – først Gulbenkian-museet, så Starbucks og til sidst læsesalen i den store Fnac-butik i centrum. Jeg har en ærgerlig fornemmelse af at der er en eller infektion i anmarch; jeg er i al fald begyndt at hoste lidt. Jeg håber, at det bliver ved dét.

Bortset fra det, der måske er en forkølelse, har det været et godt ophold i Portugal. Jeg fik god respons på mine foredrag og fik megen inspiration fra de foredrag, jeg overværede til POPL2019. Næste gang POPL kommer inden for togrejseafstand (i 2020 er POPL i USA) vil jeg sende en artikel ind selv, også selv om jeg ved at konkurrencen er hård.

Og så var det også en glæde at opleve et januarvejr, der ikke er helt så nådesløst som det danske. Den slags giver også ny energi. Det meste af tiden har vi haft dagtemperaturer på 13-15 grader (om natten er der til gengæld koldt!).

På tirsdag er jeg hjemme igen, hvis alt går som det skal. Der er eksamen lige om hjørnet og derefter semesterstart, men desværre kommer jeg også hjem til universitetets fyringsrunde. Det frygter vi alle; der skal formodentlig ikke fyres nogen på datalogi, men så godt som alle andre institutter bliver ramt. Ledelsen går derimod fri.

Den sidste aften

Så sluttede POPL 2019, og efter det sidste foredrag var der en afsluttende sammenkomst for alle de mere end 600 deltagere. Der er efterhånden sket det, at jeg altid ender med at snakke med de samme kolleger andre steder fra, typisk fordi jeg samarbejder med dem eller tidligere har gjort det. Sådan endte det også denne gang – tre af os stod og snakkede om vores fortid i Storbritannien som PhD-studerende og om nogle af dem, vi kendte fra dengang. Minderne fylder meget mere, end man måske tror. På mange måder er de en fortælling om en tid, hvor alting var mere ukompliceret og hvor verden endnu syntes åben.

Jeg selv og en kollega fra Glasgow tog ind til Lissabon og havde en god stund sammen på en restaurant, hvor jeg ofte er kommet, når jeg har besøgt byen. I toget ind til Lissabon snakkede vi om typesystemer, men på restauranten talte vi efterhånden om alt muligt andet end datalogi, og vi kom undervejs også til at tale om en kvindelig kollega, som vi kender godt og som besøgte konferencen, men kun kort. Det gik op for os, at vi begge var en del bekymrede for hende, for det virkede som om hun aldrig var glad mere, selv om hun har haft og stadig har stor succes med sin forskning. Da hun for nogle år siden mistede sin mand (som også var hendes nære samarbejdspartner) og senere kom ud for en alvorlig ulykke, var det som om der skete noget med hende – hun kastede sig over sit arbejde på fuld kraft og holdt op med at tale om andet end arbejde. Når man er blandt de få kvinder inden for sit fagområde, og man endda kommer fra Østasien, hvor den kulturelle norm siger, at man skal være høfligt og helst ikke tabe ansigt, bliver den slags desværre endnu mere oplagt.

Jeg ville ønske, at jeg havde spurgt hende, hvordan hun havde det, da jeg hilste på hende til konferencen, og også at hun kunne have haft en rolig stund der på restauranten sammen med os.

Datalogi og klimaforandringerne

Benjamin Pierce fortæller om ACMs indsats mod klimaforandringerne.

I dag var der det såkaldte business meeting ved POPL, hvor organisatorer og programansvarlige taler om selve konferencen: hvor mange artikler der blev indsendt hhvs. accepteret, hvilke erfaringer man havde gjort sig, og det er også her, der bliver uddelt priser til de bedste artikler og givet hædrende omtale.

Men sidste punkt på dagsordenen var ganske anderledes. Benjamin Pierce, der er en af de mest prominente personer inden for programmingsteori fra min generation, fortalte om klimaforandringerne og hvordan vi i det videnskabelige samfund er nødt til at forholde os til dem – her selvfølgelig med fokus på hvad ACM (Association for Computing Machinery), der står for POPL-konferenceserien, kan gøre. Benjamin Pierce viste en beregning af sin personlige CO2-belastning, og her fremgik det meget tydeligt, at hans suverænt største kilde til belastning var hans rejseaktivitet, og ikke mindst hans flyrejser.

Derfor er dette et sted, hvor det er væsentligt at sætte ind. ACM er, som Benjamin sagde, ikke det vigtigste sted at gøre en forskel, men det er et vigtigt sted. De teknologiske løsninger, som ville kunne skabe forandring (f.eks. udvinding af CO2 fra luften), kan ikke gennemføres på kort sigt, og de politiske forandringer ser desværre heller ikke ud til at kunne gennemføres på helt kort sigt, sådan som den politiske situation er netop nu. Derfor er det vigtigt, at alle vi andre handler nu, mens vi kan, konkluderede han. Det er især vigtigt, at vi viser vores opbakning til de andre grene af naturvidenskaben, som allerede har gjort et stort og nødvendigt arbejde for at påpege, hvor galt det hele er fat.

Heri er jeg (selvfølgelig) helt enig. Et af de konkrete tiltag, som ACM allerede har gjort, er at lade møderne i programkomiteen for POPL foregå på nettet i stedet for fysiske møder, hvor 30-40 mennesker skulle rejse langt for at holde et møde af få dages varighed.

Bagefter snakkede jeg med Benjamin Pierce og foreslog muligheden af, at man kunne gøre det attraktivt at rejse til POPL (og andre konferencer) på en mindre miljøbelastende facon, f.eks. ved at sætte konferenceafgiften op for dem, der rejste med fly.