Nada

Kursanalys för 2D1311 Programmeringsteknik för S, 2007

Kursanalysen är utförd av kursansvarig Linda Kann

Kursdata

  • Kurs: Programmeringsteknik med PBL, 2D1311, 4p.
  • Våren 2007 (period 3 och 4).
  • Kursledare: Linda Kann. PBL-handledare: Hanna Wallin, Irem Aktug/Mika Cohen, Henrik Gradin, Nicklas Gustafsson, Henrik Holst , Örjan Åkerborg, Marcus Dicander, Saddaf Shabbir, Disa Thureson, Per-Anders Legeryd/Per-Anders Staav, Gleb Zevkov, Joakim Blomberg
  • 19h F (samt 7h repetitionsföreläsningar på eftermiddagarna).
  • 10h PBL-handledning i övningssal.
  • 32h handledning i datorsal.
  • 12 PBL-grupper
  • 145 registrerade studenter, varav 143 har deltagit i kursen (två eller fler labbar).
  • Kurslitteratur: Python Programming for the absolute beginner av Michael Dawson
  • Kursen består av lab1 1p (fem inledande laborationer), lab2, 1p (prov på grunderna) samt lab3, 2p (en individuell P-uppgift).
  • Vid kursens slut var 141 personer klara med lab1, 143 klara med lab2 och 116 klara med lab3 .
  • Uppdelat på kön så har de aktiva kvinnorna på S följande prestationsgrad på resp moment: 100%, 100%, 82%. S-männen hade 95%, 98%, 79%.
  • Prestationsgrad bland deltagarna i juni 2007 89% (ner 5%-enheter jämfört med fjolåret).
  • Examinationsgrad bland deltagarna i juni 2007 80% (ner 11%-enheter jfrt m fjolåret).

Mål

Kursmålen reviderades under hösten. Övergripande mål för kursen är nu att: "Självständigt och i grupp kunna lösa problem genom att konstruera program på upp till femhundra rader i ett modernt programspråk."

I kursenkäten har jag råkat citera de gamla kursmålen: "att ge allmänna kunskaper om hur en dator fungerar och används, men också kunskaper om hur man skriver bra program...".
Trots detta tycker 37% att kursen absolut stämmer överens med kursmålen, och 55% at den delvis stämmer, vilket tyder på en välvillig inställning.

Förändringar inför denna kursomgång

P-uppgifterna och betygskraven har reviderats.

Bättre referenser från kursens webbsida, bland annat länkar till sidor om Tkinter (för dom som gör P-uppgifter med GUI).

Webbsidan har nu nyheterna först, och färre undermenyer.

Matriser tas upp på föreläsning.

Sammanfattning

Årskursen S-06 jobbade på bra fram till P-uppgiften, men ca 20% har försummat att göra klart P-uppgiften (efter godkänd spec). Detta kan bero på bristande planering hos studenterna, men också att det varit glest mellan träffarna (kursen går bara på tisdagarna och vissa tisdagar har varit helgdagar).

En enkät gjordes med ACE, som sjuttiotvå personer (30 kvinnor, 42 män och en av okänt kön) har svarat på.

70% av dom som besvarat enkäten tycker att kursen är intressant, men 21% tror inte att den är relevant för utbildningen/yrkeslivet. En rolig och programmerande ingenjör från S (eller V/L) som demonstration på en föreläsning vore bra att ha, för att motivera ämnet.

Undervisningen

Föreläsningar (två timmar och två kapitel per gång) har hållits, oftast i sal E1 (där projektorn fungerade ungefär varannan gång). Varje föreläsning i period 3 följdes av en repetitionsföreläsning i en mindre sal efter labbtiden på eftermiddagen.

87% tyckte att föreläsningarna var bra eller mycket bra:
allt var väldigt pedagogiskt med bra liknelser och dragna paralleller.
Men vissa kände att det gick för snabbt fram:
Att gå igenom två kapitel på en föreläsning är alldeles för mycket.

