Norbert Wiener

Jeg sidder for tiden og er ved at lægge sidste hånd på kursusmateriale om etik i datalogi og softwareudvikling i forbindelse med et kursus i videnskabsteori. Det er underligt, at jeg først i dette forår er blevet opmærksom på de tanker, som den amerikanske matematiker og filosof Norbert Wiener (1894-1964) har gjort sig her.

Mange, der har læst matematik, kender Wiener som en vigtig skikkelse i det 20. århundredes anvendte matematik, og en del, der har læst datalogi, ved at Wiener er ophavsperson til ordet kybernetik, der lever videre i populærudtryk som cyberspace. Nogle ved også, at Norbert Wiener var særdeles fremmelig som ung. Han fik sin bachelorgrad i matematik fra Harvard som 14-årig, studerede derefter zoologi og filosofi (på Cornell) og brugte så et år på en PhD i matematik. Den blev han færdig med i en alder af 18. (Norbert Wieners far Leo Wiener er faktisk også en interessant skikkelse; han forlod sit hjemland Polen for at stifte et vegetarisk kollektiv i Britisk Honduras, men havnede i USA – og lærte sig efterhånden at tale tredive sprog og blev professor i filologi, selv om han ikke havde nogen formel uddannelse.)

Norbert Wiener ville gerne have været soldat i 1. verdenskrig, men han blev kasseret. I 2. verdenskrig arbejdede han med udvikling af antiluftskytskanoner. Men efter krigen blev Wiener pacifist. Og det var vel her, hans filosofiske virke begyndte. Han tænkte over problemstillinger som konsekvenserne for mennesket af øget automatisering og over mennesket som informationsbehandler. Det er nu tydeligt for mig, at han på mange måder var langt forud for sin tid, og han fortjener at blive genopdaget. Prøv at se dette citat fra hans bog The Human Use of Human Being fra 1950 og tænk på de kriser, menneskeheden står i lige nu.

Hvad mange af os ikke har indset, er, at de sidste fire hundrede år er en meget speciel periode i verdenshistorien. Det tempo, hvormed ændringer i disse år har fundet sted, har intet modstykke i tidligere historie, ej heller selve ændringernes natur. Dette er til dels resultaterne af øget kommunikation, men også af en øget mestring af naturen, som på en begrænset planet som Jorden på sigt kan vise sig at være et øget slaveri af naturen. For jo mere vi kommer ud af verden, jo mindre efterlader vi, og i det lange løb bliver vi nødt til at betale vores gæld på et tidspunkt, der kan være meget upraktisk for vores egen overlevelse.

Fra The Human Use of Human Beings (1950) (min oversættelse)

Ikke god nok?

Hvorfor er der så få kvinder, der studerer datalogi på universitetet eller er ved andre it-uddannelser? Jeg har tit skrevet om det problem, som den skæve kønsfordeling udgør. Nogle vil stadig hævde, at der ikke er tale om et problem eller at det hele skyldes en eller anden indbygget forskel mellem kønnene. Den slags sovepudesvar giver jeg ikke meget for. Der er til gengæld et ubehageligt svar, som man alt for sjældent taler om. Jeg har hørt om ubehagelige oplevelser fra kvinder i disse fagområder og har altid været noget rystet over beretningerne, men jeg har ikke haft et godt overblik over problemets omfang i Danmark. En undersøgelse fra USA fra 2018 viste at kvinder i it-branchen oplevede diskrimination og chikane i meget stort omfang – omkring tre ud af fire kvinder havde sådanne erfaringer.

Rikke Voergård-Olesen, der er mangfoldighedstræner og samarbejder med forskere og specialister inden for ledelsesudvikling, kulturforandring, mangfoldighed og ligestilling, har nu sammen med Kvinfo udarbejdet en omfattende undersøgelse for PROSA af oplevelser af krænkende handlinger blandt dem, der er studerende på it-uddannelser eller arbejder i it-branchen i Danmark. Undersøgelsen omfatter både kvinder og mænd. Tallene, der i denne uge blev omtalt af PROSA, er ikke rar læsning.

36,7 procent af kvindelige studerende angiver at have været udsat for en eller flere krænkende handlinger. For kvinder i arbejde er det 44,5 procent. For mænds vedkommende er tallene henholdsvis 7,5 procent og 12 procent. 78,9% af de kvinder, der har fået kommentarer om krop, seksualitet eller udseende, angiver at kommentarerne kom fra en kollega. 42,2% angiver, at de kom fra en leder.

