Sig det med 1000 ord

Til den berømte internationale matematikkongres i Paris i 1900 sagde David Hilbert at

En gammel fransk matematiker sagde: “En matematisk teori anses ikke for fuldstændig før man har gjort den klar, at man kan forklare den til den første, den bedste mand som man møder på gaden”

– citatet er her min oversættelse fra engelsk, efter en artikel i Historia Mathematica af June Barrow-Green og Reinhard Siegmund-Schultze, der prøver at identificere hvem den gamle franske matematiker er. Jeg troede i mange år, at det var Poincaré, men der er faktisk tale om Gergonne, viser det sig.

Men hvor nemt er det egentlig at forklare sine ideer til den første, den bedste, man møder? Det kan såmænd også være svært nok, selv om der er tale om nogen, man kender i forvejen. Da jeg studerede matematik for mange år siden, kunne jeg aldrig forklare familien, hvad det var, jeg havde givet mig i kast med. Senere, da jeg studerede datalogi, blev det faktisk ikke nemmere.

Hvis sproget til forklaringen er engelsk, er der nu en helt konkret test i form en teksteditor, der undersøger om man kun bruger de 1000 mest almindelige ord på engelsk. Editoren skyldes Theo Sanderson, der er biolog og forsker i parasitologi.

Jeg har selv forsøgt at forklare min forskning inden for programmeringssprogsteori på den måde, men det er godt nok svært, for al terminologi er bandlyst. Ordet “program ” er ikke blandt de 1000 mest almindelige ord på engelsk! Det er “type” så til gengæld. Billedet ovenfor viser mit forsøg; det forbudte ord “program” seks gange. Nu spekulerer jeg så på, hvordan jeg kan undgå dét – noget godt svar har jeg desværre ikke fundet endnu. En tilladt udvej er at sætte ordet i anførselstegn, men det er egenlig lidt snyd.

Kvinder er bare anderledes (??)

Det er åbenbart stadig muligt at skrive tåbelige ting om den ekstremt skæve kønsfordeling på datalogiuddannelserne. Stuart Reges, der er lektor i datalogi ved University of Washington i USA, har i al fald skrevet en artikel om hvorfor der er så få kvinder, der studerer datalogi. Det er en af disse trælse artikler, hvor forklaringen på et problem er en henvisning til en indbygget forskel. Reges’ forklaring på at der er så få kvinder, der studerer datalogi, er at kvinder bare ikke har lyst til det, fordi kvinder har nogle andre prioriteter.  Desuden siger han, at kvinder faktisk ikke oplever problemer på datalogiuddannelser eller bagefter, når de er i arbejde, for han har ikke hørt nogen tale om utilfredshed fra kvinder. Stuart Reges føler tydeligvis selv, at han kommer frem med en vigtig, men ilde hørt sandhed.

Den slags forklaringer, der forklarer uligheder med forskelle, der er indbygget i mennesker, er vældig bekvemme. De kan bruges til at sige dels, at uligheden i virkeligheden skyldes den part, for hvem uligheden er en ulempe, dels at der ikke er nogen grund til at gøre noget, for man kan ikke gøre noget. Og man kan endda benægte, at uligheden skulle være til ulempe for nogen, for alle er jo godt tilfredse.

Men når jeg læser en bemærkning fra Reges som

They claim that men have created a culture that matches their values and interests. How is that possible if men and women don’t differ in fundamental ways?

som indikator på der findes en indbygget forskel, bliver jeg underligt til mode, for forvekslingen af årsag og virkning og manglen på forståelse af interessekonflikter er begge uhyggeligt åbenlyse. En gruppe, der i forvejen er begunstiget og i en magtposition, skaber nogle forhold, der kan opretholde begunstigelsen og magtpositionen.

Derfor var det godt at læse en kort, afdæmpet replik fra Hank Levy, der er institutleder ved det institut på University of Washington, hvor Stuart Reges er ansat.

Den første vigtige bemærkning fra Levy er at

