21.05.2015 Views

Datastrukturer och algoritmer (C) - Institutionen för datavetenskap

Datastrukturer och algoritmer (C) - Institutionen för datavetenskap

Datastrukturer och algoritmer (C) - Institutionen för datavetenskap

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

TEK/NAT Kursrapport<br />

Kurs<br />

Kurskod<br />

Poäng<br />

År<br />

Start v.<br />

<strong>Datastrukturer</strong> <strong>och</strong><br />

<strong>algoritmer</strong> (C)<br />

5DV127<br />

7.5<br />

2013<br />

04<br />

Institution<br />

<strong>Institutionen</strong> för <strong>datavetenskap</strong><br />

Antal registrerade<br />

(män/kvinnor)<br />

211 (174/37)<br />

Antal aktiva studenter (deltagit i minst en<br />

examinerande del)<br />

198<br />

Genomströmning (i %) <strong>och</strong> betygsutfall efter första tillfälle för examination (för varje betyg som satts på kursen ange antal som uppnått<br />

detta på formen ???<br />

Genomströmning: 44% Betyg: U(120) 3(24) 4(41) 5(26)<br />

Hur mycket schemalagd lärar-/assistent-ledd tid har studenten tillgång till på kursen?<br />

15*2h föreläsning<br />

5 gruppövningstillfällen a 2h<br />

+ ca 456h handledning (varav ca hälften använts till rättning av obligatoriska uppgifter)<br />

Totalt har 873 timmar lärarresurser funnits tillgängliga för kursen<br />

Hur är undervisningen upplagd?<br />

Föreläsningar, gruppövningar, handledning under arbete med obligatoriska uppgifter.<br />

För vart <strong>och</strong> ett av lärmålen (FSR:en) i kursplanen, beskriv kortfattat hur det examineras.<br />

förklara grundläggande begrepp relaterade till datastrukturer <strong>och</strong> <strong>algoritmer</strong>,<br />

tenta + labbar<br />

beskriva vanliga abstrakta datatyper <strong>och</strong> <strong>algoritmer</strong>,<br />

tenta + labbar<br />

förklara jämlöpande exekvering med delat minne som koncept <strong>och</strong> med det redogöra för innebörden av synkronisering <strong>och</strong><br />

trådsäkra datatyper.<br />

tenta<br />

formulera lösningar till enkla problem i form av <strong>algoritmer</strong> inklusive att identifiera <strong>och</strong> använda lämpliga datatyper,<br />

tenta + labbar<br />

implementera lösningen i form av ett program i programspråket C,<br />

labbar<br />

tillämpa dynamisk minnesallokering,<br />

labbar<br />

använda sig av grundläggande problemlösningsstrategier,<br />

tenta + labbar<br />

experimentellt <strong>och</strong> teoretiskt undersöka en mjukvaras tids- <strong>och</strong> minneskomplexitet, samt redogöra för <strong>och</strong> dokumentera utfallet<br />

enligt givna riktlinjer,<br />

tenta + labbar<br />

visa att en komponent i ett program fungerar korrekt med hjälp av testning,<br />

lab<br />

använda sig av en debugger för att hitta fel i program.<br />

labbar<br />

visa förståelse för hur struktur-, tids- <strong>och</strong> minnesaspekter påverkar kvalitet hos program.<br />

labbar + tenta<br />

Beskriv hur betygssättningen på kursen fungerar. (Vilka betyg ges på kursen <strong>och</strong> hur sker bedömningen, dvs vilka delar betygssätts <strong>och</strong><br />

hur vägs de samman? Finns det skrivtliga betygskriterier <strong>och</strong>/eller lärmål (FSR) för de olika betygen?)<br />

Kursen består av 2 moment. Det ena på vilken endast betygen U <strong>och</strong> G ges har examinerats via ett antal (5) obligatoriska<br />

uppgifter. Det andra momentet har examinerats via en tentamen på denna tentamen har betygen U,3,4,5 gets (detta betyg<br />

har också om labmomentet är godkänt) blivit studentens kursbetyg. Betygsgränserna på tentamen är grovt 50,65 <strong>och</strong> 80%<br />

av poängen på tentamen (en helhetsbedömning görs i gränsfall).<br />

Pusha lite för att studenterna bör göra quizarna <strong>och</strong> finslipa dem.<br />

Samläses denna kurs med andra kurser??<br />

Ja<br />

Om ja, hur många?<br />

1


Hur stor andel av kursen samläses?<br />

20%<br />

Samläser flera program denna kurs?<br />

Ja<br />

Om ja, hur många?<br />

6<br />

Arbetar studenterna i projektform på kursen?<br />

Nej<br />

Om ja, uppskattad omfattning i poäng på projektdelen:<br />

Antal projekt som varje student deltog i:<br />

Antal studenter i projektgrupp:<br />

Förväntades studenterna använda en projektmetodik för dokumentation <strong>och</strong> styrning (tex LIPS)?<br />

Nej<br />

Hur skedde indelning av studenter i projektgrupper?<br />

Har studenterna uppmanats föra projektdagbok?<br />

Nej<br />

Kursens samverkan med forskning<br />

Om ja, Har dagboken utgjort grund för examination?<br />

Ingen samverkan med forskningsverksamhet förekommer på kursen<br />

Annan samverkansform, nämligen:<br />

Kursens samverkan med näringsliv eller offentlig verksamhet<br />

Ingen samverkan med näringsliv/offentlig verksamhet förekommer på kursen<br />

Annan samverkansform, nämligen<br />

Genomförda förändringar till detta kurstillfälle<br />

Vi har skrivit om de obligatoriska uppgifterna något för att göra dem enklare att tolka <strong>och</strong> genomföra. I samband med det<br />

blev det också lite mer variation i vilka datatyper som behandlats.<br />

Debugglabben gjordes om <strong>och</strong> spårutskrifterna togs bort helt.<br />

Vi har omfördelat rättningsresurser mellan labbarna.<br />

Vi har infört en 6:e lab som består av ett quiz kring trådar <strong>och</strong> jämlöpande exekvering eftersom vi insåg att det fanns en risk<br />

för att studenterna kunde få G på kursen utan att kunna detta FSR tillräckligt bra.<br />

Förändringsförslag från föregående kursrapport<br />

I allmänhet har kursen fungerat bra, men fortfarande finns en del småjusteringar som hade kunnat göra kursen bättre (se<br />

lista nedan på några förslag).<br />

* Se om det går att minska arbetsbelastningen för studenterna utan att plocka bort material från kursen. Förslag på sätt att<br />

göra detta kan tex vara att finjustera datatyperna som studenterna får använda i laborationerna <strong>och</strong> deras beskrivning.<br />

* Se om det går att på laborationerna innan den sista få lite mer variation i vilka datatyper som behandlas.<br />

* Kontrollera även nästa år hur parallella kursers scheman ser ut för att i största möjliga mån undvika att studenter tex har<br />

handledning samtidigt som undervisning på en annan kurs.<br />

* Försök få in materialet om minneshantering <strong>och</strong> valgrind tidigare i kursen.<br />

* Spara sammanfattande kommentaren kring rättningsmallen mellan åren för att via detta kunna i framtiden kunna<br />

åstadkomma en jämnare bedömning av inlämningsuppgifter.<br />

* Debugglabben - plocka bort spårutskrifterna <strong>och</strong> koncentrera uppgiften på debuggern <strong>och</strong> andra felsökningsverktyg.<br />

* Förfina laborationsspecifikationerna exempelvis syfte <strong>och</strong> krav.<br />

* lab1 tog mer tid att rätta <strong>och</strong> 5an mindre så omfördela rättningsresurser mellan dessa.<br />

* Då resultatet var rätt dåligt gällande fsr:et om trådar så bearbeta det materialet <strong>och</strong> poängtera för studenterna att detta är<br />

ett fsr som kommer examineras.<br />

Lärare<br />

Information om inblandade lärare<br />

Kursansvarig<br />

Johan Eliasson


Antal övrig personal som ej föreläser<br />

6<br />

Antal övriga föreläsare<br />

Hur stor del av den schemalagda tiden på kursen undervisas av forskande lärare (dvs lärare med mer än 25% forskning i sin<br />

tjänst)?<br />

0<br />

Hur stor del av den schemalagda tiden på kursen undervisas av lärare verksamma i näringsliv/offentlig verksamhet (dvs lärare<br />

med mer än 25% av sin tjänst förlagd till näringsliv/offentlig verksamhet)?<br />

0<br />

Kursvärd.<br />

Totalt antal svarande<br />

69<br />

Sammanställningsdatum<br />

2013-05-22<br />

När genomfördes kursvärderingen?<br />

Efter genomfört första examinationstillfälle<br />

För varje lärmål på kursen ange hur stor del av de studerande som uppger att det har behandlats på kursen - ange svaret i procent på<br />

formen<br />

har behandlats/har inte behandlats/vet ej<br />

förklara grundläggande begrepp relaterade till datastrukturer <strong>och</strong> <strong>algoritmer</strong>,<br />

96%/1%/3%<br />

beskriva vanliga abstrakta datatyper <strong>och</strong> <strong>algoritmer</strong>,<br />

94%/1%/5%<br />

förklara jämlöpande exekvering med delat minne som koncept <strong>och</strong> med det redogöra för innebörden av synkronisering <strong>och</strong><br />

trådsäkra datatyper.<br />

81%/6%/13%<br />

formulera lösningar till enkla problem i form av <strong>algoritmer</strong> inklusive att identifiera <strong>och</strong> använda lämpliga datatyper,<br />

90%/4%/6%<br />

implementera lösningen i form av ett program i programspråket C,<br />

94%/1%/5%<br />

tillämpa dynamisk minnesallokering,<br />

90%/6%/4%<br />

använda sig av grundläggande problemlösningsstrategier,<br />

94%/1%/5%<br />

experimentellt <strong>och</strong> teoretiskt undersöka en mjukvaras tids- <strong>och</strong> minneskomplexitet, samt redogöra för <strong>och</strong> dokumentera utfallet<br />

enligt givna riktlinjer,<br />

97%/0%/3%<br />

visa att en komponent i ett program fungerar korrekt med hjälp av testning,<br />

93%/3%/4%<br />

använda sig av en debugger för att hitta fel i program.<br />

96%/1%/3%<br />

visa förståelse för hur struktur-, tids- <strong>och</strong> minnesaspekter påverkar kvalitet hos program.<br />

90%/3%/7%<br />

Sammanf.<br />

Sammanfattning av åsikterna i kursvärderingen - positivt <strong>och</strong> negativt kring föreläsningar, seminarier, grupparbeten, laborationer,<br />

examination etc


Vad har varit positivt med kursen <strong>och</strong> bör behållas?<br />

Ett antal studenter (25 st) har under denna punkt påpekat att labbarna varit bra roliga <strong>och</strong> lärorika.<br />

Handledarnas insatser har varit uppskattade (15 studenter)<br />

Bra handledning via mail (6 studenter)<br />

Gruppövningarna har varit bra. (5 studenter)<br />

Bra föreläsningar (9 studenter)<br />

Allt har varit bra. (3 studenter)<br />

Övriga kommentarer:<br />

Gillade absolut att man tidigt fick lära sig om buggtestning<br />

Kursinnehållet som sådan känns väldigt relevant EFTER tentan, när jag fått en överblick med gamla tentor <strong>och</strong> efter att ha<br />

själv gått igenom materialet.<br />

Johan Eliasson är jättetrevlig <strong>och</strong> kunnig.<br />

Glosförhörstentan är nyttig.<br />

Debugg-uppgiften var nyttig <strong>och</strong> lärorik.<br />

Quizen, inte bara den obligatoriska, var bra träning inför tentan. "<br />

Jag har lärt mig mycket nytt!<br />

En positiv sak har varit att man fått lära sig mer om vilka verktyg man kan använda inom programmering. Hemgjorda<br />

datatyper <strong>och</strong> så. Man har även fått lära sig om vetenskapen bakom <strong>datavetenskap</strong>. Tidskomplexitet osv.<br />

Tempot, det var precis lagom snabbt.<br />

Lär sig mycket på kort tid. Inte en allt för svår tenta är bra då man har lite tid på sig att plugga.<br />

Strukturen på kursen <strong>och</strong> att det mesta även finns på internet.<br />

Erfarenhet av C<br />

Introduktion till olika sortering/sök <strong>algoritmer</strong> etc<br />

Bra med quiz på cambro, men det skulle vara bra om det fanns fler frågor inom respektive rubrik.<br />

Bra med handledningstid i datasal<br />

Genomgången av de olika datatyperna, lab 1,2,3. Likaså quizet var bra. Bra att kunna redovisa lab 2 direkt.<br />

Uppgifterna har varit lärorika <strong>och</strong> delvis roliga men kanske en aning för svåra.<br />

Lärare <strong>och</strong> handledare.<br />

Alla labbar utom tvåan (meningslös), handledartillgången.<br />

uppgift 2 <strong>och</strong> 4 var väldigt lärorika<br />

uppgift 1-3-4-5 har varit bra<br />

Ou 3<br />

Bra med quiz-frågor på internet!<br />

Den sista labben var rolig <strong>och</strong> utmanande. Goda <strong>och</strong> snabba mejlsvar från handledare (på alla labbar)!<br />

Hemsidan<br />

De 2 sista gruppövningarna var!<br />

Bra upplägg med föreläsningar på morgonen.<br />

Komplexitet s analys, debugging, labb 1 <strong>och</strong> 3<br />

Duktiga labhandledare <strong>och</strong> bra med hjälp via mail <strong>och</strong> annan mailkontakt.<br />

Information om kursen på kurssidan har också varit bra.<br />

Alltid tillgång till en dator.<br />

Bra med quiz på trådar istället för att ha med det på tentan.<br />

Bra resurser.<br />

Labbarna! Dock kanske det ska fördelas tid bättre eftersom 3:an tar mycket mer tid än planerat.<br />

************************************************************<br />

Vad kan förbättras? Ge gärna tips på hur!<br />

Handledarnas utsända instruktioner om hur man gör för att hjälpa dom att hjälpa mig borde vara krav för att ens få hjälp. :)<br />

