Om kurset

INF1100 har en standarisert emnebeskrivelse, men her f?lger litt mer detaljert informasjon om undervisningsopplegget.

Undervisningen

Forelesningenes struktur

Det er fire timer plenumsundervisning hver uke i Sophus Lies auditorium. P? tirsdag vil vi i f?rste time l?se oppgaver i temaer som ble forelest torsdagen uken f?r. I andre time vil vi snakke om nytt stoff. P? torsdag gj?r vi det samme: f?rst oppgaver fra tirsdagsforelesningen, og s? nytt stoff. Gjennom ? vise hvordan man l?ser programmeringsoppgaver "live" h?per vi at studentene f?r et bedre innblikk i hvordan man tenker rundt det ? programmere. Denne typen oppgavel?sning har prioritet over ordin?re forelesninger, s? noen ganger vil vi bruke av den andre timen til ? programmere i plenum. Hver uke trenger vi inn i et nytt kapittel i l?reboken, men kapittel 7 legger beslag p? to uker.

N?r vi foreleser nytt stoff, vil vi behandle noen temaer i dybden, noen temaer overfladisk, mens noen foiler og temaer vil vi hoppe over pga. den korte tiden som er til r?dighet p? forelesninger. Gjennomgang av foiler, enten direkte eller ved demonstrasjoner p? datamaskinen, danner kjernen i forelesningene. Alle foiler er tilgjengelige p? nettet og f?lger l?reboken tett, men g?r ikke p? langt n?r like dypt ned i stoffet. Bruk gjerne foilene til ? f? en oversikt over temaet og l?reboken og oppgaver til ? forst? stoffet og oppn? mestring. Senere kan du bruke foilene til ? repetere stoff og f? bedre oversikt.

Gruppeundervisningen

I tillegg til plenumsundervisningen er det to timer gruppe?velser p? terminalstue med en l?rer man kan sp?rre. P? disse ?velsene skal man jobbe med ukens innleveringsoppgaver, vanligvis 2-5 oppgaver fra forrige ukes forelesningstema. Disse oppgavene skal senere leveres inn elektronisk for retting og godkjenning av gruppel?rerne. Normalt skal du rekke ukens oppgaver p? gruppetimen dersom du har forberedt deg med ? studere kapittelet, foilene og plenumsoppgavene p? forh?nd.

Piazza: virtuelt forum

I tillegg til veiledning p? gruppetimene kan du f? hjelp ved ? stille faglige sp?rsm?l p? kursets markedsplass: piazza.com/uio.no/fall2014/inf1100. Mer administrative, personlige sp?rsm?l, f.eks. ved sykdom slik at man ikke har f?tt levert obligatoriske oppgaver, skal rettes til kursets mailadresse: inf1100@ifi.uio.no.

L?rebok

Det er skrevet en egen l?rebok for INF1100. Den nyeste fjerde-utgaven av denne boken selges i Akademika. L?reboken inneholder teori, eksempler og oppgaver, og er skrevet for ogs? ? kunne brukes ved andre universiteter i verden som ?nsker en innf?ring i programmering tett koblet mot matematikk og naturvitenskapelige anvendelser.

/studier/emner/matnat/ifi/INF1100/h14/ressurser/Primer_pic.jpg

Den st?rste forskjellen mellom 3. og 4. utgave av boka er rundt oppgavene. Veldig mange oppgaver er restrukturert i sp?rsm?l a), b), c) osv., og inneholdet i oppgavene kan v?re endret. N? er alle oppgavene tilgjengelige i en nedlastbar PDF fil. Man kan derfor lese i tredjeutgaven og bruke PDF-filen for forelesninger (men henvisningene fra oppgavene til seksjonsnummer i boka vil ikke alltid stemme). I fjerdeutgaven er det gjennomg?ende i teksten mer vekt p? testing av kode, og det er innf?rt spesielle konvensjoner for ? gj?re dette slik at testene passer inn i profesjonelle testrammeverk (nose og pytest). Vi anbefaler ikke ? studere 1. eller 2. utgave av boka.

Gi tilbakemeldinger!

Emnet INF1100 startet i 2007. Dette fremdeles en ganske ny type kurs, ogs? i internasjonal sammenheng, s? vi regner fortsatt med at b?de undervisningsform, utvalg av oppgaver og pensum kan bli justert noe underveis, men ikke s? mye som i de f?rste ?rene. Vi ?nsker ? v?re i tett dialog med studentene om ? gj?re kurset enda bedre!

Arbeidsform

S? hva skal du som student gj?re for ? mestre stoffet og sikre deg en god karakter p? eksamen? Eller enda viktigere: hvordan skal du arbeide for ? oppn? gode ferdigheter i programmering for senere kurs? Opplegget er relativt enkelt (og helt algoritmisk!):

  • Delta på alle de 6 timene med undervisning hver uke, i det minste til du kan så mye programmering at undervisningen har altfor treg progresjon for deg.
  • Bruk 2 timer på å lese ukens kapittel før forelesningene starter. Bla gjennom foilene for repetisjon og oversikt - før eller etter at du leser teksten. Evnen til å oppfatte nytt stoff på en forelesning er sterkt begrenset hvis man ikke er forberedt.
  • Bruk 2 timer på å løse oppgavene som foreleser skal gå gjennom i plenum. Da vil du se hva du ikke har forstått og få mye mer ut av oppgavegjennomgangen.
  • Bruk 1 time på å etterarbeide disse oppgavene etter at du har sett løsningene (de er tilgjengelige på nett).
  • Deretter forsøker du å løse ukens obligatoriske innleveringsoppgaver - med forberedelsene over bør du greie oppgavene på et par timer, gjerne på gruppetimen.