Reges quotes Unlocking the Clubhouse, using the statement that “Concern for people, family, ‘balance in life,’ novels and a good nights’ sleep should not come at the cost of success in computer science” as an indication that women and men differ in their values and interests, and as a reason why women prefer fields other than computing. Yet these are the very same issues that exist in medical schools (residency is 3 years of isolation and sleep deprivation!), but somehow over the last 40 years women have chosen to become doctors in large numbers. How could that be? Obviously something changed over that long period – most likely both the medical system (which was male dominated and treated women poorly in 1975) and women’s interest in the profession. The point is, we can clearly work to change some of the factors listed in the previous paragraph, and young people (of all genders) can and do make different choices over time in the fields they wish to pursue: those choices are not predetermined at birth based on the colors of our baby blankets.

Det er med andre ord også de underlige arbejdsforhold og det mandsdominerede klima i arbejdslivet for softwareudviklere, der ender med at have betydning. Dette burde være åbenlyst, men det er det ikke for Reges. Den anden vigtige bemærkning fra Levy er denne:

…computer science has become extremely broad and highly applied to societal grand challenges; e.g., in our school we have students who have developed smartphone systems to detect jaundice in infants, mobile data systems used to improve health care in Africa, machine learning techniques for choosing the best therapies for leukemia, and platforms for analyzing cultural differences across different countries. Applications such as these make computer science more interesting and accessible to a diverse population of students because today’s students want to have impact. We are not just educating software engineers for the software industry – we are educating computer scientists for the world. Clearly, different subfields in in our technology program have different appeal. The bottom line is that neither women’s interests nor the field of computing are static and unchanging, and any analysis that misses that fact is flawed.

Selv tror jeg, at datalogi vil kunne tiltrække flere mennesker og andre mennesker, hvis faget ligesom andre hårde fag bedre bliver i stand til at appellere til de mange mennesker, der også gerne vil gøre en forskel i verden. Her har vi ikke gjort det godt, men på et universitet som Aalborg Universitet, hvor problemorienteret projektarbejde er en central komponent i  uddannelserne, burde vi have forudsætningerne for at kunne gøre netop dét.

Der kom en mail fra Japan

Jeg har en tendens til lynhurtigt at bladre forbi de mailbeskeder, jeg får, hvor afsenderen er angivet med kinesiske skrifttegn – de er nemlig altid spam. I dag opdagede jeg så faktisk, at det bestemt ikke altid er sådan. Den mail med kinesiske skrifttegn i headeren, som jeg var lige ved at bladre forbi, var faktisk skrevet på et både pænt og korrekt og meget høfligt engelsk og kom ikke fra Kina, men fra Japan. Her sidder der en gruppe mennesker på universitetet i Nagoya og holder en studiekreds. Og denne studiekreds er såmænd baseret på min bog Transitions and Trees – An Introduction to Structural Operational Semantics, der udkom på Cambridge University Press tilbage i 2010. Afsenderen var en professor Yuen, som faktisk havde mødt mig i Tyskland i februar 2017 (det havde jeg desværre glemt). Han havde nogle spørgsmål på studiekredsens vegne, fordi der var nogle steder i bogen, som undrede dem. Og på denne måde opdagede jeg, at der nogle steder i min bog er nogle fejl – bl.a. er der i et kapitel en fejl i et induktionsbevis og i et andet kapitel en fejl i en definition. Til alt held er fejlene nemme at rette, og jeg lovede at få dem med i bogens officielle retteark. En dag vil jeg revidere bogen, men den slags tager tid.

Det er selvfølgelig ærgerligt at få at vide, at der er fejl i en bog, jeg har fået udgivet. Men samtidig er det en særlig følelse at opdage, at der sidder nogen i et land meget langt væk, der er gået sammen om at ville læse og diskutere en bog, jeg har skrevet.

Med blyant og papir

I dagens udgave af dagbladet Information er der en leder, der fortjener stor ros. Jeg havde aldrig turdet håbe på, at jeg i en dansk avis skulle læse linjer som nedenstående.