skulle spara tid för alla utom de som tar upp en timme handledartid utan att ens veta vad som är fel i sitt program.<br />

För enkel sista labb. För mycket hjälp. Fick inte göra nåt eget alls i stort sett.<br />

Orättvis med sista minuten hjälpen mot dom som gjorde klart labban första dagarma, borde va lika för alla.<br />

Annat än tidiga mornar så finns det inte mycket att klaga på. En sak skulle vara att få en bra kompilation av de drygt 60<br />

termer som finns i boken <strong>och</strong> som skulle läras in till tentamen. En stor del av tiden att plugga gick åt till att sammanföra alla<br />

termer på ett överskådligt vis. ID har gjort en mycket bra sammanställning av allt kursinnehåll där det hänvisas på ett väldigt<br />

strukturerat vis till allt man behöver känna till. Detta gör det lättare att lära sig då den tid som annars skulle gått till att söka<br />

reda på saker istället direkt går till att faktiskt plugga.<br />

1. Kursen överskattar sina deltagares förkunskaper om pseudokod <strong>och</strong> <strong>algoritmer</strong> ALLDELES FÖR MYCKET. Det krävs en<br />

tydlig förklaring av VAD pseudokod <strong>och</strong> <strong>algoritmer</strong> är! Jag hade väldigt svårt att förstå <strong>algoritmer</strong>na <strong>och</strong> gränsytorna på<br />

