En lille indrykningsfejl eller sådan noget

gotofailteaser_apps

For snart mange år siden holdt jeg et fjernundervisningskursus i algoritmeteori; de studerende var folk med nogle års erhvervserfaring, der nu ville have en bachelorgrad i datalogi. Mange faldt fra, andre gik ned på matematikken. Et halvt år efter eksamen fik studienævnet en klage fra tre studerende, der hver var dumpet i deres tre første eksamensforsøg. De anførte at de, da kurset skulle afholdes, fejlagtigt havde fået at vide at eksamen ville være mundtlig. Men de havde været til skriftlig eksamen – hele tre gange. Det var da for galt! Og så var der en indrykningsfejl i en af opgaverne. Det var da for galt! De tre studerende, der hver var dumpet tre gange, mente på denne baggrund at de skulle have kurset meritoverført som bestået. Det fik de ikke medhold i.

Jeg vil ikke påstå at jeg har fået øget respekt for de pågældende studerende, men jeg har fået øget respekt for indrykningsfejl i programmer. Det er ikke tit, man ser populærvidenskabelige artikler, der handler om programanalyse, men Slate skriver om et mindre sikkerhedshul i Apples software. Alene dét er et tegn på hvor væsentligt et problem der dukkede op.

Og det skyldes noget, der ligner en indrykningsfejl.  Der er tale om en fejl, der har eksisteret i både iOS og Mac OS X, så både iPhone-, iPad og Mac-brugere har været berørt. (På dette tidspunkt er det at jeg kryber ned under skrivebordet og indrømmer at jeg er sådan én. Bevares, der er en god sandsynlighed for at en del andre derude også har sådanne kasser.) Fejlen dukker op i den kode, der skal teste om en krypteret forbindelse er sikker:

OSStatus err;

if ((err = ReadyHash(&SSLHashSHA1, &hashCtx)) != 0)
goto fail;

if ((err = SSLHashSHA1.update(&hashCtx,  &clientRandom)) != 0)
goto fail;

if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
goto fail;

if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
goto fail;
goto fail;

if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
goto fail;

fail:

return err;

Denne lille stump kode tester om tre bestemte tal hver især er forskellig fra 0 (dette er et C-lignende sprog, så egentlig er det sandhedsværdier); hvis det er tilfældet for mindst én af dem, hopper vi til fail. Dette er programmering med goto, noget man plejer at advare imod – men programmet er skrevet i et C-lignende sprog, så sådan er det nødt til at være. Men bemærk at der ét sted i koden er to goto fail lige efter hinanden. Det betyder at den sidste goto fail er uafhængig af testene ovenfor og altid vil blive udført, uanset hvad! Det var jo ikke meningen.

Fejlen har allerede fået sit eget websted. Den er af den slags, som studerende på et indledende programmeringskurser vil kunne begå og sidde og slås med alt for længe. Som artiklen fra Slate påpeger, skyldes den dog nok ikke inkompetence, men at den ekstra goto fail har sneget sig ind da to versioner af samme program blev flettet af en programmør. Den slags biks kender jeg da også selv til.

Løsningen på denne slags problemer er så vidt jeg kan se derfor ikke nødvendigvis de metoder til programanalyse, jeg så ofte ender med at være fortaler for, men vel snarere en bedre editor, der gjorde det nemmere at få overblik over programteksten, eller et versionskontrolværktøj, der var strukturorienteret. Denne slags strukturorienterede værktøjer interesserede man sig meget for i datalogi for 20-25 år siden, men så fandt man på noget andet at kaste sig over.

I en strukturorienteret editor ville programmøren kunne se problemet med det samme, for det andet goto fail ville aldrig være rykket ind på samme niveau som det første. Og i et strukturorienteret værktøj til fletning af programversioner ville man simpelthen kunne undgå at der blev to forekomster af goto fail lige efter hinanden.

Hvis man skal sige noget godt om hele denne misère, er det at fejlen blev opdaget fordi den pågældende programkode var open source og derfor frit tilgængelig til granskning. Mere af den slags, tak.

Et velafprøvet valgtema

orm