Inden for datalogien bruger man i høj grad stadig papir og blyant, både på de datalogiske uddannelser og ude i virksomhederne.

Det er klart, at computere er en del af det datalogiske fag på universiteterne og bruges til at lave konkrete programmer og implementere algoritmer. Det er klart, at computere ude i teknologivirksomhederne bruges til at bygge hjemmesider og hoste databaser. Men i de videnstunge dele af faget, i de svære fag på de datalogiske uddannelser og i forsknings- og udviklingsafdelingerne ude i virksomhederne, er papir og blyant et ligeså vigtigt redskab som computeren. Hvis man for eksempel beskæftiger sig med design af algoritmer, så skitserer man ofte algoritmen på papir for at forstå dens funktion og udregne dens hastighed, og først når det er gjort, kan man implementere den på en computer.

Det er rigtig glædeligt, at der omsider er en dansk journalist, der både forstår og forklarer forskellen mellem naturvidenskaben datalogi og området informationsteknologi – og gør det i en analyse af den omsiggribende begejstring for at indføre iPads, bærbare computere osv. i folkeskole.

Derudover er det glædeligt, at lederen fokuserer på det, der efterhånden burde være klart: For at vi mennesker skal kunne bruge teknologi rigtigt og forstå teknologien rigtigt, skal vi først og fremmest kunne agere som ansvarlige mennesker. Derfor er det almen dannelse, der må være udgangspunktet.

Det interessante er, at de, der skabte det, vi i dag kalder for informationsteknologi og dens videnskabelige grundlag, for det meste var mennesker med bred almen dannelse. Jeg var så heldig at kende Robin Milner i min tid som PhD-studerende i Edinburgh, og han var (ligesom de andre legendariske professorer på LFCS dengang) et menneske, der havde en levende interesse også i filosofi, litteratur og klassisk musik. Hvis man læser Andrew Hodges’ biografi om Alan Turing, opdager man hurtigt, at også Turing havde en bred almen dannelse.

Bjarne Stroustrup, manden bag programmeringssproget C++, sagde i et interview sidste år at

Hver time, der er brugt på at lære et barn Word eller Google, kunne være brugt på noget andet: historie, litteratur, matematik, biologi, fransk, gymnastik eller en tur i skoven. Kun hvis den tid, der bruges på it, hjælper med den bredere uddannelse, er den godt brugt. It er et værktøj, ikke et mål i sig selv.

… man kan i nogle sammenhænge godt bruge computeren som et redskab til at lære de traditionelle fagområder, for eksempel kan man bruge en computer i matematik til at regne beviser efter, men det bliver ofte en distraktion.

De mest ukritisk teknologibegejstrede mennesker i vore dage er ofte nogen, der har ikke nogen dybere, fagligt baseret forståelse af teknologiens væsentlige begrænsninger.  Den slags forståelse finder man ofte blandt forskere inden for datalogi. Og netop derfor er det så bizart, at der faktisk er personer på mit institut, der vil afskaffe undervisning i grundfaget beregnelighed til fordel for undervisning i værktøjsfag.

Skriftlig eksamen igen

Et vue ud over Agri Nord-hallen med de 170 eksamensborde.

I dag var det igen tid til skriftlig eksamen, og denne gang var det det største hold, jeg nogensinde har undervist. Knap 170 studerende skulle til eksamen i Syntaks og semantik i Agri Nord-sportshallen ude ved Aalborg City Syd. Universitetets egne bygninger er efterhånden blevet for små. Studiesekretærerne Lene og Lone var der sammen med mig, og vi skulle være klar, hvis der opstod en uventet situation. Der skete dog kun lidt, og meget af tiden kunne vi sidde og beskæftige os med andre gøremål. Af og til kastede vi et blik ud på salen; den tonede rude giver det hele et underligt tusmørkeskær.