Hyppigst får kvinder at vide, at de “ikke er fagligt dygtige” og “hellere må holde sig til sekretæropgaver”. 34 procent af kvinderne har været udsat for den slags.

Det er bestemt ikke nok at sige at “vi skal passe bedre på kvinderne” – for hvem er “vi”? Begyndelsen på en løsning må bestå i, at vi alle tager problemet alvorligt. Mange af reaktionerne på PROSAs undersøgelse var heldigvis positive, men desværre kom der også kommentarer fra mænd med et indhold, som jeg ikke har lyst til at gengive her.

Jeg skal ikke til Wien alligevel

Den 25. februar kunne jeg fortælle her, at jeg er blandt modtagerne af den såkaldte Test of Time Award, som uddeles ved konferencen CONCUR2020 i Wien til september.

Men jeg kommer ikke til Wien. Det er nu blevet meddelt, at CONCUR2020 ikke bliver afholdt på sædvanlig vis på grund af COVID-19-pandemien; præsentationerne skal optages i forvejen og vises på nettet. Der bliver selvfølgelig heller ikke nogen prisoverrækkelse. Jeg kan nemt forstå begrundelsen, men jeg er nu alligevel skuffet, for jeg havde glædet mig meget til dette. Ikke mindst havde jeg glædet mig til at se mine medforfattere igen.

Der er rigtig mange akademiske konferencer nu, der går over til at finde sted på denne måde. POPL (Principles of Programming Languages), der finder sted næste gang til januar 2021, har allerede nu meddelt, at konferencen muligvis får denne form. SAS (Static Analysis Symposium) er blevet annonceret som en konference i Chicago til november, men det er helt uklart for mig og sikkert også for mange andre, om det kommer til at ske.

Det gode, der kan komme ud af alt dette, er erfaringer med nye måder at holde konferencer på og dermed måske også en strategi for en omstilling, der kan gøre det muligt at undgå al den rejseaktivitet med fly, der er så skadelig for miljøet.

Jeg er allerede nu ved at tænke over, om ikke jeg kan finde en anden måde at gense mine medforfattere Søren og Colin på, når vi engang igen kan rejse. En togrejse til Edinburgh ville være noget at se frem til.

Et virksomhedsbesøg på Malta

I dag besøgte jeg sammen med Adrian Francalanza, der er professor på University of Malta og som jeg samarbejder med, softwareudviklingsfirmaet Ixaris for at fortælle om igangværende arbejde om typesystemer for Java, som jeg er involveret i. Trods min igangværende bronkitis (der har fået det lidt bedre, måske også ansporet af det gode Middelhavsvejr med temperaturer på 21°C) fik jeg holdt et nogenlunde sammenhængende kort foredrag om det, jeg og andre lige nu har fundet ud af, ikke mindst hvad der er kommet ud af kandidatprojekter om dette emne.

Diskussionen, der fulgte, var også interessant for mig. Det var interessant at få et indblik i hvordan softwareudviklere på Malta griber deres arbejde an og hvilke problemstillinger, de bøvler med. De fremhævede det omfattende arbejde med tests og med at prøve at tage højde for alle fejlsituationer. Det er faktisk fra ord til andet de samme ting, som softwareudviklere i Danmark (og dermed sikkert også andre steder) slås med.

Ordstyring – og vasketøj

Af og til ved konferencer og workshops er jeg ordstyrer, eller session chair, som det hedder. En af disse lejligheder var i dag på den sidste dag af ICISSP2020. Organisatorerne havde skrevet og spurgt, om jeg mon ville være ordstyrer, og det sagde jeg ja til.

Når man er session chair, skal man introducere dem, der præsenterer, og holde øje med om de overholder tiden. Jeg fik udleveret en lille pakke med de tre artikler, der skulle præsenteres, biografier for de tre deltagere, der skulle fremlægge og to ark papir med henholdsvis teksten 5 minutes og Conclusions. Så er det bare at holde øje med tiden og række skiltene op, henholdsvis når der er 5 minutter tilbage af tiden og når der skal rundes af. Helst skal man også have et spørgsmål parat, hvis der nu ikke kommer spørgsmål fra salen. En lidt mere mærkelig tradition, som findes ved nogle konferencer, er at man som session chair skal bedømme kvaliteten af fremlæggelser.

