For mange nordmenn er grunnfaget IN1000 på Institutt for Informatikk (IFI) på Universitetet i Oslo (UiO) deres aller første møte med programmering.
kode24-timen fikk derfor lektor Siri Annethe Moe Jensen og førsteamanuensis Geir Kjetil Sandve ved IFI på besøk, for å høre nøyaktig hva studentene egentlig lærer i sitt aller første kodefag, og hvordan faget har utvikla seg de siste åra.
Besøket fikk vi altså før myndighetene torsdag stengte dørene til alle landets barnehager, barneskoler, ungdomsskoler, videregående skoler, høyskoler og, nettopp, universiteter.
Hele intervjuet hører du i ukas kode24-timen-episode, og høydepunktene får du under!
#1: Hvorfor Python, ikke Java? 🐍
De siste årene har UiO, på linje med mange andre, brukt Python som språk på grunnkurset deres. Tidligere var det Java studentene måtte lære seg.
- Vi antar at studentene ikke kan noe fra før, og i Java blir det da litt syntaktisk støy, forklarer førsteamanuensis Sandve i kode24-timen.
Han nevner velkjente Java-særegenheter som static void main og andre konsepter som er vanskelige å forstå fra dag én, men må med i koden om den overhodet skal kjøre.
- Vi så at mange ting ble tomme ord. Vi måtte bare si til studentene at "dette må du putte inn", og "men du har ikke lært dette ennå". Det ble et veldig brudd med alt vi ellers pleier å si; at noe av det viktigste med programmering er at du må lære deg å forstå alt helt presist. Personlig syntes jeg det var det største problemet; at jeg møtte meg selv i døra, sier Sandve
- Og sånt er det mindre av i Python, synes dere?
- Ja. Der klarer vi å få fram at de skal skjønne alt de skriver, fra dag én.
Derfor skroter norske universiteter Java på grunnkurs
#2: Hvordan programmerer studentene, rent praktisk? ✍
- Vi prøver å gi noen anbefalinger for å komme i gang. Man skal slippe å ta stilling til valg av operativsystem og editorer og sånt første uka, forteller lektor Jensen.
Spesifikt anbefaler de editoren Atom, og at man jobber i en Linux-utgave.
- Så det er ikke Emacs dere ber studentene bruke lenger?
- Nei, ikke nå lenger, for det var ikke så lett å starte med, smiler Jensen.
- Også anbefaler vi Linux, så de klarer seg når de setter seg ned på en Linux-maskin her på universitetet, fortsetter hun, for ja, det er Linux maskinene der kjører.
Når det kommer til oppgaver, leveres de ikke lenger inn på papir, slik de gjorde for ikke altfor mange år siden. Og på eksamen får studentene sitte på maskiner uten internett, med så mange papirer og bøker de bare ønsker.
Men studentene får ikke kjørt Python-koden sin under eksamen - så eventuelle feil oppdager de ikke før de får sensuren.
Vraker Java, velger JavaScript
#3: Hva sliter studentene mest med? 😅
- Det er lett å tenke at programmering er sånn at bare du har pugga alle ordene, og lært deg mange oppskrifter, skal du være sikra, starter Sandve.
- Men jeg sier allerede i første forelesning at programmering er en kreativ prosess, som kan minne mer om kunst enn andre ting.
Dette sliter noen studenter med, ifølge foreleserne. Faktisk skal kreativiteten være noe av det de sliter mest med, mener Sandve.
- Mange har en utfordring med at de får en problemstilling, også er det ingen enkle tommelfingerregler som sier hvordan de skal komme seg fram til en løsning. De må bare sette seg ned og tenke over hvilke Lego-brikker de har, og hvordan det er mulig å stable dem sammen for å få akkurat den løsningen de trenger, sier han til kode24-timen.
- Man er nødt til å ha en dyp tilnærming til det, og det er alltid mer utfordrende enn å følge oppskrifter.
#4: Skriver man variabelnavn på norsk? 🤶
- Et medlem av kode24-klubben lurer på om dere skriver variabelnavn på norsk eller engelsk?
De to foreleserne begynner å humre litt.
«Mange føler sterkt rundt det.»
- Mange føler sterkt rundt det. Om vi ikke alltid har norske variabelnavn, så har vi det ofte nok til at folk blir provosert av det, sier lektor Jensen.
For hovedregelen skal være, i alle fall på grunnkurset IN1000, at variabelnavnene skal være på norsk. Det er det flere grunner til; blant annet prinsipper, og at det blir enklere for studentene å skille variabelnavn fra nøkkelord.
- Også fordi undervisningen foregår på norsk; vi snakker norsk. Da blir det litt mer naturlig med "Vi har en teller som går fra 1 til 10", enn "Vi har en counter som går fra 1 til 10", forteller førsteamanuensis Sandve.
Vi snakka om mye mer enn bare dette, altså, blant annet alle leserspørsmålene fra kode24-klubben. Vi håper du har lyst til å abonnere på podcasten vår kode24-timen, og høre hele intervjuet der! 💘
- Skal slippe å bli bedt om å “se litt på farger” når man er eneste jente på gruppa
Studenten Regine Ruud på NTNU håper vi snart kan bli ferdig med å tro at koding er en guttegreie.