Kl. 13.00 var det hele slut, og jeg kunne cykle ud til mit kontor på Selma Lagerløfs Vej. Ikke så længe efter at jeg dukkede op, kom Lene og Lone med de knap 170 eksamenssæt, og jeg gik straks i gang med at rette. Det bliver en travl weekend, men jeg vil have det hele overstået i stedet for at skubbe alt dette foran mig. Skriftlig eksamen tager tid, men jeg turde slet ikke tænke på hvordan en mundtlig eksamen for 170 studerende ville blive. Jeg kan især holde pauser, når jeg selv vil og fornemmer at koncentrationen er ved at glippe. Ulempen ved skriftlig eksamen er, at det bliver sværere at give hver enkelte studerende råd med på vejen.

Skal man lære om beregnelighed?

Standseproblemet på vers. Et digt af Geoffrey K. Pullum fra University of Edinburgh.

Lige for tiden er der diskussioner om indholdet af uddannelserne i datalogi og software på mit institut. Der er nogle, der nu taler for, at man skal fjerne det kursus, der hedder Beregnelighed og kompleksitet fra pensum. Det er det kursus, der handler om uafgørbare og svære beregningsproblemer og tager udgangspunkt i Alan Turings resultater herom.

Datalogifaget fornyr sig hele tiden, siger de, der taler for at afskaffe Beregnelighed og kompleksitet, og det må være på sin plads at tage fat på nogle andre emner nu og måske have nogle flere værktøjsfag. Skulle man absolut nævne at der findes problemer, der ikke kan løses med en algoritme, kunne man jo gøre det kort i den første uge på første semester – så er dét overstået. Det er måske et fundamentalt resultat, men fundamental er jo det samme som elementær. I øvrigt kan man klare sig fint uden, lyder det – de fleste kandidater bliver trods alt først og fremmest programmører, og den slags skal aldrig prøve at løse uafgørbare problemer.

Jeg er selvfølgelig alt andet end neutral her; Beregnelighed og kompleksitet var det første kursus, jeg underviste i da jeg blev universitetslærer i sin tid, og der er ikke nogen på mit institut, der har holdt det så mange gange som mig. Til efteråret skal jeg holde kurset igen, og igen til 2019. Måske bliver det sidste gang nogensinde, studerende møder disse emner, men hvis det sker, vil jeg være endog meget trist til mode. I så fald bliver AAU (så vidt jeg kan se) hjemsted for en af de få datalogiuddannelser derude, hvor studerende ikke skal lære noget om algoritmers begrænsninger.

Mit dybeste argument for at Beregnelighed og kompleksitet ikke skal forsvinde fra vores datalogi- og softwareuddannelser er, at det er vigtigt, at studerende lærer om hvad man ikke kan og aldrig vil kunne. Datalogi er i højere grad end andre naturvidenskaber præget af den teknologiske udvikling, men også datalogi har en kerne af begreber, der ikke forandrer sig. De programmeringssprog og de maskinarkitekturer, vi har i vore dage, er ikke blevet bedre i stand til at løse standseproblemet eller tvetydighedsproblemet for kontekstfrie grammatikker end de sprog og arkitekturer, der fandtes for 20 år siden. Det er ikke alt, man kan programmere sig uden om, og dén faglige realisme og ydmyghed skal en person med en universitetsuddannelse i datalogi være i besiddelse af. Fundamentale resultater i videnskab er ikke nødvendigvis elementære; faktisk er det typisk tilfældet i matematik og naturvidenskab, at de vigtigste resultater er alt andet end nemme at forstå og ofte endda strider mod intuitionen.

På vej over tærsklen

I  disse uger kommer der ganske mange studerende fra 4. semester på datalogi- og software-uddannelserne forbi mit kontor for at stille spørgsmål i forbindelse med deres projekt, der snart er slut. I projektet er et vigtigt læringsmål, at de studerende skal lave en definition af et programmeringssprog. Og her får de brug for indhold fra kurset Syntaks og semantik, som jeg har holdt.