Det gik som det skulle – det var tre meget forskellige fremlæggelser af meget forskelligt stof. Det var interessant alt sammen, men i det foredrag, der handlede om et angreb på en whitebox encryption-algoritme med maskering, måtte jeg indrømme at jeg på et tidspunkt ikke kunne følge med længere. Jeg har engang været med til at holde et PhD-kursus om kryptering, men jeg indså hurtigt, at dette var noget mere videregående og specialiseret. Alle tre deltagere fik en pæn bedømmelse; de havde gjort sig umage og var bestemt også værd at høre på. Bagefter gav jeg de tre hver deres diplom som bevis på at de havde været til stede og fremlagt. Selv fik jeg faktisk også et diplom, fordi jeg havde været session chair. Hvad jeg så skal bruge det til, ved jeg ikke, men det ser da pænt ud.

Efter frokostpausen gik jeg tilbage til mit værelse, proppede alt mit vasketøj i to indkøbsposer og tog hen på et møntvaskeri godt gemt af vejen i en af Vallettas stejle gader for at tage mig af den meget prosaiske syssel, det er at vaske tøj. Efter vel overstået gerning tog jeg poserne med det rene tøj med tilbage til konferencen og lyttede til det afsluttende indbudte foredrag – det handlede om de to store trylleord i vore dage, nemlig blockchain og Internet of Things. De to trylleord kan man nemlig åbenbart altid sige mere om.

Og det blev min tur

I går aftes var der middag for alle konferencedeltagere i Mdina lidt uden for Valletta. Det eneste, jeg og andre savnede lidt, var muligheden for at gå en lille tur rundt i Mdinas bykerne i stedet for bare at blive placeret ved bordene i restauranten. Jeg endte med at snakke med en deltager fra USA, der oprindelig er fra Pakistan, men også havde tilbragt 12 år i Sydkorea. I den akademiske verden er der mange mennesker, der på denne måde er på gennemrejse.

I dag var det tid for min egen fremlæggelse til ICISSP2020. I kan se mine slides herunder, hvis I er interesseret. Bidraget handler om en analyse af protokollerne i det betalingsnetværk, der hedder Lightning Network og kan anvendes sammen med blockchain-løsninger. Analysen viser, at der en sikkerhedsfejl i en af protokollerne; det er interessant og selvfølgelig også lidt ærgerligt.

Inden jeg selv skulle på, var der et et indbudt foredrag med Stefan Schmid, der er professor på Universität Wien. Men for nogle få år siden var Stefan faktisk ansat samme sted som der, hvor jeg er nu, så foredraget var også et gensyn. Vi hilste da også på hinanden bagefter, og Stefan inviterede mig til at kigge forbi instituttet, hvor han arbejder nu, når jeg besøger Wien.

Mit foredrag gik vel som det skulle; der var ikke nogen spørgsmål bagefter, men jeg er ikke sikker på, om det var et godt eller et dårligt tegn. Ordstyreren kom med en interessant kommentar bagefter, så der var mindst én, der havde forstået mit hovedbudskab.

Bagefter var der endnu af de poster-sessions, man ser så ofte, og som kan give et mere uformelt indblik i ny og igangværende forskning. ICISSP bliver holdt sammen med nogle andre datalogikonferencer om bl.a. sundhedsteknologi, så der var postere om lidt af hvert.

En stor ære

Mens jeg er i Malta, har jeg fået at vide, at jeg er blandt modtagerne af den såkaldte Test of Time Award, som uddeles ved konferencen CONCUR2020 i Wien til august. Prisen gives til artikler fra CONCUR-konferenceserien (en vigtig konference inden for teoretisk datalogi), der har rummet vigtige videnskabelige bidrag og har vist sig at “holde længe” (eller hvordan man bedst oversætter det engelske begreb “stand the test of time”).

Det er en virkelig stor ære for mig. Artiklen, Bisimulation Equivalence is Decidable for all Context-Free Processes, blev publiceret i 1992. Den er resultatet af et samarbejde med Søren Christensen og Colin Stirling, der var vejleder for både Søren og mig, da vi begge var PhD-studerende i Edinburgh.

Komiteens officielle begrundelse, som kan læses på CONCUR2020s hjemmeside, er denne:

The paper “Bisimulation Equivalence is Decidable for all Context-Free Processes”, published by Søren Christensen, Hans Hüttel and Colin Stirling at CONCUR 1992, receives one award for extending and simplifying the seminal result by Baeten, Bergstra and Klop, who proved the decidability of bisimilarity over normed context-free processes. The CONCUR’92 paper has paved the way to further decidability and complexity results for a variety of classes of infinite-state processes. This includes the 2-EXPTIME algorithm for bisimilarity over BPA presented by Burkart, Caucal and Steffen in a paper published at MFCS 1995, and the work by Senizergues in papers at FOCS 1998 and in the SIAM Journal on Computing in 2005, presenting decidability results for all “equational graphs” with finite out-degree.

Artiklens store resultat er et bevis for et åbent problem om afgørbarhed, jeg jagtede et svar på i mit PhD-arbejde, men ikke nåede at finde, inden min afhandling skulle afleveres. Men året efter, og ikke mindst takket være en vigtig indsigt fra Søren i form af et lemma om endelig karakterisation af vidner for ækvivalens, lykkedes det. Resultatene i vores artikel kom med i Sørens gode og velskrevne afhandling.

Han og jeg delte i et års tid lejlighed, men efter tiden i Edinburgh mistede vi desværre kontakten. Søren fik arbejde i en virksomhed, og jeg blev som bekendt universitetslærer. Nu har vi fået kontakt igen som resultat af denne hædersbevisning.

Da vi skrev artiklen, var Søren og jeg 28 år gamle. Nu er vi 56; der er gået et halvt liv. Lige før jul fik jeg at vide af Julian Bradfield, der også var en af Colins gamle PhD-studerende og siden blev i Edinburgh, at Colin nu går på pension. Forhåbentlig ser jeg dem begge igen i Wien ved prisoverrækkelsen – det ville glæde mig rigtig meget.

Aalborg–Valletta, dag 1: Jeg ender i Basel

Sidste år fik jeg antaget en artikel til konferencen ICISSP2020, som er en datalogikonference om metoder til analyse af sikkerhed af software. ICISSP2020 finder sted i Valletta på Malta i den kommende uge.

Artiklen var baseret på et speciale af Vilim Staroveski fra Zagreb; ham havde jeg vejledt i det meget travle forår 2019. Vilim var sidenhen vendt hjem til Kroatien for at lede efter arbejde, så nu var det mig, der skulle af sted. Heldigvis havde jeg midler til at deltage i konferencen, for som del af et EU-projekt havde jeg lovet at besøge en virksomhed på Malta i løbet af 2020. Løsningen blev derfor at kombinere de to gøremål (og rejsemål).

I morges begav jeg mig ud på hvad der formodentlig er min hidtil længste togrejse i dette årtusinde, nemlig rejsen fra Aalborg til Valletta. Dvs. Malta er jo en ø, men man kan komme med tog helt til Pozzallo i det allersydligste Italien (på sydspidsen af Sicilien) og sejle derfra til Valletta. Min plan var at rejse via Hamburg og Basel til Lugano (i den italienske del af Schweiz), overnatte dér og næste morgen rejse ned gennem Italien til Siracusa, overnatte dér og tage det tidlige morgentog til Pozzallo.

Det startede så pænt; DSB kørte til tiden og jeg kom et helt minut for tidligt til Hamburg. Undervejs kunne jeg ikke undgå at bemærke de mange oversvømmede marker i Jylland og i Nordtyskland.

Men derefter kom problemet. ICE-toget fra Hamburg var 10 minutter forsinket ved afgang på grund af signalproblemer ved Hamburg Altona, og på grund af endnu signalfejl uden for Lüneburg voksede forsinkelsen til 35 minutter. Jeg måtte indse, at jeg ikke kunne nå min forbindelse videre fra Basel til Lugano – der var nemlig kun 10 minutter til togskiftet på Basel SBB. Og fordi dette kritiske skift glippede, kollapsede hele resten af min rejseplan.

Ironisk nok havde jeg stor nytte af DBs køreplansportal http://bahn.de, for her kunne jeg nu planlægge en ny udgave af min rejse ned gennem Italien. Mit første bud var en tur via Milano og Napoli med nattog til Siracusa og derfra videre til Pozzallo, hvor jeg så skulle tage aftenfærgen til Valletta. Men derefter gik det op for mig, at jeg i stedet kunne tage det tidlige morgentog fra Basel til Milano og så bruge hele søndagen på at rejse ned gennem Italien alligevel og ende i Catania, der ligger lidt nord for Siracusa. Herfra går der nemlig en opsamlingsbus beregnet på dem, der skal med morgen færgen til Malta. På den måde ville jeg, hvis alt ellers kunne gå vel, nå til Valletta alligevel mandag morgen.

