Kursanalys progk06
Programkonstruktion för F, 2D1342, 4 poäng
Kursdata
Mål
Kursens mål är att ge eleverna
-
kännedom om grundläggande begrepp inom datateknik och datalogi,
-
färdigheter i programmering, i synnerhet de programmeringstekniker som
behövs för att behandla fysikaliska och matematiska modeller,
-
kunskaper om konstruktion av stora program,
för att de effektivt ska kunna kunna utnyttja datorer i sina fortsatta
studier och i arbetslivet. Kursen ska även ge den bas eleverna behöver för
att kunna läsa fortsatta kurser inom datalogi och numerisk analys.
Nyheten förra året
Förra året (progk05) införedes ett nytt system för examinationen.
Systemet fungerade överlag bra och gav den önskade effekten:
Fler klara med kursen vid kursens slut samt fler med studenter med
betyg 4.
Det nya examinationssystemet bygger på att de tre labbarna och de två
lappskrivningarna ger poäng. Labb klar senast ett visst datum ger
lite extra poäng.
Till en av de tre labbarna finns extrauppgifter.
Eleverna samlar poäng och 11p ger betyg 3, 14p ger betyg 4.
Poängen gäller endast inom ett läsår, för att bli godkänd måste man
inom läsåret få ihop 11 poäng.
När man fått ett godkänt betyg kan man göra en fjärde labbuppgift
som är lite större och ger betygshöjning ett steg. Betygshöjningen
får man göra ett senare läsår.
Förändringar inför denna kursomgång
Till årets kursomgång ändrades lab2 lite grann (den var ny till progk05)
så att en av extrauppgifterna där fick bli del av grunduppgiften.
Extrauppgift 1 formulerades om och en ny extrauppgift 2
lades till. En ny laboration 3 konstruerades (mycket jobb!).
enligt förslag i förra årets kursanalys. Laborationen innehåller
delvis samma moment som den tidigare lab3 och delvis helt andra moment.
Årets kursdeltagare fick välja på den nya och den gamla.
Sammanfattning
Tycker det känns som om kursen fungerat bra och att de flesta är nöjda med
det nya upplägget med poängsamling och belöning för att hålla tiden.
Något fler elever än tidigare tycker att kursen är väldigt svår.
Det är fler som har gått på övningarna än tidigare år (hänger nog ihop
med att fler tycker kursen är svår).
Undervisningen
Undervisningen bedrevs på ett traditionellt sätt.
Föreläsningarna användes för att ge den teoretiska basen, övningarna
för att visa hur man praktiskt konstruerar program och laborationerna
för att eleverna själva ska få erfarenhet av programmering.
Det centrala i den här kursen är laborationerna.
Dessa har karaktären av små programmeringsprojekt som skall genomföras
parallellt med att man lär sig teknikerna.
Första projektet handlar om att
beräkna och grafiskt visa hur ljusstrålarna från en ljuskälla bryts i
ett antal linser. Andra projektet handlar om att
simulera Brownsk rörelse. Tredje projektet (nytt för i år) handlar om
att läsa en fil med person- och betygsdata samt skriva ut betygslistor.
Filen ser ut exakt som en riktig res-fil och betygen som räknas
är betyg på progk06 för 80 fiktiva personer (sagofigurer).
Som alternativt tredje projekt kunde man i år välja att göra det
gamla som använts i många år: simulering av hur personer förflyttar sig
i en byggnad. Alla uppgifterna är konstruerade specellt för den här kursen
och de två första har en medveten koppling till fysik.
Varje projektuppgift introducerar nya programmeringstekniker. I den
första uppgiften måste eleverna sätta sig in i grundläggande
programelement som variabler, villkor, slingor, metoder och
vektorer. I den andra uppgiften används en uppdelning av programmet i
olika moduler: en för den fysikaliska modellen, en för den grafiska
presentationen och en för användarens manipulation av
simuleringsparametrarna. I den tredje uppgiften (båda varianterna)
används en hierarki av klasser. I den nya uppgiften Betygslistor ingår
att läsa en textfil med ett okänt antal personuppgifter av varierande
längd.
Examination
Kursen examineras för betygen 3 och 4 genom laborationer och
lappskrivningar/muntliga förhör. Den som har betyg 4 kan
få 5 genom att göra en fjärde programmeringsuppgift som redovisas
både muntligt och skriftligt. Uppgiften kan också höja betyget från 3 till 4.
Examinationen sker under kursens gång samt under två kompletteringsperioder,
en i maj och en i augusti strax innan kursen poäng slutar gälla.
Enstaka redovisningar görs för kursledaren på andra tider.
Elevsynpunkter
Det är svårt att få F-teknologerna att svara på en enkät om kursen.
I år lades enkäten ut redan 2 mars. Jag har skickat påminnelser flera gånger
men ändå hade endast 20 personer besvarat enkäten den 8 juni.
De som har svarat är huvudsakligen positiva till hela kursen och
ger föreläsningar, labbhandledning och labbanvisningar bra betyg även om
föreläsningarna får lite sämre betyg än tidigare (50% tycker att de är
mycket bra eller bra, 40% svarar acceptabla, 10% har inte varit med
alls på föreläsningar).
Labbanvisningarna får också lite sämre betyg vilket kan bero på att
anvisingen för den nya lab3 är helt ny och kan förbättras.
Har dock fått många positiva kommentarer om både lab2 och lab3 från
elever. Flera av dem som tycker kursen är svår har sagt att de lärt sig
mycket på den nya lab3.
Ett utvärderingsmöte med lunch med tre studeranderepresentanter hölls.
De studerande hade själva valt tre representanter med olika förkunskaper
och ambitionsnivå i kursen (3, 4 resp. 5) samt förberett sig väl genom
att prata med många studenter. Utvärderingsgruppen hade också synpunkter
på kursen datorintroduktion.
Ett önskemål som kommer både genom kommentarer i enkäten och från
utvärderingsgruppen är att det ska finnas enklare labbuppgifter i början
av kursen. Många tycker att den första labben är för svår.
En kommentar i enkäten som ges av flera personer är att föreläsningarna
har för lite med labbarna att göra. Det är en förvånande kommentar
då jag tycker att jag successivt anpassat föreläsningarna mer och mer till
labbinnehållet.
Det är svårt att dra slutsatser av enkäsvaren när de är så få.
Det finns många olika åsikter.
Kurslitteratur
Kursen har ingen officiell kurslitteratur.
De flesta vill dock ha en bok och Java direkt med Swing är
en bra och lämplig bok som får bra omdömen av studenterna.
I kursprogrammet föreslås ytterligare några böcker.
Kursens belastning för eleverna
Enkätsvar (även om de är få), samtal med elever och tidigare års
utvärderingar av samma kurs tyder på att belastningen är ungefär
lagom stor med en liten dragning åt för stor. Av de 20 enkätsvaren
säger 15 att den är lagom men fem st att kursen tar längre tid än
den borde.
Förkunskaper
Förkunskaperna varierar som vanligt oerhört mycket. En del kan
redan allt som kursen vill lära ut medan andra inte kan någonting.
Under läsåren 01/02 - 05/06 hade kursen en introdel.
Från i år är introdelen frivillig.
Nästan alla F06-teknologer valde att börja på introkursen men en del
hoppade av. Efter samtal med studenter har jag fått
den uppfattningen att de som inte gjort klart intron är just
de studenter som verkligen behöver den. De har slutat för att den
var för svår. Skulle man kunna ha en variant av introkurs som fokuserar
mer på de studenter som har liten datorvana och ger dem det de behöver
för programmeringskursen ?
Planerade förändringar
Kursens första labb har varit med mycket länge. Anledning till det är
att den är så fantastiskt bra, åtminstone tycker alla lärare det.
Fler och fler elever tycker att den är svår som första labb.
Har nu allvarliga funderingar på att införa några nya lättare uppgifter
att börja med, antingen före första labben eller i stället för den.
Anpassning till det nya betygssystemet behövs också.
I samband med det tänker jag ändra poängsystemet så att
det är fler poäng totalt samt minska den relativa betydelsen av
tidsbonusen (extra poäng för att bli klar med labbar i tid) något.
Den nya labben Betygslistor mottogs väl men labbanvisningen behöver
bearbetas en del för att bli riktigt bra.
Trots att en hel del elever tycker att det är bra att inte ha en officiell
kursbok funderar jag på att återgå till det. Tror att det kan kännas
tryggare för dem som tycker det är svårt att man har en bok som man
håller sig till, där det finns uppgifter att arbeta med.