föreläsningarna, för jag känner inte alls igen pseudokod sen tidigare <strong>och</strong> ingen förklaring gavs på föreläsningen! Att bara<br />

säga ""Datatypen x använder create"" sa mig absolut ingenting, vadå använder create? Först efter att kursen var slut förstod<br />

jag vad pseudokoden i gränsytorna egentligen innebar. Snälla förklara innan gränsytorna slängs upp på OHn vad<br />

pseudokod är, <strong>och</strong> ta ett exempel. Gå igenom fält <strong>och</strong> förklara vad pseudokoden betyder <strong>och</strong> varför man inte bara skriver<br />

som i C! Jag har bara programmerat i C innan <strong>och</strong> jag förstod inte varför inte bara en array deklarerades i gränsytan för att<br />

skapa fältet, iom att jag inte förstod vad gränsytorna ska användas till.<br />

2. Det behövs mycket mer tillfällen till att öva på pseudokod (framförallt att läsa <strong>och</strong> förstå!!!), men mest av allt på att öva på<br />

<strong>algoritmer</strong>! En enkel algoritm på en gruppövning, där läraren faktiskt går igenom rätt svar <strong>och</strong> eleverna får facit (inte bara ett<br />

papper med lite frågor <strong>och</strong> sedan varken genomgång eller facit). Kanske det går att lägga upp övningsuppgifter på att<br />

tolka/skriva pseudokod <strong>och</strong> att implementera enklare <strong>algoritmer</strong> på kurshemsidan? Med tillhörande facit (Som Johnny<br />

gjorde på c-programmeringen...).<br />

3. Laborationernas instruktioner är så otroligt fåordiga. Laboration 1 var helt omöjlig för mig att förstå, för jag förstod inte vad<br />

datatypen stack gjorde, iom att jag inte förstod gränsytan, <strong>och</strong> jag förstod inte hur en datatyp testades, eftersom att<br />

laborationsinstruktionen inte sade VAD som skulle testas eller HUR! Resterande laborationer saknade också mängder med<br />

information. Snälla! Till nästa år, förklara tydligt att merge-sort-algoritmen i sin HELHET ska FÖLJAS TILL PUNKT OCH<br />

PRICKA! Jag uppfattade det som att den 5 rader långa lilla algoritmen på en av slidesen skulle fungera som den enda<br />

hjälpen, jag visste inte att det fanns en helt algoritm som behövde följas fören dagen innan laborationen skulle in!<br />

4. Fler handledare!!! Att hinna få hjälp 10 minuter efter att ha väntat i 1 timme <strong>och</strong> 40 minuter, <strong>och</strong> sedan inte kunna få mer<br />

hjälp det handledartillfället, är inte okej. Ge laborationerna tydligare <strong>och</strong> mer hjälpsamma instruktioner <strong>och</strong> inte ni kan ha<br />

tillräckligt med handledare!


När jag säger ""jag förstod"" menar jag; jag, <strong>och</strong> de 15+ på kursen jag frågade varje gång jag inte förstod, förstod inte <strong>och</strong><br />

kunde inte hjälpa varandra...<br />

Nästan mest av allt vill jag trycka på; gå igenom tydligt, MED EXEMPEL OCH GRUPPÖVNINGAR!, vad egentligen<br />

pseudokod är, <strong>och</strong> hur det används i gränsytor."<br />

Uppgiftsbeskrivningarna för inlämningsuppgifterna borde kunna göras tydligare <strong>och</strong> mer utförliga, då det varit rätt många<br />

krav som ställts av handledaren vid rättning som inte framgått i den ursprungliga uppgiftsbeskrivningen.<br />

Pappersinlämningarna är omständiga <strong>och</strong> borde överges till förmån för digitala inlämningar/återkopplingar.<br />

Kursboken känns onödigt svårbegriplig i förhållande till svårighetsgraden på kursens innehåll.<br />

Att man bara har en chans att göra om labbar innan man får U <strong>och</strong> får vänta långt efter kursens slut för att korrigera. Med<br />

det systemet är det ju bättre på slutet att inte plugga inför tentan utan lägga allt krut på de sista labbarna så man kan klara<br />

kursen. Tentorna kan man göra om fler ggr innan termins slut.<br />

Bättre föreläsningar, mer information om labbarna. Nu satt man väldigt länge för att bara lista ut vad labbarna faktiskt går ut<br />

på.<br />

Labbbeskrivningarna kan förbättras <strong>och</strong> göras mer tydliga <strong>och</strong> utförliga. Nu tog det lång tid innan man förstått vad uppgiften<br />

gick ut på. Det behövs också fler handledare <strong>och</strong> handledartilfällen, då trycket på dessa var väldigt högt. Gruppövningarna<br />

skulle också kunnas göra med bättre genomgångar, nu fick man inte ut så mycket av det med undantag för de gånger man<br />

fick hjälp av handledaren. Vore bra med ett facit till gruppövningar, eller alternativ till lösningar så man kan se om man tänkt<br />

rätt. Vore också bra med lösningsförslag till gamla tentor så att man kan kolla om man tänkt rätt här med. Föreläsningarna<br />

var ofta ganska förvirrande, <strong>och</strong> man förstod inte sammanhanget förrän senare. Framförallt i början av kursen vore det bra<br />