På vej til arbejde stoppede jeg ved et supermarked for at købe nogle bananer. Foran mig i køen stod et ægtepar med sydasiatisk baggrund (de var formodentlig indere eller srilankanere); de ville købe et par sokker. Men hvad skulle et par sokker koste? Normalt skulle man købe en pakke med 3 par. Svaret var 5 kroner. En ældre dame talte med butiksassistenten, da det asiatiske par var gået. “Man skulle have en anden hudfarve”, sagde hun, “så kunne man få mere”. Hun var forarget over at man kunne købe sokker til 5 kroner. Butiksassistenten sagde at “de måske ikke har så mange penge”, men den ældre dame begyndte at tale om hvordan “udlændingene har flere penge end os andre”. (Hvorfor disse velhavende mennesker så var nødt til købe sokker til 5 kroner, var ikke klart.) Jeg burde have sagt noget her, men jeg havde mest lyst til at komme væk i en fart.

Jeg kan huske folketingsvalget fra 2001 og alle de stramninger af udlændingeloven, der kom i årene der fulgte.  Selve valgkampen i 2001 var meget ubehagelig at være vidne til. I 2011 trådte ønskerne om stramninger af udlændingeloven i baggrunden for en tid.  Sagen fra sidste år om udvisningen af 7-årige Im fra Aabybro viste hvad konsekvenserne af alle de mange stramninger af udlændingeloven havde ført med sig. Og Information har afdækket hvordan statsløse palæstinensere og børn af vietnamesiske flygtninge alle har haft meget svært ved at få dansk statsborgerskab, trods at de er vokset op i Danmark.

Men min fornemmelse er at der fra Danmarks p.t. populæreste partier bliver lagt op til at næste folketingsvalg skal gøres til endnu et “udlændingevalg”.  I 2001 var den baggrund, der igen og igen blev hentydet til under valgkampen, terrorhandlingerne i USA samme år. Nu kan jeg læse at Inger Støjberg er blevet udnævnt til politisk ordfører for Venstre.

Til Politiken siger hun:

Bliver udlændingeområdet et tema, I vil trække frem i forreste række frem mod valget?

»Jamen, det er et tema, og det har altid været et tema. Også fordi det rører sig bredt i befolkningen. Vi har brug for at diskutere de lempelser, som den nuværende regering har lavet på området. Vi har brug for at stramme op på den udlændingepolitik, som regeringen fører«.

Mit bud er at den baggrund, der denne gang skal være til et “udlændingevalg” er arbejdskraftens frie bevægelighed og EU-beslutningen om børnechecken. Dette vil lægge op til endnu et strategisk samarbejde med Dansk Folkeparti, der er skeptisk over for EU af nationalistiske årsager.

Den nuværende regering har selv mest brugt tid på at lave stramninger rettet mod en anden gruppe i samfundet, nemlig arbejdsløse og kontanthjælpsmodtagere. Så min fornemmelse er at et konkurrerende tema, som alle vil kunne blive enige om at udpege, bliver borgere på overførselsindkomster.

Under alle omstændigheder bekymrer det mig at nogle grupper af mennesker, der er klart underrepræsenteret i dansk politik, formodentlig igen vil blive udnævnt til at være hovedproblemer og at det, der egentlig er symptomer, bliver forklaret som årsager, og at de politikere, der går efter regeringsmagten vil konkurrere om at fremstå som konsekvente over for de grupper, man udnævner til at være problemet.

Kustoderne i skærsilden

Skærsilden

I dag fik jeg at vide at et af de centrale kurser på 3. semester af datalogi- og softwareuddannelserne i år havde en beståelsesprocent på omkring 32. Sagt med andre ord: To tredjedele af en årgang bestod ikke – og årgangene er nu på over 100 studerende. Jeg var oprigtigt ked af dette på kursusholderens vegne; jeg kender ham og ved at han er en dedikeret og både omhyggelig og samvittighedsfuld underviser med stor erfaring med netop dette kursus. Og kurset har da også kun fået positiv kritik fra de studerende, mens det blev afholdt. Samtidig er beståelsesprocenten så lav, at man ikke kan forklare den med at der var tale om en meget svag årgang; der er tale om et kursus på andet år, og det store frafald hører første studieår til. Da vi talte om det triste eksamensresultat i dag, havde vi da heller ikke noget godt bud på en forklaring.