I övrigt har undervisningen skötts i PBL-grupper om ca 12 studenter. PBL-grupperna har haft labb på tisdagseftermiddagen efter föreläsningen, och under period 3 även träffats en timme på torsdagsmorgonen i seminarierum för redovisning och genomgång av labb och instuderingsfrågor. 80% av alla som besvarat enkäten tycker att PBL-handledningen fungerat bra, både i labbsalen och på torsdagsträffen. Några kommentarer:
Det har varit ganska stressigt att ha labbarna samma dag som föreläsningen. Om det är möjligt skulle det vara bra att ha dem veckan efter, eller åtminstone en annan dag samma vecka. Då har man lite tid på sig att läsa igenom kapitlet och smälta allt, istället för att hasta igenom övningarna. För de är bra.
En rolig kille med många och bra idéer. Roliga oviktiga kunskaper och man lärde sig något nytt varje gång.

Examination

Lab1 examinerades genom att man redovisade labbuppgifterna (uppgifter från boken) och instuderingsfrågorna på torsdagsträffen med PBL-gruppen. Förslag på förbättringar:
Hade varit bra att ha lite uppgifter som inte bara handlade om hur man skulle skriva kod, utan också hur man skulle lösa problem. Svårigheten på många P-uppgifter var själva problemlösningen, så det hade varit bra att ha fått lite övning på det innan.
Man skulle kunna ha något lite mer avancerat för dem som ämnar satsa på ett högra betyg redan under labb-delen av kursen.

Lab2 examinerades med ett skriftligt prov om 60 minuter med frågor liknande dom som funnits på webben att öva på. Minst 80% av frågorna ska vara rätt besvarade. Om labbar och instuderingsfrågor redovisats i tid kan man samla en bonus som innebär att det räckte med 65% på provet.

Lab3, P-uppgiften, examinerades individuellt av PBL-handledarna. Betygssättningen av P-uppgiften har fungerat bättre i år, nu när betygsgränser för C, B och A finns angivna direkt i uppgiftslydelsen.

Kurslitteratur

Kursboken "Python programming for the absolute beginner" av Michael Dawson har använts i år igen. Flera önskar en bok på svenska, men jag tror att just den här boken är ganska tacksam för att träna på att läsa kurslitteratur på engelska. Några saknar också en uppslagsbok i Python:
Det är en bra grundbok, men den räcker inte alls till när man kommer till P-uppgiften eftersom den är så planerad efter sina egna exempel. Lite mer fakta och uppslagsdelar skulle vara bra så att man kan slå upp kommandon o dyl.

Föreläsningsanteckningar har lagts upp (som pdf) på kursen webbsida efter varje föreläsning, vilket har varit uppskattat.

Planerade/föreslagna förändringar

Dela upp föreläsningarna (en timme på tisdagar och en på torsdagar) för att ge mer tid att smälta stoffet (ett kapitel i taget) och göra kursen mindre sårbar för helger.

Ännu bättre referenser från kursens webbsida. Pythons egen dokumentation är inte alltid tillräcklig.

Fler problemlösningsuppgifter (se CL-övningarna).

Lite mindre fokus på instuderingsuppgifterna och mer på labben under grupptimmen.

En programmerande S-ingenjör som gott exempel.

Fler PBL-träffar under period 4 för att diskutera problem och framgångar med P-uppgiften.

Mer om strukturerad avlusning och vanliga fel (Henrik Gradin har gjort en FAQ).

P-uppgifterna är nu graderade efter svårighetsgrad, men svårare uppgifter ger inte automatiskt högre betyg (vilket till viss del kompenseras med extrauppgifternas svårighetsgrad). Detta är ett bra system, men systemet med betygssättning efter programkvalitet måste motiveras bättre.

Se till att rotera labbkompisar efter varje labb för att uppmuntra bägge gruppdeltagarna att arbeta.