med ett tydligare sammanhang <strong>och</strong> inte bara dyka direkt ner i gränsytor av olika datatyper.<br />

Labinstrukrionerna är dåliga. Mer bakgrund mer instruktion mer <strong>algoritmer</strong> mer om lämpliga datatyper mer om var exakt<br />

fakta finns.<br />

Svårighetsgraden höjdes lite väl mycket inför första labben då man hade haft Matlab istället för C den sista veckan på den<br />

inledande C-kursen.<br />

Ta bort stycket om Turingmaskiner eller utveckla det till en större del av kursen. Just nu är det väldigt tunt.<br />

Föreläsningarna borde då <strong>och</strong> då göra en kort repetition av de datatyper vi gått igenom, så man ser lite struktur på kursen.<br />

Fler handledare. För både oss studenter <strong>och</strong> handledarnas skull.<br />

Lösningsförslag till gamla tentor.<br />

Inte ett så stort steg mellan inl2 till inl3.<br />

Möjlighet att ladda upp koden <strong>och</strong> rapporten direkt via internet, likt för kursen Programmering i C 5DV104<br />

Gruppövningarna tycker jag verkligen kan förbättras! Handledarna får gärna gå igenom exempel <strong>och</strong> lära ut mer än att bara<br />

dela ut papper <strong>och</strong> sedan förvänta sig att man ska förstå vad som ska göras. Jag tycker även att det borde vart med<br />

handledartid, eller kanske inte mer tid utan mer strukturerat. OU1 var inte så jättesvår så då fick man hjälp, men för varje<br />

OU som gått har hjälpen blivit mindre & mindre. Sista veckorna fick man sitta <strong>och</strong> vänta en hel handledartid utan att ens fått<br />

hjälp.<br />

Sen tycker jag att hoppet mellan labbarna är helt sjuka. Från början ska vi bara testa en datatyp, OU3 var alldeles lagom<br />

komplicerad för att kunna klara av <strong>och</strong> den tog upp saker som man fick lära sig & testa sig fram. Men OU5, det var många<br />

som bara satt <strong>och</strong> gjorde saker utan att ha en blekaste aning om vad de höll på med. Man tog hjälp av varandra <strong>och</strong><br />

försökte så det är nog inte många som kan påstå att de löst uppgiften enskilt. Det måste finnas något bättre sätt att kunna<br />

lära sig hur en graf samt en hashtabell fungerar än att komplicera ihop det till en väldigt svår uppgift. Problematiken på OU1<br />

var för lätt, OU5 för svår medan OU3 var alldeles lagom svår.<br />

Sedan tycker jag att föreläsningarna kan bli bättre, jag hade svårt att återknyta det som gicks igenom på föreläsningarna till<br />

de laborationer som skulle utföras. Jag fick ofta sitta <strong>och</strong> läsa mig fram till informationen genom att googla på det.<br />

Handledningstiderna kolla om många har samma problem istället för att gå till var <strong>och</strong> en.<br />

"Föreläsaren var inte pedagogisk tycker jag. T ex, första föreläsningen lade han upp pseudo-kod på projektorn <strong>och</strong> sa<br />

ungefär ""ja, här ser ni att man kan lägga till i kön, ta bort?"". Många var vi som satt som frågetecken, är detta C-kod? Vad<br />

är en gränsyta? Skriver man så som det står där? Är det ett program han visar? En funktion?<br />

Istället borde han ha sagt ""Nu ska jag visa pseudo-kod, det är xxx? Här är några operationer för denna datatyp, man kan<br />

använda dom när man sedan programmerar men måste då skriva dom i rätt programmeringsspråk. T ex, om man vill lägga<br />

till i kön ska man titta på kodbiten här?"" osv.<br />

Denna pedagogik saknades i alla föreläsningar tycker jag. Små saker som skulle ha underlättat väldigt mycket för<br />

förståelsen."<br />

Jag har hört att antalet handledare var för få <strong>och</strong> att vissa inte fick den hjälp de behövde<br />

Kanske lite mer genomgång av de obligatoriska uppgiftern än bara teori på föreläsningarna. Känns som att föreläsningarna<br />

bara riktar sig mot tentan. Sen behövs det mer handledare under de sista lektionerna innan inlämning, är ett enda stort kaos<br />

<strong>och</strong> man får vänta i timmar för att få någon hjälp...<br />

"Då många av oss som gick den här kursen inte har kodat i C på ca 1,5 -2,5 år var det ett stort bekymmer. Handledarna<br />

måste få ge tips på kod då det har varit det störta problemet, inte teorin bakom.<br />

Med andra ord är det frustrerande när studenter frågar <strong>och</strong> kan teorin <strong>och</strong> vill ha hjälp med kod (allt från att skriva pekare,<br />

deklarera funktioner, struktar etc), en återkopplande basic föreläsning i början av kursen hade kunnat hjälpa till.<br />

Då kursen moment går ut på att koda går det inte endast ha föreläsningar om teori."<br />

Jag tycker att föreläsningarna kändes lite sega, det var lätt att man började tänka på annat.<br />

Ni måste göra någonting åt att det tar sådan lång tid att rätta labbarna!<br />

Ni kunde ha gett facit till tentorna. Jag är tyvärr ganska säker på att faktumet att man inte kan veta vad som är rätt <strong>och</strong> fel<br />

svar kommer visa sig i studenternas tentaresultat.<br />

Antingen gå igenom vad en Turingmaskin är lite mer eller ta bort det helt tycker jag. Vi fick i princip bara veta att om ett<br />

problem är beräkningsbart så finns det en Turingmaskin som kan lösa problemet. Ämnet kändes ganska abstrakt <strong>och</strong> kräver<br />

lite mer genomgång.<br />

Gärna minst en laboration där man själv får implementera en datatyp <strong>och</strong> inte bara använda sig av färdigimplementerade<br />

datatyper.<br />

Bättre instruktioner för att faktiskt få godkänt tror jag hade varit uppskattat av elever såväl som handledare, nu blev det<br />

nästan så att man förväntade sig ett O <strong>och</strong> nöjde sig med det så man får en lista med det som ska rättas till. Typ en lista<br />

med saker som brukar bli fel: "kolla så komplexiteten verkligen är O(nlogn)", "testa stacktesten på en felaktig stack lite<br />

grann" osv. Labb 5 blev lite olycklig på så sätt att den exakta algoritmen tillhandahölls nästan direkt istället för att labben<br />

skulle bli en träning i att tänka dynamisk programmering, det hade varit kul att få lite tips så man kan lista ut den sista biten<br />

själv.<br />

Många gånger hann man inte få hjälp innan handledningarna var slut, så nästa år bör ni ha fler handledare. Eller kanske fler<br />

fast mindre grupper.


Kopplingen mellan programmeringsuppgifterna <strong>och</strong> teoridelen skulle med fördel kunna kopplas tätare. Kanske med en<br />