Men én ting ved vi: at kurset er et af første “hårde fag” på de datalogiske uddannelser. For år tilbage var det mit kursus Syntaks og semantik, der var det første “hårde fag” som de studerende (de af dem, der ikke allerede havde studeret matematik) mødte, og dengang var det dét kursus, der fik mange knubs med på vejen. Der blev talt meget om mit kursus på en bekymret måde. Nu er det så andre, der skal døje med dette.

Jeg får en fornemmelse af at nogle “hårde fag” og her specielt det første ender med at blive det, Finn Verner Jensen engang kaldte for skærsilden, nemlig en nødvendig passage inden man kan blive lukket ind i himmeriget. Det er ikke sjovt at skulle være kustode i skærsilden. Og hvad der er lige så slemt: de studerende ender af forståelige årsager med at fokusere på at slippe helskindet igennem skærsilden mere end på at tilegne sig det vigtige stof til glæde for deres ophold i himmeriget.

Fra mit arbejde i studienævnet for datalogi ved jeg at der er bestemte “skærsilde”, der er årsager til særligt mange dispensationsansøgninger. Men mange andre, ja, sikkert alle uddannelser har tilsvarende kurser, der fungerer på denne måde. Vi er nødt til at være meget bevidste om hvor der er “skærsilde” i vores uddannelser.

Jørgens sande natur

national-forest-true-self

På Edge.org kan man nu læse om en helt ny videnskabelig disciplin, nemlig eksperimentel filosofi. Umiddelbart havde jeg aldrig troet, at jeg skulle se de to ord sammen, men sådan er det altså.  Joshua Knobe fra Yale University fortæller om ideerne bag. Noget af det, han og kolleger undersøger, er vores opfattelse af menneskets “sande natur”.

Jørgen arbejder for bøsser og lesbiskes rettigheder og holder foredrag om hvor vigtigt det er at alle mennesker har samme rettigheder uanset seksuel orientering. Men Jørgen har i al stilhed udviklet en irrationel negativ holdning over for bøsser og lesbiske, og den vil han ikke fortælle til nogen, for den går imod alt hvad han siger og argumenterer for.

Hvad er Jørgens sande natur? Dette har Joshua Knobe og kolleger undersøgt ved at lave en spørgeskemaundersøgelse. Et af spørgsmålene bad forsøgspersonerne beskrive sig selv som “frisindede” (det, man i USA kalder liberal, men ikke er det samme som ordet normalt betyder herhjemme) eller “konservative” (heller ikke en god oversættelse af det amerikanske begreb conservative). De, der betegnede sig selv som frisindede, var overvejende af den holdning at Jørgens “sande natur” var at være tolerant over for bøsser og lesbiske. Derimod mente de, der betegnede sig selv som konservative, at det var Jørgens “sande natur” der manifesterede sig i hans skjulte modvilje mod homoseksuelle.

Her er så en anden Jørgen. Han er stærkt religiøs og holder foredrag om hvor vigtig den heteroseksuelle kernefamilie er og hvor vigtigt det er at sikre at bøsser og lesbiske ikke skal kunne indgå ægteskab. Men Jørgen er faktisk selv bøsse og er seksuelt tiltrukket af andre mænd. Det vil han ikke fortælle nogen, for det går imod alt hvad han siger og argumenterer for.

Nu er spørgsmålet igen: Hvad er Jørgens sande natur? Her var svarene omvendt: De frisindede mente at Jørgens homoseksuelle orientering var hans sande natur, mens de konservative mente at det var Jørgens synlige og begrundede holdninger mod homoseksualitet, der var hans sande natur.

Denne type eksperimenter synes at påvise at menneskets  “sande natur” ikke er de irrationelle følelser eller de begrundede holdninger, men de holdninger som man opfatter som moralsk forsvarlige.

Min umiddelbare reaktion er at der ikke kan være langt fra eksperimentel filosofi til eksperimentel psykologi – og det er der heller ikke ifølge Joshua Knobe. Om dette er filosofiens genfødsel eller det modsatte, ved jeg ikke.

Video i undervisning

video

I dag var jeg til et møde på mit institut om anvendelser af video i undervisning. Jeg har tidligere her på bloggen skrevet om hvordan jeg har lavet et flipped classroom-forløb i et kursus, hvor video erstatter forelæsninger. For tiden arbejder jeg sammen med en kollega ved Institut for læring og filosofi på Aalborg Universitet på en publikation, der skal dokumentere mine erfaringer. Til april skal vi ved undervisningens dag holde en workshop om emnet; det bliver spændende.