Summerer du timene over, f?r du 13, som er 1/3 av en normalarbeidsuke p? 40 timer for gjennomsnittsstudenten.

F?lg r?dene

Oppskriften over fungerer: hundrevis av studenter har allerede fulgt den og endt opp med A eller B p? eksamen og et godt grunnlag for ? l?se matematiske problemer via programmering i senere kurs.

Raske veier mot m?let er ofte trege

Undervisningen tar utgangspunkt i at alle studenter arbeider slik listen over beskriver. Hvis du velger andre opplegg, for eksempel ? g? rett p? ukens obligatoriske oppgaver, vil du fort ende opp med ? "knote", ikke skj?nne "noenting", bla febrilsk i b?ker og foiler og bruke mange un?dvendige timer p? frustrasjon med lavt l?ringsutbytte. L?ring gjennom oppgaver er helt sentralt, men oppgaver du ikke forst?r noe av fordi du mangler det teoretiske grunnlaget, er et ineffektivt utgangspunkt. Oppskriften over sikrer deg mest fritid og den mestring og forst?else som studiet senere krever, pluss en god karakter.

Eksamen

B?de midtveiseksamen og den endelige eksamen vil ligge tett opptil et sett med obligatoriske oppgaver og oppgaver l?st i plenum. Har du forst?tt disse oppgavene, blir eksamen en hyggelig opplevelse. For ? forst? oppgavene, er det lurt f?rst ? lese relevant teori og eksempler i l?reboken. Mange oppgaver er nemlig tett knyttet til stoffet i boken. Vi definerer faktisk pensum gjennom plenumsoppgaver og obligatoriske oppgaver og ikke gjennom kapitler i l?reboken. Boken er et middel til ? n? m?let, som er ? mestre et sett med oppgaver.

Samarbeid

Det kan v?re sv?rt utbytterikt ? 澳门葡京手机版app下载e med andre, men det kan ogs? v?re et effektiv hinder for ? oppn? egen forst?else og mestring. Det er viktig at du tidlig som student har et elt bevisst forhold til n?r og hvordan du skal 澳门葡京手机版app下载e og n?r du b?r studere p? egenh?nd.

Erfaring viser at i en gruppe som 澳门葡京手机版app下载er om oppgaver og der kunnskapsniv?et blant studentene varier mye, vil den faglig sterkeste ha stort utbytte av 澳门葡京手机版app下载et gjennom ? lede oppgavel?sningen og forklare andre. De svakeste vil fort ende opp i en "skrive av" situasjon der de ikke f?r nok tid til ? forst? det som foreg?r. Med etterarbeiding av oppgavel?sningen p? egenh?nd der man trenger dypt inn i detaljene og pr?ver ? forst? dem, s? kan dette v?re en god form for l?ring. Dessverre erfarer vi at en del ender opp med bare ? "skrive av".

Programmering er en ferdighet som krever mye trening

Sv?rt f? vil v?re s? begavede fra naturens side at de forst?r programmering bare ved ? skrive av og lese l?sninger. S? godt som alle m? l?re programmering (og regning og andre ferdigheter i realfag) ved ? jobbe p? egenh?nd med et solid antall oppgaver. Mestring er krevende, men betalingen f?r du ved ? kjenne p? mesteringsf?lelsen n?r du mestrer.

Som student er det viktig ? fokusere p? individuelle ferdigheter, alts? at du p? egenh?nd har kunnskap og erfaring til ? l?se nye problemer. Bare p? denne m?ten kan du greie deg senere i studiet og i arbeidslivet, og det gjelder b?de n?r du m? l?se problemer selv og i 澳门葡京手机版app下载 med andre. Uten individuelle ferdigheter har du lite ? bidra med i et 澳门葡京手机版app下载!

Testing av individuelle ferdigheter

Vi har n? et forsterket fokus p? individuelle ferdigheter i INF1100/MAT-INF1100L og andre kurs. Det betyr at studenter blir testet individuelt, f?rst og fremst p? eksamen, men ogs? i forbindelse med gruppetimer for ? kontrollere at oppgavene som leveres inn er forst?tt. I stedet for et sterkt fokus p? juks, der m?let er ? avsl?re og utvise studenter som leverer inn andres arbeid, konsentrerer vi oss om ? m?le kunnskapen hver enkelt student har ervervet seg. Vi bryr oss alts? ikke om hvordan du fremskaffer l?sningen p? en oppgave, men vi bryr oss om ? teste i hvilken grad du forst?r hvordan et programmeringsproblem skal l?ses. N?r du 澳门葡京手机版app下载er med andre m? derfor kritisk vurdere i hvilken grad 澳门葡京手机版app下载et gir deg individuelle ferdigheter. Samarbeidspartnere som er p? samme mestringsniv? som deg selv kan v?re en god ting. Og n?r du leverer inn en oppgave, m? du sp?rre deg selv om du kan forklare hva som skjer p? hver linje i programmet og hvorfor linjen er n?dvendig. Formelt sett er det faktisk slik at i det du trykker p? innleveringsknappen samtykker du at du kan forklare alle detaljer av l?sningen din. Et mindre antall studenter blir plukket ut og testet at de har skj?nt hva de har sendt inn.

Av Hans Petter Langtangen
Publisert 21. apr. 2015 21:32