'brygga' där övningsuppgifter (repetetiva) liknande den på C & matlab-kursen finns där man kan öva sig på små<br />

beståndsdelar innan man går in på de mer tunga delarna, d v s obligatoriska uppgifterna.<br />

Omfördela arbetsbördan. Väldigt mycke arbete på slutet av kursen. Lösningsförslag till gamla tentor <strong>och</strong> gruppövningar<br />

hade varit bra. Specifikationen för labbarna får INTE ändras efter att labbarna kommit ut, för i år har ändringar skett när det<br />

vara bara några dagar kvar för inlämning.<br />

"Om ni ska ha en obligatorisk uppgift under en labb tid (inlämmningsuppgift 2) ska ni se till att ha resurserna på plats för att<br />

rätta den under labb tiden. Väntetiderna kring en timme är respektlös mot studenterna i detta fall.<br />

Det sagt, skulle jag inte klagar på väntetiderna i övrigt; börjar man med uppgifterna i god tid, behöver man inte vänta på<br />

handlederna!<br />

Tips. Fler handledare eller mindre grupper för obligatoriska uppgifter som utförs på labben."<br />

Mindre "hopp" mellan labb 1 <strong>och</strong> labb 3, blev mycket svårare snabbt.<br />

Instruktionerna kring vissa uppgifter var ganska dåliga vilket resulterade i att man var tvungen att fråga handläggarna om<br />

hur man skulle gå tillväga.<br />

Antal handledare, mer än hälften av eleverna på handledartillfällena fick aldrig hjälp.<br />

"Mer exempel på vad datatyperna används till, det är intressant att höra.<br />

Fler handledare."<br />

"De datatyper ni har BÖR vara kommenterade, ni tvingar oss att kommentera uti--- men själva har ni 0 kommentarer i<br />

koden, den kommentar som finns i början av funktionen räcker inte alltid.<br />

Jag tycker också att det är en för mycket uppgifter att programmera."<br />

En bättre distinktion från början om skillnaden mellan abstrakta <strong>och</strong> fysiska/implementerade datatyper. Vissa gruppövningar<br />

(<strong>och</strong> även många handledningstider) krockade med annan kurs, hade gärna velat gå på alla men missade tyvärr den<br />

möjligheten, ibland pga ren glömska. Påminn om dem på föreläsningarna.<br />

"Gör mindre labbar där man får öva på det som faktiskt examineras i kursen, dvs konstruera datatyper, implementera olika<br />

<strong>algoritmer</strong> etc. Labb 3 & 5 tog upp så otroligt mycket tid <strong>och</strong> man har inte mycket hjälp av det på tentan, satt mest <strong>och</strong><br />

jävlades med syntax <strong>och</strong> minnesläckor. På något sätt var labbarna <strong>och</strong> kursen två separata moment, vilket är orättvist då<br />

kursens betyg endast grundar sig på tentan.<br />

Fler handledare.<br />

* Boken är faktiskt ingen höjdare. Författarna använder ett språk som inte inbjuder till fortsatt läsning (onödigt bökiga<br />

formuleringar m.m.). Hela boken tycks vara full av meningar som "Detta gör att det inte är alldeles trivialt att uttrycka sig i<br />

generella termer om datatyper, <strong>algoritmer</strong> <strong>och</strong> kontrollmedel på ett sätt som är förhållandevis neutralt till olika ansatser <strong>och</strong><br />

typer av programspråk" (sid 15).<br />

Föreläsnings-slidesen" som publiceras på hemsidan kunde innehålla lite mer information. Exempelvis på slide nr 19 listas<br />

en rad begrepp, men ingen förklaring ges till de olika begreppen.<br />

Det kändes lite konstigt/omotiverat att uppgift 4 ska lösas i par, när alla andra uppgifter ska lösas individuellt.<br />

Uppgift 2 (debugger) kanske skulle redovisas på något annat sätt?<br />

Inlämningsuppgifterna var ganska svår för vår kunskapsnivå vilket gjorde att man blev beroende av handledarna som var<br />

väldigt upptagna. Mer information <strong>och</strong> tips om uppgifterna eller stegvis ge ledtrådar innan inlämningsdatum.<br />

"Inl4 var ganska svår utifrån vad vi gått igenom på föreläsningarna. Kanske nåt mer exempel på föreläsningen innan vi<br />

skulle börja med detta. Bra ändå att man kunde få hjälp på gruppövningen.<br />

Tycker inte att det är bra att viss information om hur inlämningsuppgifterna ska se ut kommer bara några dagar innan den<br />

ska lämnas in. Det som inte finns specifierat på labspecarna ska inte vara examinerande tycker jag. Tex att man var<br />

tvungen att ta in datafilen som en kommandoradsparameter på inl3. Detta fanns det ingen info om, men kom fram ungefär<br />

tre dagar före inlämning.<br />

På något sätt minska arbetsbördan, det har varit mycket svårt att hinna med, framför allt med labbarna. Kanske borde<br />

fungera på att ta bort tex labb 4 med tidskomplexitet <strong>och</strong> lägga in en obligatorisk gruppövning istället. Tillräckligt många<br />

handledare hade behövts, ofta fick man ingen hjälp även om man satt hela handledningen<br />

Fler handledare <strong>och</strong> handledningstider, det var i stort sett omöjligt att få hjälp om man inte var beredd att vänta två timmar<br />

varje gång. Även att kontrollera att folk inte utnyttjar andra gruppers handledningstid, det hände hela tiden <strong>och</strong> blir väldigt<br />

orättvist när platserna ockuperas av folk som sitter där konstant.<br />

Tydligare struktur på lab-spec.<br />

Tex. samla vad som ska finnas med i lab-rapporten bättre.<br />

Det vore även bra att vara mer explicit på hur man ska utföra analysen på lab 4, det är inte tillräckligt att säga hur man inte<br />

ska göra.<br />

lite fler exempel-filer som man kan testköra programmen med, förslagsvis några felaktiga som inte ska fungera.<br />

Det känns inte som att föreläsningarna hjälper en att klara av uppgifterna. Föreläsningarna har handlat om en sak medan<br />

uppgifterna hanterar något annat. Att jämföra med tidigare kurs Programmering i C där man kunde starta med uppgiften <strong>och</strong><br />

när man inte kunde komma längre kunde man invänta nästa föreläsning som reder ut problem <strong>och</strong> man kunde fortsätta.<br />

Väldigt svårt att rätta till, då det är väldigt mycket som måste finnas med i föreläsningarna.<br />

Fler eller djupare labbar! Mycket hellre en hel labb om trådar istället för en menlös quiz som ändå inte ger något.<br />

Debuggning <strong>och</strong> minneshantering á la valgrind borde verkligen ha introduceras på tidigare programmeringskurs.<br />

Ännu mer labbtid/handledningstid!<br />

Fler/mer strukturerade handledningsrillfällen. Vet det är svårt dock :)<br />

bort med bok-kravet<br />

Mer handledning/fler handledare under tiden uppgifterna är som mest krävande. Uppgifterna 3 <strong>och</strong> 5 var väldigt tunga.<br />

