Knut forsker på typesystemer - for ja, det kan man

- Utrolig fascinert over interaktiviteten som er mulig mellom utvikler og verktøy, forteller Ukas Koder og doktogradsstipendiat Knut Anders Stokke.

Knut Anders Stokke forsker på "hvordan utviklere kan guides av programmeringsverktøy til å skrive mer korrekt kode" ved Universitetet i Bergen, intet mindre. 📸: Privat
Knut Anders Stokke forsker på "hvordan utviklere kan guides av programmeringsverktøy til å skrive mer korrekt kode" ved Universitetet i Bergen, intet mindre. 📸: Privat Vis mer

Hvordan begynte du med koding? 👶

Det startet med Java tidlig på videregående, da jeg fant noen forelesningsopptak fra emnet "Programming Methodology" på Standford sine nettsider.

Undervisningen startet med roboten Karel på et 2D-kart, som kunne ta i mot instruksene "snu venstre", "snu høyre", "gå fram", "plukk opp" og "slipp ned".

Du kunne også spørre roboten spørsmål som "er det noen gjenstander på kartet", "holder du en gjenstand" og "er det ledig foran deg". Så brukte foreleseren dette til å introdusere programmeringskonsepter som if-uttrykk og for-løkker.

Jeg husker jeg syns det var veldig gøy!

Siden det var jeg aldri i tvil om at jeg ville ta en utdanning innen programmering.

Hva jobber du med akkurat nå? 🛠️

I løpet av stipendiatet skal jeg forske på hvordan utviklere kan guides av programmeringsverktøy til å skrive mer korrekt kode.

I første omgang ønsker jeg å utforske hvordan typeteori i større grad kan anvendes i GUI-programmering.

Men det nåværende semesteret er ganske annerledes enn det resten av stipendiatet vil være - nå underviser jeg et digitalt emne i grunnleggende programmering (INF620).

Så "produktet" jeg jobber med er å lage undervisningsmateriale til emnet, som blant annet vil si å spille inn korte videoer, lage ukesoppgaver og forberede forelesninger.

- Det vage skillet mellom jobb og fritid har ført til at det har blitt mer jobbing på ettermiddag og kveld, forteller Ukas Koder. 📸: Privat
- Det vage skillet mellom jobb og fritid har ført til at det har blitt mer jobbing på ettermiddag og kveld, forteller Ukas Koder. 📸: Privat Vis mer

Hvordan ser en typisk arbeidsdag ut for deg? ☕

Det har vært mye av og på med hjemmekontor, men jeg ser for meg å jobbe hjemmefra de nærmeste ukene etter oppfordring fra Bergen Kommune.

Hjemmekontor har sine styrker og svakheter:

På den ene siden er den sosiale delen av jobben vekk, og det vage skillet mellom jobb og fritid har ført til at det har blitt mer jobbing på ettermiddag og kveld.

På den andre siden så forsvinner det ikke lenger så mye tid på lange lunsjpauser og samtaler ved kaffetrakteren...

Uansett, med tanke på at jeg dette semesteret underviser i et digital emne så har det lite å si hvor jeg jobber fra.

- Det forsvinner ikke lenger så mye tid på lange lunsjpauser og samtaler ved kaffetrakteren, sier Ukas Koder, som nå lager egen kaffe på hjemmekontoret. 📸: Privat
- Det forsvinner ikke lenger så mye tid på lange lunsjpauser og samtaler ved kaffetrakteren, sier Ukas Koder, som nå lager egen kaffe på hjemmekontoret. 📸: Privat Vis mer

Hva har du lyst til å lære mer om framover? 📚

Jeg er utrolig fascinert over interaktiviteten som er mulig mellom utvikler og verktøy i programmeringsspråk med gode typesystem.

Første gang jeg oppdaget dette var i Elm, der Elm sin kompiler kunne gi oppmuntrende tilbakemeldinger om hva som manglet før programmet var ferdig.

Programmeringsspråk med støtte for det som heter "avhengige typer" - som for eksempel Idris og Agda har - tar dette et steg videre. Blant annet kan du i en del tilfeller forklare kompileren hva du ønsker å oppnå, også vil kompileren fullføre koden for deg.

Dette er noe jeg virkelig ønsker å lære mer om!

Hvilke konkrete verktøy klarer du deg ikke uten? 😻

I hvert fall Zoom og Slack, hjemmekontor hadde ikke fungert uten disse.

Jeg har også, på godt og vondt, gjort meg avhengig av vim sine keybindinger, så jeg klarer meg ikke uten editorer med støtte for dette. De gangene jeg klare meg uten keybindingene, for eksempel i Word og Spyder, er det flaut hvor sakte jeg skriver!

Hva er det verste du kan bli spurt om på jobben? 🔥

En av de store fordelene med å være stipendiat er at jeg styrer min egen arbeidsdag og bestemmer helt selv hvilke teknologier jeg vil bruke.

Svaret mitt må dermed bli å tømme oppvaskmaskinen på felleskjøkkenet, og selv det er ikke så verst.

Akkurat nå underviser doktogradsstipendiat Knut Anders Stokke studenter hjemmefra. 📸: Privat
Akkurat nå underviser doktogradsstipendiat Knut Anders Stokke studenter hjemmefra. 📸: Privat Vis mer

Hva synes du norske utviklere bør bli flinkere på? 🙋

Dette har jeg nok for lite fartstid til å ha noen formeninger om.

Hva liker du å gjøre når du ikke jobber? 🕹️

Jeg går i en menighet som heter Salt Bergen, der jeg spiller piano og synth i bandet på møtene.

«Huset er riktignok for lengst ferdig før programmet mitt kan gi meg svarene på disse spørsmålene.»

Det blir en del programmering på fritiden også. For tiden hjelper jeg noen i familien med den siste innspurten av husbyggingen, og der dukker det jo opp mange problemstillinger som kan løses ved hjelp av programmering.

Hvordan bør vi kutte gulvbordene slik at mengden bord som kastes blir lavest mulig? Og hvordan bør bordene kuttes slik at skjøtene mellom bordene skaper et mønster etter gulvet er lagt?

Huset er riktignok for lengst ferdig før programmet mitt kan gi meg svarene på disse spørsmålene.