Det er interessant at snakke med dem og få et indblik i deres projekter, og jeg opdager, at så godt som alle har de samme udfordringer, de samme “traditionsrige fejl”. For to år siden skrev jeg om disse “traditionsrige fejl”, men jeg har nu et endnu klarere billede af præcis hvilke misforståelser, der finder sted i så godt som alle projekter på dette forløb. Jeg er nu nået til at kunne forudsige, hvad problemerne er, få minutter inde i en samtale med en projektgruppe. Det er specielt at være nået dertil, at jeg kan se ned over en kompliceret definition og ofte umiddelbart se, hvor der er problemer. Bl.a. har jeg i alle projekter set programmeringssprog, hvor man kan erklære variabler midt i det hele. De studerende tænker aldrig over, at dette er en rigtig dårlig idé af flere grunde – men når jeg fortæller dem det, indser de det så godt som altid!

At jeg så hurtigt kan sætte fingrene på nogle usvigelige ømme punkter skyldes selvfølgelig ikke, at de studerende er inkompetente, men at der findes nogle helt bestemte såkaldte “tærskelbegreber”, som er karakteristiske for et fagområde og som altid volder besvær.

Det, jeg nu overvejer, men som jeg ikke ved om er en god idé, er at prøve at lave en udførlig liste over de traditionsrige fejl med en forklaring af hvordan man “kommer over tærsklen” for hver enkelt af dem. Grunden til at jeg er usikker på om dette egentlig er en god idé, er at jeg faktisk også opdager, at de studerende lærer noget vigtigt af at gå i stå eller have et problem – når ellers de opdager, at de har et problem. Det sker nemlig ikke altid.

Datalogiens videnskabsteori?

Der er et lovkrav om at alle danske universitetsuddannelser skal have et kursus i fagets videnskabsteori. Da loven blev indført, var der en del af mine kolleger, der undrede sig – jamen, er alle de teoretiske aspekter af et fag da ikke videnskabsteori?

Og svaret er jo nej. Videnskabsteori er et fagområde, der beskæftiger med med hvad videnskab er og ikke er, med videnskabens erkendelsesformer og hvordan forskellige videnskabsgrene forholder sig til hinanden.

Der har været forskellige kurser på datalogiuddannelserne i Aalborg, der på en eller anden måde har handlet om videnskabsteori. I mange år var der et kursus, der hed “Datalogiens filosofi”, men det handlede udelukkende om systemudvikling. Det nuværende kursus om videnskabsteori er gået i helt andre retninger og tager fat på så forskellige emner som læsning og skrivning af artikler, forskningsetik, evaluering af eksperimenter og matematikkens grundlagskrise (det sidste ville nok appellere mere til matematikstuderende).

Det er formodentlig godt og velovervejet, men det går op for mig, at der måske ikke er nogen enighed om hvad datalogiens videnskabsteori egentlig dækker over. Jeg beskæftiger mig ikke med maskinintelligens, men det undrer mig, at man kan holde et kursus helt uden at komme ind på alle diskussionerne om hvorvidt maskiner vil kunne tænke. Det er egentlig trist, at datalogiens videnskabsteori ikke har en bedre plads end i et kursus til allersidst på bacheloruddannelsen.

Selv mødte jeg videnskabsteori lidt tidligere i min universitetsuddannelse. Jeg er så gammel, at jeg kom ind til datalogi som del af en tofagsuddannelse sammen med matematik, og i matematikuddannelsen var der dengang et kursus om matematikkens didaktik og videnskabsteori. Ad dén vej stiftede jeg bekendtskab med Mill, Hume, Russell, Whitehead, Popper, Lakatos og alle de andre – og med alle diskussionerne om positivisme, empirisme, Wienerkredsen osv.  Ikke alle syntes, det var specielt fascinerende, men det gjorde bl.a. jeg.  Og på datalogiuddannelsen var der også mulighed for at tage fat på videnskabsteori; jeg husker et projekt om netop maskinintelligensens begrænsninger.