Jag tycker det var väldigt svårt att koppla samman det vi gått igenom från föreläsningarna till vad vi sedan skulle göra. Vi<br />

gick igenom det långt innan det var relevant för det vi jobbade med. Jag skulle även behövt väldigt mycket mer hjälp med<br />

labbarna, <strong>och</strong> de stackars handledarna hade väldigt mycket att göra. Ofta hann man inte få hjälp på en hel handledning,<br />

alltså i stort sett värdelöst att gå dit. Det kändes även som det förväntades väldigt mycket av oss på gruppövningarna. Att<br />

saker vi precis gått igenom på föreläsning skulle sitta som berget <strong>och</strong> att vi skulle veta exakt vad hur vi skulle göra när vi<br />

kom dit. Även föreläsningarna var konstiga. Ja, jag vet att en kö är då man lägger till värden sist <strong>och</strong>tar bort först (som ett<br />

exempel) men jag vill veta mer om hur man använder sig av <strong>algoritmer</strong>na <strong>och</strong> skriver det i kod. Mer konkret kodning i c hade<br />

varit bra.<br />

"uppgift 2, (debug) uppgiften borde ändra form på något vis. var väldigt många som fick sitta nästan hela dagen bara föra att<br />

redovisa nått som tog knappt tre minuter <strong>och</strong> detta gjorde många irriterade. så lite bättre struktur gällande denna labb hade<br />

varit bra.<br />

Uppgift 6 (quiz) borde också tänkas om, denna gav inte speciellt mycket att göra, skulle kunna ha något på en gruppövning<br />

för denna istället."<br />

Mer om ordobegreppet <strong>och</strong> komplexiteträkning. Inte ge så mycket gratiskod till Ou 5<br />

Oerhört svårt att få tillgång till hjälp under laborationstillfällena, alldeles för få handledare som kan hjälpa till.<br />

Ganska mycket. Antalet tillfällen som handledning erbjuds. Som det är nu blir det en kölista på 30 namn direkt i början av


handledningen, <strong>och</strong> har man inte skrivit upp sig innan lektionen börjar får man vänta 2-3 timmar för hjälp.<br />

Tycker även man ska tillåta att samarbete på labbarna. Att lösa en lab själv (speciellt lab 3 <strong>och</strong> 5) är stort sett omöjligt <strong>och</strong><br />

man måste i stort sett ta hjälp av andra elever."<br />

"Upplys studenterna tidigare hur de borde göra när de ber om hjälp. Det skickades ut ett mail om hur de borde förbereda sig<br />

som att till exempel använda valgrind osv (även om det kan verka uppenbart). Som det var nu tog handledningen otroligt<br />

lång tid vid varje person då elever inte ens verkade ha försökt söka fel innan de bad om hjälp.<br />

Så, gå igenom tidigare hur folk borde förbereda sig när de ställer frågor, annars får de förbereda sig <strong>och</strong> låta handledaren<br />

hjälpa någon annan medans det gör det. Handledarna ska inte behöva valgrinda <strong>och</strong> använda debuggern, det borde redan<br />

ha testats."<br />

Visa hur man implementerar <strong>algoritmer</strong>na i kodform. Det tog en stund att lära sig vad man ska använda sig av när man<br />

skrev programmen.<br />

Efter att bara ha 4 veckors erfarenhet av programmering sedan tidigare kändes det som att man saknade mycket av den<br />

baskunskap som krävdes för att lösa de obligatoriska uppgifterna. Istället fick man söka upp saker på internet <strong>och</strong> fråga<br />

handledarna hela tiden.<br />

Det bästa hade varit om kursen varit upplagd på samma sätt som Programmering i C-kursen, då föreläsningarna började<br />

med en lista på vad som skulle gås igenom <strong>och</strong> avslutades med en kort repetition av det viktigaste. Sedan följs detta upp av<br />

några övningsuppgifter i stigande svårighetsgrad som läggs ut på kursens hemsida. Några dagar senare läggs även<br />

lösningsförslag ut på dessa övningar, så man vet hur man ska göra. Då har man en bra grund att stå på inför de<br />

obligatoriska uppgifterna, <strong>och</strong> man kan kolla tillbaka på lösningsförslagen när man har problem. Fler "demonstrationer" på<br />

programmeringsexempel hade också varit bra att kunna använda sig av.<br />

Alternativt att man lägger upp gruppövningarna på samma sätt, dvs. att man får ut lösningsförslag på alla uppgifter. Genom<br />

att ha övat på små saker som behövs inför uppgifterna skulle mycket tid besparas, både för vi som studenter <strong>och</strong> för<br />

handledarna. En tydligare beskrivning av de obligatoriska uppgifterna skulle också underlätta för alla, så att det inte blir som<br />

nu, att man inte bara ska lösa gåtan på hur man ska göra, utan också behöver klura ut vad exakt som ska göras.<br />

Det hade också varit bra om det hade funnits en större genomgång av pseudokod lättillgängli från kurshemsidan. Om<br />

pseudokoden introduceras redan från början blir det lättare att hänga med på föreläsningsslidsen. Även en repetition <strong>och</strong><br />

genomgång av minneshantering <strong>och</strong> pekare, då detta endast behandlades kort i slutet av c-programmeringskursen, men<br />

var en ganska grundläggande del i denna kurs. (Kanske inte är erat jobb att göra det här i <strong>och</strong> för sig)."<br />

"Man kan utnyttja att många studenter gör samma labb samtidigt på olika sätt. Till exempel kan man organisera att<br />

studenterna hjälper varandra mera, <strong>och</strong> man kan göra en topp-lista över den/de studenterna som lyckades implementera<br />

den mest effektiva labb-lösningen. Det hade sporrat mig.<br />

Programspråket C är inte optimalt för att lära sig datastrukturer. Man lär sig endel minneshantering, <strong>och</strong> det är ju bra, men<br />

det var inte det jag trodde jag skulle lära mig."<br />

"1. Kursboken. Den är fruktansvärt filosofiskt skriven <strong>och</strong> ger inte så mycket om man inte redan är insatt i begreppen <strong>och</strong><br />

datastrukturer.<br />

2. Labbarna. Tanken kanske är god men det finns en hel del problem anser jag. För det första så är de tillhandahållna<br />

datatyperna i vissa fall väldigt dåligt skrivna. Ett exempel är datatypen edge i graflabben som ska ha vertice som indata<br />

enligt specifikationen, men vertice fungerar inte att lagra noderna i vilket gör att man måste hantera detta med mabvertice -<br />

hur ska man kunna förstå detta? Att sedan förutsätta uttömmande kunskaper om minneshantering efter en kort introduktion i<br />

förra kursen känns också fel. Labbarna gav helt klart mycket kunskaper, men det var en del oklarheter som borde fixas till.<br />

Bara tack vare handledarna fick jag lite bättre koll på hur memoryhandlers fungerar. Så labbarna måste ses över <strong>och</strong><br />