Til mødet i dag så jeg hvordan to af mine kolleger, begge meget erfarne og engagerede undervisere, greb anvendelsen af video an på en helt andet måde end jeg gjorde – og med stor effekt. De tænkte begge på video som et supplement til forelæsninger. Det var spændende at høre om, og der er meget jeg kan lære af deres erfaringer.

Målet er selvfølgelig ikke at video skal erstatte andre former for undervisning, og budskabet er heller ikke at video er “de vises sten”. Video skal være et værktøj som også kan bruges i tilrettelæggelsen af undervisning, og som alle andre værktøjer har det sine begrænsninger og sine muligheder.

Men noget andet var også tydeligt i dag. Det var de sædvanlige entusiaster, der dukkede op til mødet. Dette viser for mig at se den konservatisme, der ofte er hvad undervisning angår, og det var egentlig ærgerligt. Det er meget sandsynligt at velkendte undervisningsformer stadig har deres berettigelse, men hvor ville jeg dog ønske at alle overvejede hvorfor.

 

Rekonstrueret samtale fra plejehjem

sort

– Hvordan fandt du ud af at det er her jeg er?
– Du har boet her i 13 år nu. Det var mig, der indrettede stuen.
– Hvilken ugedag er det?
– Det er søndag.
– Hvilken måned er det?
– Det er februar. Februar 2014.
– 2014. Så er jeg oppe i årene.
– Det er jeg også efterhånden. Ved du hvilket år jeg er født?
– Er det 1968, du er født?
– Nej, det er det ikke.
– Er det 1966?
– Nej, det er det heller ikke.
– Ved du hvilket år du er født, Hans?
– Ja, det gør jeg, mor.

Farvel til Ølkonsortiet

20140222-125724.jpg

I dag er sidste åbningsdag på Ølkonsortiet i Rantzausgade i Aalborg. Denne lille butik har været spydspids i placeringen af Aalborg på ølentusiasternes verdenskort. Men Svend Nymann kunne forståeligt nok ikke blive ved med at jonglere et fuldtidsjob, fadergerning og en fritidsforretning. Så her slutter den historie der begyndte for ni år siden. Ølkonsortiet var en slags pendant til gamle dages pladebutikker, hvor dem bag disken faktisk også selv interesserede sig for musik. Det var en anden måde at tænke på øl på end som bare en drikkevare, der skulle kastes i svælget for at fremkalde beruselse. Godt øl er i høj grad en smagsoplevelse, og drikker man for meget, går det faktisk ud over denne oplevelse.

Hvor skal jeg nu købe dobbelt-IPA, lambic, imperial stout, Rauchbier, Evil Twin og alle de amerikanske mikrobryg? Ølkonsortiets frivillige nævner selv Vinspecialisten i Vingårdsgade, men det er som om der er lidt for meget vin over det.

Jeg kan ikke selv være med i dag, men i torsdags var jeg forbi Ølkonsortiet for sidste gang for at købe bl.a. en Westvleeteren, som jeg vil nyde ved en ganske særlig lejlighed mens jeg sender butikken i Rantzausgade en kærlig tanke.

De arbejdsløses organisation

dao

Jeg har fundet flere oplysninger om De Arbejdsløses Organisation. Fra historieundervisningen i min gymnasietid kan jeg huske nogle få oplysninger om denne bevægelse, hvis formål var at gøre opmærksom på de arbejdsløses eksistens og levevilkår. Så vidt jeg kan se, opstod DAO hele to gange i årene mellem 1. og 2. verdenskrig.

Første gang var i 1920; DAO stiftede et uniformeret og bevæbnet korps, som de kaldte Ordensværnet. Men allerede samme år var DAO væk, kollapset under en blanding af ligegyldighed over for aktionerne og af at bestyrelsen for den københavnske afdeling var blevet arresteret efter at deres planer om at stjæle bygas og strøm til arbejdsløse, der havde fået lukket for gas eller el, var blevet opdaget af Statspolitiet.