Nu var der kun tilbage at besøge http://interrail.eu og lave nye pladsreservationer fra Basel SBB til og med Villa San Giovanni, hvorfra jeg så skal videre uden reservation til Catania. Og så skulle jeg også lige have fundet billige hotelværelser i Basel og Catania. Begge dele lykkedes. I skrivende stund sidder jeg stadig i det forsinkede tog og har enormt god tid. Jeg skal jo bare til Basel i aften.

Det blev ikke den rejsedag, jeg havde forudset, men min erfaring som togrejsende i Europa begynder nu at komme mig til gavn.

Min første datalogibog

I dag kom jeg til at snakke med nogen om lærebøger om algoritmer og datastrukturer, der er et af de helt grundlæggende fag på datalogiuddannelser. En udbredt lærebog om dette emne er i vore dage blevet Introduction to Algorithms af Cormen, Leiserson, Rivest og Stein. Det er en grundig og præcis bog, der også tager videregående emner op, men den er også på nogle måder ved at blive en encyklopædi. Den udgave, jeg selv ejer, er en mursten på 1180 sider.

Selv blev jeg introduceret til algoritmer og datastrukturer af en bog på sølle 427 sider, Data Structures and Algorithms af Aho, Hopcroft og Ullman. Jeg kom dengang lige fra matematikstudiet og syntes, at denne bog var en “underlig matematikbog”. I dag har jeg en noget mere positiv opfattelse af den – og den er rar at slå op i. Men om denne klassiker ville være en god introduktion i dag, ved jeg ikke.

Engang var mange lærebøger kortfattede; jeg mindes Principles of Mathematical Analysis af Walter Rudin, den første kortfattede bog, jeg stødte på. Der var et hav af mellem-ræsonnementer, som læseren selv skulle opdage, og det kunne sagtens tage en time eller mere at læse en side. Som lærebog betragtet var Rudins bog noget af en mundfuld. Til gengæld var mange af mine medstuderende glade for A First Course in Abstract Algebra af John B. Fraleigh. Den var (selvfølgelig) helt stringent, men noget mere “snakkende” end Principles of Mathematical Analysis. I dag er jeg lidt mere forbeholden over for den og noget mere positiv over for Rudins bog.

En datalogibog, der virkelig delte vandene i min studietid, var Introduction to Automata Theory, Languages and Computation fra 1979 af Hopcroft og Ullman. Bogen var forholdsvis kortfattet, men nåede meget langt omkring inden for automatteori, beregnelighed og kompleksitetsteori. En senere udgave havde Motwani som medforfatter og var meget mere “snakkende” og havde skåret en del stof væk. De fleste foretrækker at henvise til 1979-udgaven, og sådan har jeg det også.

Alt dette tyder på, at man i virkeligheden har brug for to forskellige fremstillinger af det grundlæggende stof – en indledende, der er grundigt forklarende og er målrettet begyndere, og en fremstilling beregnet på den erfarne fagperson, der har brug for et godt opslagsværk. Men der er samtidig ikke nogen grund til at den indledende fremstilling skal være så lang, som indledende fremstillinger ofte har en tendens til at være.

Softwarefejl koster menneskeliv

Detalje fra Boing 737 MAX-fly.

Fly af typen Boeing 737 MAX har siden marts 2019 haft flyveforbud efter to styrt, der har kostet i alt 346 mennesker livet. Problemerne skyldes fejl i et system, der skal forhindre, at flyet staller. Boeing har siden opdaget endnu et problem med softwaren i den ulykkesramte flytype 737 MAX. Det nye problem vedrører angiveligt den software, der skal sikre, at visse overvågningsskærme fungerer korrekt.

Jeg har det meget blandet med at læse den slags nyheder. På den ene side er det meget sørgelige nyheder – mange mennesker er døde under tragiske omstændigheder.  På den anden side er dette en problemstilling inden for et område, der har interesseret mig i mange år, netop på grund af min faglighed inden for datalogi. De ulykkelige hændelser med Boeing-flyene viser endnu engang hvor voldsomme konsekvenserne kan være af fejl i software, og det bør føre til forøget opmærksomhed på de alvorlige konsekvenser, som manglende korrekthed af software vil have i en verden, hvor flere og flere processer er styret af computere – og nødvendigvis må være det, for moderne transportmidler er komplicerede apparater. Uden at vi ønskede det har vi fået endnu et aktuelt argument for at beskæftige os med nogle bestemte videnskabelige problemstillinger.