ändras, alternativt måste innehållet inför labbarna helt ändras för att man ska kunna förstå <strong>och</strong> få ut något av dom.<br />

3. Antalet handledare, de gör ett jättejobb men det är ändå alltid kö <strong>och</strong> ingen chans till hjälp"<br />

"De första gruppövningarna var svåra att förstå då det inte framgick på föreläsningarna innan om vad de faktiskt handlade<br />

om. Vad är pseudokod m.m. Gärna en rejälare intro-del till kursen. Tog ett par veckor innan man förstod vad vi faktiskt höll<br />

på med. Föreläsningarna kan bli ännu tydligare. KÄndes som att man kom in mitt i ett område inför varje nytt område som<br />

gicks igenom. Såhär i efterhand känns det som att jag hade alldeles för lite förhandskunskaper för att gå kursen. Gärna fler<br />

handledare...<br />

Ett annat tips kan vara att redan i inledningen av kursen bestämma att på handledning får man hjälp efter en hjälplista som<br />

skrivs på tavlan. På så vis kan handledarna enkelt hjälpa i rätt ordning <strong>och</strong> vi behöver inte sitta <strong>och</strong> sträcka upp händerna.<br />

Labbarna var mycket svåra att förstå.. TIll sista labben fick vi en liten överblick på vad som skulle göras, varför inte skriva en<br />

sådan till alla labbar eller i alla fall ha en snabb genomgång av syftet under en föreläsning? Labinstruktionerna kan bli ännu<br />

tydligare. Det var svårt att veta hur labbrapporterna skulle skrivas. "<br />

"Fler handledare <strong>och</strong> handledartillfällen!!! I <strong>och</strong> med att det var svårt att få hjälp så hjälper alla varandra istället... kan kanske<br />

sluta med för lika kod?<br />

"<br />

För gärna labb 5 lättare, men låt en få mindre hjälp av generatematrix <strong>och</strong> mindre krav på dess datatyper. Det kändes inte<br />

som om man lärde sig så mycket utan mest följde instruktionerna på hur Eliasson hade sagt<br />

Föreläserens handstil (på tavlan) är inte det vackraste jag sett. Blev svårt att se vad som stod skrivet ibland.<br />

Haft mycket föreläsningstid på att prata om träd men vi har inte fått göra en laboration om detta.<br />

"För lång väntetid under handledningstillfällena, många hinner inte alls få hjälp.<br />

Lärarens handstil <strong>och</strong> tavel-/pennteknik, det var ofta det inte gick att se vad det förställde."<br />

Lägg in implementation av åtminstone en datatyp så att man får prova på det också. Som det är nu missar man lite av hur<br />

man bygger upp en datatp.<br />

Kanske ta lite mer begrepp som kan komma till tentan på föreläsningarna<br />

***************************************************************<br />

Saknar du något på kursen som borde vara med?<br />

Ett "index" på allt man behöver lära sig. En kompilation av alla termerna så att man slipper leta reda på dem själv. Jag<br />

personligen kände även att även om svårighetsgraden på labbuppgifterna var mer än rimlig så kunde man ändå fått fler<br />

exempel på hur man ska tänka eller mer hur man faktiskt ska gå till väga för att programmera med hjälp av graf. Det var ett<br />

litet mörker att försöka lista ut det. Kanske skulle vara bra om man hade en utförlig genomgång/repetition av sätt att läsa in<br />

<strong>och</strong> hantera data (text) från filer på vis som gör att man lätt kan hantera det. Något sådant skulle i vilket fall ha varit mig till<br />

hjälp då man trotts grundkurs i c <strong>och</strong> mathlabb ändå inte har fått särskillt mycket erfarenhet av att programmera.<br />

Gruppövningar med genomgång <strong>och</strong> facit. Övningsuppgifter man kan göra själv på internet, med facit. Mer handledning!!!<br />

Frågestuga?<br />

Framförallt mer handeldartid !


Jag kan inte påstå att jag saknar något, men kursen borde göras om lite.<br />

Tentan behöver inte ha så stor del tycker jag man får mycket av uppgifterna<br />

Kodföreläsningar i C<br />

På första C kursen som vi läste så la ni/kursledaren ut övningsuppgifter på hemsidan, då var det lättare att förstå hu man<br />

använde koden senare när man skrev ett stort program.<br />

Inte direkt. Jag tycker innehållet på kursen var väldigt bra. Det hade behövs någonstans "kontroll" av att man lärde sig saker<br />

på rätt sätt bara.<br />

Hade varit kul att jobba med trådar, jag tror att en till labb hade hunnits med om labbinstruktionerna varit lite tydligare så<br />

man kunnat gå vidare istället för att förvänta sig ett O<br />

Tid <strong>och</strong> information. Studievägledare sa att matte inte behövdes för kursen men inlämningsuppgift 4 kräver matte kunskaper<br />

som lärs ut på högskolenivå.<br />

Jag har fortfarande inte fått göra en datatyp eller konstruera en datatyp m.h.a en annan datatyp. Endast två <strong>algoritmer</strong><br />

implementerades under kursen.<br />

Testa att implementera en egen datatyp<br />

Implementering av trådsäkra datayper.<br />

Hur de olika versonerna av scanf egentligen fungerar hur man flushar sdin bufferten i c.<br />

Mer information om hur man använder kunskapen i kod.<br />

Föreläsning om hur man skriver koden med datatyperna.<br />

Förutom mer repetition <strong>och</strong> övningsuppgifter, nej.<br />

Topp-listor över bästa/mest optimerade implementeringar av labb-specar.<br />

Ett kompendium som tar upp mer teori kring minnesallokering med exempel på rätt <strong>och</strong> fel vid exempelvis malloc<br />

En lab som innefattar träd skulle underlätta förståelsen av denna datatyp.<br />

Gärna ännu mer fokus på laborationer <strong>och</strong> mindre på tentan, man lär sig bättre när man får göra något praktiskt.<br />

Hade varit kul att själv få implementera en datatyp, men det om det hade gjorts nu hade det blivit för mycket. Man kanske<br />

kunde byta ut det mot någon av labbarna?<br />

****************************************************************<br />

Övriga synpunkter<br />

Rekursiva anrop av den typ som används i labben för merge-sort är inte världens lättaste att hålla koll på när man<br />

programmerar. Att fixa minnesläckor i en sådan kan vara döden, det skulle vara bra om man på något vis fick någon form av<br />

genomgång med konkreta exempel med hur man bör göra för att programmet ska kunna frigöra minne på ett bra sätt i<br />

sådanna fall. Det var klurigt att lyckas få bort samtliga läckor <strong>och</strong> det är fortfarande lite av ett mörker. Vet dock ej hur man<br />

bör lyckas med detta men om det fanns något sätt att låta studenterna pröva på eller läsa om hur man korrekt hanterar<br />

minne i rekursiva anrop skulle ha gjort labbarna väldigt mycket lättare att ta till sig.<br />