I 1930 optræder en ny udgave af De Arbejdsløses Organisation, denne gang i kølvandet af det såkaldte Hjemløsetog. Også denne gang blev der taget voldsomme midler i brug. Aktivister lænkede sig til lygtepæle, og der blev affyret et pistolskud under en radiogudstjeneste. Dagpengeperioden var kort, og man skulle som arbejdsløs derfor hurtigt over på den såkaldte hjælpekasse. Den 2. februar 1931 blev byrådssalen i Nakskov  besat af arbejdsløse, der oplæste en resolution med krav om bedre muligheder for understøttelse for arbejdsløse. Denne episode blev senere til et tv-drama af Poul Trier Pedersen; man kan læse mere hos Nakskov Lokalhistoriske Arkiv.

Jeg går ikke ind for brug af vold eller dannelse af uniformerede eller bevæbnede korps. I dag har vi Landsforeningen Lediges Vilkår, men denne organisation får ikke nær nok synlighed i medierne. De arbejdsløse er usynlige igen.

Den digitale selvfølgelighed og de analoge lommer

gaffel

Det er de færreste af os, der har en gaffel i lommen og tager den frem med jævne mellemrum for at kigge fascineret på den. Alle ved at en gaffel kun er virkelig velegnet til at spise bestemte madvarer med. Men der findes andre artefakter, som vi gerne fisker frem fra lommen i tide og utide.

I et langt debatindlæg i Politiken den 15. februar sætter Rasmus Hagedorn-Olsen, der er specialestuderende i offentlig ledelse, og Martin Fehr Therkildsen, der er bachelor i retorik, fokus på det, de kalder den “digitale selvfølgelighed”.  Deres udgangspunkt er studerendes brug af computere og smartphones ved forelæsninger – den ender med at distrahere dem selv.

Jeg har tidligere skrevet om problemerne om studerendes brug af computere til forelæsninger. Rasmus Hagedorn-Olesen og Martin Fehr Therkildsen giver i deres debatindlæg en beskrivelse af en engagerende forelæsning i København, der blev ekstra engageret fordi forelæseren netop ikke tillod brugeren af computere under forelæsninger (jeg er selv også blandt dem, der har denne politik), og de skriver

Der er vigtigere ting i livet end jagten på det næste digitale fix, nemlig kvaliteten af nærvær, opmærksomhed, eftertænksomhed og fordybelse. De ting opnår vi bedst ved at sige fra over for den digitale selvfølgelighed. Ikke hele tiden, men i det mindste en gang imellem.

De to studerende står bag webstedet Analoge lommer der skal sætte hele den ureflekterede tilgang til brugen af digitale medier under debat. Det er selvfølgelig paradoksalt (som de selv gør opmærksom på) at initiativet tager form af et websted, men formålet er netop også at skabe en reflekteret brug af de digitale muligheder og de analoge muligheder. Det er der i høj grad brug for.

 

Hvor er de arbejdsløse?

ledighed

En del læsere af Politiken har kommenteret et debatindlæg, hvor Mathias Tesfaye (tidligere næstformand for SF, nu socialdemokrat) beskriver nødvendigheden af den politik, regeringen fører. Også på de sociale medier er der en del diskussion af Tesfayes indlæg. Kernen i Tesfayes budskab er at det først og fremmest er nødvendigt at sætte kræfterne ind på at skabe vækst i den danske industri og derigennem skabe arbejdspladser og at det er vigtigt at arbejderne forstår nødvendigheden af dette.

Mathias Tesfayes debatindlæg er tydeligt rettet mod lønmodtagere og ment som en mobilisering af dem. Der skrives meget om arbejdere og om arbejdspladser, men hvor er de arbejdsløse henne i dette billede? Mathias Tesfaye nævner at han “har… været uenig i nedsættelsen af selskabsskatten og forringelsen af dagpengene” (om han stadig er det, fremgår ikke) og i en senere formulering forklarer han hvorfor “Mette Frederiksen (S) [vil] bruge flere ressourcer på et uddannelsesløft af især ufaglærte ledige i stedet for at flytte besparelserne på aktiveringen helt ud af beskæftigelsessystemet.”

I den politiske debat har mange politikere fra regering og opposition i varierende omfang givet udtryk for negative holdninger over for arbejdsløse med udgangspunkt i at de aktivt prøvede at undgå at kommer i arbejde. Bl.a. er der blevet givet udtryk for at befolkningen bør se ned på de arbejdsløse. I dette indlæg er de arbejdsløse til gengæld blevet tæt på at være usynlige og passive.