Jeg har opdaget, at der faktisk er en del resurser derude, der tager fat på datalogiens videnskabsteori og måske kunne inspirere os til at tænke lidt videre. Stanford Encyclopedia of Philosophy, hvor jeg ofte har brugt en ledig stund, har en spændende artikel om datalogiens videnskabsteori.  William Rapaport fra University at Buffalo/The State University of New York har skrevet en bog på mere end 500 sider om datalogiens videnskabsteori, fyldt med diskussionsøvelser og det hele. Og Luciano Floridi har skrevet en bog, Philosophy and Computing, der tager et helt andet fokus and Rapaports bog, men stadig er en bog om datalogiens videnskabsteori.

På Aarhus Universitet er der en studiekreds om datalogiens videnskabsteori. Måske burde vi have noget tilsvarende i Aalborg.

Datalogi som støttefag?

På sin altid interessante blog om undervisning og datalogi skriver den amerikanske universitetslærer Mark Guzdial om datalogiundervisning i USAs grundskoler.

Et forsøg i USA med at undervise børn i 3. til 5. klasse i simpel datalogi (som indeholder simpel programmering som beskrevet i forløbet CS Fundamentals hos Code.org) har den fristende konklusion, at der måske kan være læringsmæssige fordele, der smitter af på præstationerne i andre skolefag. I al fald klarede de elever sig bedre i en senere eksamen, der fulgte et særligt tværfagligt forløb, der integrerede datalogikundskaber med naturvidenskab og samfundsfag og benyttede problembaseret læring. Den eksamen, som eleverne tog, var delstatens eksamen (der vel svarer til de nationale tests) inden for matematik, naturvidenskab og engelsk. Så måske blev eleverne bedre til andre fag af at blive undervist i datalogi.

Men ved vi strengt taget slet ikke. Der er meget, vi ikke kan se af beskrivelsen af forløbet, hvilket Mark Guzdial da også påpeger. Var det virkelig datalogi-indholdet, der gjorde forskellen og giver noget nyt til skolens almene dannelse? Eller var det monstro problembaseret læring, der var udslagsgivende? Eller skyldtes forskellen simpelthen, at lærerne blev ekstra motiverede og gjorde en bedre indsats?

Uanset hvad er det vigtigt at finde ud af.

En fælles basis?

I dag kan jeg læse om endnu et initiativ, der skal gøre noget ved den sørgelige tendens det er, at der næsten ingen kvinder er, der studerer datalogi. Denne gang er det et initiativ ved University of Waterloo i Canada.

Her er der både en massiv indsats ved ungdomsuddannelserne og en anderledes tilgang på universitetets uddannelser, der bliver satset på. Blandt andet skal alle matematikstuderende have et kursus i datalogi på første år.

Netop dét er noget, der er forsvundet på Aalborg Universitet. For mange år siden, da der fandtes en teknisk-naturvidenskabelig basisuddannelse, skulle alle studerende have et kursus i datalogi. Det var ikke et fantastisk kursus (jeg var selv med til at holde det flere gange), men i det mindste var der da noget. Nu er der rigtig mange studerende, der ikke møder datalogi overhovedet – herunder specielt dem, der vil studere matematik. Det er en voldsom ændring fra dengang, hvor en stor procentdel af kandidaterne i matematik fra AAU havde et sidefag/bifag i datalogi – og omvendt.

Der var mange ulemper ved basisuddannelsen; fra min egen studietid husker jeg min ærgrelse over ikke at kunne komme til at beskæftige mig med matematik før på 3. semester. Men der var faktisk også nogle fordele forbundet med at udskyde det endelige studievalg bare lidt. (Og så har vi ikke talt om hvor nemt dette gjorde det at fortryde sit valg uden at det havde voldsomme konsekvenser for den studerendes SU mv.)

På én måde har vi faktisk en rest af basisuddannelsen endnu på datalogiuddannelserne, for de første fire semestre af datalogi- og softwareuddannelserne er helt identiske. Og det sker da også, at studerende skifter fra den ene uddannelse til den anden.