Så mycket användbart i denna kurs som jag inte fick överblick över fören efter tentan <strong>och</strong> alla laborationer. Kursen i sig är<br />

inte dålig, men den överskattar sina elever så otroligt mycket. Att ha läst en kurs i C-programmering innebär inte att jag kan<br />

allt om C <strong>och</strong> är 100% bekväm med <strong>algoritmer</strong> <strong>och</strong> pseudokod från dag 1.<br />

Lite för höga krav på programmeringskunskaper då handledningen inte räcker till mer än vad den gjort.<br />

Lärorikt.<br />

Sluta be studenterna skriva ut enkelsidigt! Det är fullständigt absurt att hundratals elever ska skriva ut tiotals sidor gånger 5<br />

labbar, <strong>och</strong> sedan skriva ut allt enkelsidigt bara för att handledarna inte orkar vända på pappret. Samma sak gäller givetvis<br />

på tentapappren.<br />

Som i svaret på fråga 2 kan jag tycka att det är halvt idiotiskt att ni inte har svaren på era egna tenta frågor så vi studenter<br />

vet om vi lär oss rätt. TANKEN är god men i praktiken så är den en dyslektikers värsta mardröm. Högst opedagogiskt tänkt.<br />

Om en person har skriv <strong>och</strong> läs svårigheter redan från början blir det knappast bättre av att ni inte ens ger studenten en<br />

chans att se om han/hon ens FÖRSTÅR TEXTEN rätt.<br />

"Den skriftliga tentamen upplevdes avsevärt svårare än de som användes som övningstentor. Spännande förvisso men<br />

svårt. Det vore önskvärt om det finns ännu fler övningstentor att tillgå på kurswebben så man ser spannet av frågor. Det<br />

känns tryggt att i alla fall ha någon form av hum om vad som kommer.<br />

I övrigt en kul kurs där föreläsaren gav ett tryggt <strong>och</strong> trovärdigt intryck, både pedagogiskt <strong>och</strong> innehållsmässigt. Särskilt plus<br />

till de utvikningar som gavs kring komprimering (kruskal mm) samt när den där forskningsartikeln nämndes. Sådant gör att<br />

man förstår att det finns mer <strong>och</strong> det ger också litet mer detaljer att hänga upp kunskapen på. "<br />

Väldigt givande kurs. Jätteroligt!<br />

Varför inte göra kursen i c++? skulle spara iaf 50% av tiden genom att få använda classer <strong>och</strong> de möjligheter ett lite nyare<br />

språk ger. Det är i stort sätt likadant med c, bara lite fler funktioner.<br />

Skulle ge denna kurs betyget svag 3:a av 5 möjliga. Det finns ju en otrolig kompetens hos handledarna <strong>och</strong> potential för<br />

kursen, utnyttja det.<br />

Jag spenderade över 50h per vecka de sista tre veckorna för att hinna med. Jag spenderade mer tid på den här kursen än<br />

på många 100%-kurser <strong>och</strong> känner mig väldigt stressad över att inte hinna med min parallella kurs.<br />

handledningen via mail har fungerat väldigt bra.<br />

"Trevlig kurs, känner att jag faktiskt lärt mig saker. Men tempot har varit långsamt, hade lätt kunnat kasta in en extra labb.<br />

Har lagt kanske 15 timmar i veckan på kursen (inkl. kodning <strong>och</strong> lyssna på föreläsning)."<br />

Jag har ändå varit på alla föreläsningar <strong>och</strong> gruppövningar men vet inte riktigt helt vad mycket av det vi gått igenom ska<br />

användas till eller hur man ska använda det.<br />

Vill bara förtydliga att alla handledare <strong>och</strong> föreläsare var jättebra, men bara att upplägget på kursen hade kunnat göras<br />

bättre.<br />

Jag hade tyckt om att hoppa mellan olika språk, för att verkligen få se att koncepten vi lär i kursen är generella!<br />

Jag ställer mig ytterst frågande till varför man inte får implementera en datatyp på egen hand i sådan här kurs. Det skulle<br />

höja förståelsen betydligt <strong>och</strong> göra att man får grundtänket korrekt. Det behöver inte vara någon avancerad men jag är<br />

besviken på att jag inte lärde mig detta i kursen.<br />

"<br />

Väldigt stort hopp från första programmeringskursen <strong>och</strong> denna, svårt att klara av att skriva kod ibland då det förväntas<br />

saker av oss som vi endast har haft en intro på förut. "<br />

Lärarnas synpunkter på kursens innehåll <strong>och</strong> genomförande<br />

Svårigheter som finns i programspråket C har gjort det svårare än nödvändigt för vissa studenter att ta till sig kursmaterialet<br />

då inte alla har hunnit lära sig tillräckligt med kunskap för att ta till sig materialet fullt ut. Spridningen mellan studenterna är<br />

dock rätt stor vilket kan ses i kommentarerna ovan som sträcker sig från att kursen var aldeles för lätt till den totala<br />

motsatsen.<br />

Uppgiften om debugging (främst redovisningen av den) hanns inte med under den tid som fanns avsatt då gruppstorlekarna<br />

var lite stora<br />

Förslag till nästa kurstillfälle - ange vem som ansvarar för förändringen


Plocka bort avsnittet om trådsäkerhet <strong>och</strong> omfördela en del av materialet med c-kursen, så att materialet görs mer<br />

lättilgängligt <strong>och</strong> mer tid kan läggas på tex kodexempel.<br />

Gör instruktioner för vad man bör göra innan man frågar handledarna om för att frågorna ska gå snabbare att besvara <strong>och</strong><br />

därmed göra så att folk slipper vänta så länge på handledare.<br />

Försök få med lite mer kodexempel på föreläsningarna (utan att för den sakens skull minska på antalet exempel på<br />

pseudokod). Framför allt rörande minnesallokerande <strong>och</strong> pekare.<br />

Försök hålla nere tiden som behövs för studenterna<br />

Flytta bort några handledningstillfällen i början av labbarna för att kunna hjälpa lite mer på slutet.<br />

Se över debugguppgiften tidsmässigt. Dedikerad tid för redovisning?<br />

Se över handledningssituationen<br />

Se över labspecifikationerna <strong>och</strong> se om något kan klargöras för att förenkla.<br />

Poängtera tydligare att quizen i cambro finns <strong>och</strong> då det kan vara lämpligt att göra dem (lägg gärna till fler frågor)<br />

Bör kursplanen ändras till nästa kurstillfälle - vem ansvarar i så fall för att förändringen görs?<br />

Ja, Lena Kallin Westin <strong>och</strong> Johan Eliasson<br />

Granskn.<br />

Granskare lärare (CAS-identitet)<br />

joel0001 [Eliasson, Johan]<br />

Granskare student (CAS-identitet)<br />

nima0072 [Martini, Nicole]<br />

Granskare studieadministratör (CAS-identitet)<br />

leka0001 [Kallin Westin, Lena]<br />

Eventuella kommentarer på granskningsprocessen

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!