Systemprogrammering HT-02

(TDBB40)


Information

Kursansvarig: Mikael Ränner
Överiga lärare: Björn Axelsson, Daniel Fahlgren
Handledare: Fredrik Dahlin, Gabriel Jonsson, Set Norman
Kurslitteratur: [ Brian Kernighan, Dennis Ritchie: The C Programming Language. ISBN 0-13-110362-8, Prentice Hall, 2nd edition, 1988 ] samt [ W. Richard Stevens: Advanced Programming in the Unix Environment. ISBN 0-201-56317-7, Addison Wesley, 1992 ]
Godkända på labkurs: 41 av 107 // kolla upp
Godkända på tenta: 52 av 90 skrivande // Kolla upp
Sammanställare Denna kursutvärdering är sammanställd av Tomas Karlsson dv01tkn@cs.umu.se

 

Övergripande kommentar om kursen från kursansvarig

Laborationerna behöver nog en översyn igen. När det gäller C-delen av kursen så är det ett (litet) problem att studenterna inte längre kan förutsättas ha provat på ett rent imperativt språk på kurser innan denna. Man borde dock kunna dra nytta av att de ska ha läst Java innan, så det är väl något som ska tänkas på till nästa år.

Övergripande kommentar om kursen från sammanställaren

Det har helt klart varit en krävande kurs men bra. Labkursen verkar ha varit bra och givande även om det kan ha varit en lab för mycket. Det som jag tror är viktigt att förbättra inför nästa kurs är att få en klarare gräns mellan vilka föreläsningar som behandlar C språkets grunder ( Header filer, roligheter med parkare mm ) så de studenter som redan kan C slipper gå på dessa och känna sig uttråkade. Sen att de lektioner som behandlar grunderna i C ligger koncentrerat i början av kursen är också viktigt. Målet borde vara att kunskapen om C språket borde vara avklarat efter 2 veckor så att studenterna kan koncentrera sig på systemprogrammeringen. Idalt så skulle denna kurs vara på 6 eller 7 poäng där 2 poäng skulle gå till C och resten till systemprogrammering. Sedan borde också handledningstiderna ses över. Ett förslag kan vara att tildela X studenter till en handlare. Det bör ses över om C boken är den mest lämpliga. Men som sagt kursen verkar ha varit helt ok.

Nedan följer sammanställningen fråge vis:


Har kursens mål blivit klargjorda för dig?

TOTAL

Ja

Nej

Minns ej

BLANK

80

56

2

21

1

 



Vad tycker du om kursdispositionen? Dvs den tid som las ned på olika avsnitt?

"Den var bra. Tycker dock att kursen enbart borde koncentreras till själva systemprogrammeringen. Man kunde ha en separat C-kurs före denna."
"I huvudsak bra, kanske lite väl långsamt i början vad gällde genomgången av C."
"Script-programmeringen var lite väl kort."
"För lite tid inom IPC...antar att det är mer sånt på Parallellsystem. Kanske dra ned något inom Disk I/O."
"Ganska bra. Lite lite på det som berörde sista labben, dvs delat minne och semaforer"

Kommentar:
7 av 74 som svarade. anmärkte på den tiden C har fått jämfört med Unix delen. Det står i kursplanen att båda delana ska täckas. Samt det står ej specificerat vilket inperativtspråk som studenten kan ha gjort DOA:n i så även om vissa studenter redan kan C så kan man ej räkna med det. Bortset från det så fanns det ett par åtsikter som är medtagna ovan.



Anser du att de förväntningar du hade på kursen har uppfyllts? Om inte, vilka har ej gjort det?


"nja, jag hade hoppats få lära mig lite mer om X11- och socket programmering."
"har lärt mig om Unix vilket för mig kändes som det viktigaste."
"har lärt mig C och blivit en bättre programerare, jag är nöjd :)"

Summerat: Ett par studenter hade trott att det skulle vara mera X-programering. Annars var folk nöjda.



Finns det avsnitt som du tycker varit särskilt svåra? Vilka? På vilket sätt?

"Semforer och IPC, eftersom det är nya sätt att programmera. Intressant område. Tar ett tag att lära sig dock."
"Fork är ganska lurigt och hur felhanteringen ska gå till i barnen och hur föräldern kan få reda på det. Mer om fork helt enkelt för det verkar väldigt centralt i unix.."
"Jag tyckte att det mesta som hade med filstrukturer, i-noder och sånt var svårt."
"Shellprogrammeringen, för lite information - fick gå ut på egen skattjakt för att lösa uppgifterna. Ett kompendium kanske??"
"Filsystemets uppbyggnad, vnode, inode skulle väl kunna se som svårast, men 'straight forward' ändå. Semaforer, delat minne, men dessa har tagits upp på ett lättfattligt sätt! Pekararitmetik, är klurigt också."
"delat minne är svårt eftersom man tappar bort sig i de olika processerna"


Kommentar: Det är till största del Unix aspekterna som har upplevts som svåra.


Till den som ska planera nästa kurs vill jag föreslå!

"Nämn lite mer om hur grafiken fungerar under unix =)"
"Boken är ganska gammal och vissa delar känns aningen förlegade. Det skulle vara bra om man fick veta vad som hänt på 10 år. Vissa IPC:er kanske inte används så flitigt nu för tiden, eller man kanske har andra prioriteter och andra förutsättningar. Det fanns i och för sig läsanvisningar, men en lite mer explicit genomgång skulle ha varit nyttigt."
"Lägg ner mer tanke åt shellprogrammeringen, om den prompt måste vara med förstås."
"Jag anser att man skulle kunna ha extra lektioner eller alternativt en prepkurs i C innan kursen och i stället lägga mera tid på de systemfunktioner som används i praktiken i stället för att jollra med C-syntax i 2 veckor."
"boka fler terminaler och oftare senarelägg deadline för labbarna"
"Lägg ner mer tid på Pipor."


Komentar: En hel del olika föreslag förekom enligt ovan. Det fanns också en del personer som var helt nöjda, som t ex en person skrev: "Inget... eller bjud klassen på tårta!"


Skulle du vilja rekommendera andra att gå kursen?

 

TOTAL

Ja helt klart

Ja

Nja/vet ej

Nej

Absolut inte

BLANK

80

56

18

4

1

0

1



Vilka tidigare kurser har du haft nytta av när du läst denna kurs?

Summerat: De flesta angav DOA, OOP, ML samt kurser i C eller C++ programmering.



Antalet gruppövningar var:


TOTAL

Alldeles för få

För få

Lagom

För många

Alldeles för många

BLANK

80

1

7

66

0

0

6


Har du haft nytta av att gå på gruppövningarna (om du gått)? På vilket sätt hjälpte det dig?
"Ja har varit på Axelsson gruppövningar och han har haft mycket bra sånna upplägg och allt bra på att förklara visa vad det handlar om"
"Ja. Gruppövningarna har innehållit bra tips för hur man ska lösa labbarna. "
"De har hjälpt mig, både inför tenta och laborationer. Man har fått tips + att man fått chans att träna."

Summerat: 60av de 65 som svarade tyckte att gruppövningarna har varit bra.



Vad tycker du om tidsdispositionen under föreläsningarna?

"För mycket om c-repetition, vilket gjorde att föreläsaren fick bråttom och gick igenom snabbt viktiga delar som signaler och IO."
"Bra förutom att de första föreläsningarna gick för långsamt."
"Som vanligt. Det svåra på slutet tenderar alltid att bli för lite av."
"Mycket bra"

Summerat: En klar majoritet tyckte att det har varit en bra tidsdisposition. Det som har dragit ner är delen som har lagts på C.


Var har du för synpunkter på föreläsaren/föreläsarna?

"Bra förläsare. Jag tycker han höll en bra nivå. Förklarade ingående utan att det blir tjatigt, iallafall så jag förstod!"
"Dom har varit mkt bra."
"Duktig, kan sin sak, tydlig och berör lämpliga områden m.a.o. lägger tonvikt vid det viktiga. Pedagogisk, möter studenterna på ett trevligt sätt."

Summerat: Helt godkänd insats av Mikael.



Har du hängt med på föreläsningarna när nytt material presenteras?

"Jepp förutom när MR snackade om semaphorer och synkronisering och poll första ggn, det gick lite för snabbt för att greppa det."
"Ja ganska bra men Mikael pratar lite för fort ibland så ibland var det svårt att hänga med."


Summerat: Så gott som alla hade kunnat hänga med i tempot. ( undrantagen finns ovan )


Har handledarna kunnat ge tillräcklig hjälp?

"Ja dom har varit mycket bra på att förklara speciellt axellson."
"vissa har varit jättebra. Medan vissa har varit lite sämre."
"bra att de rättar noggrannt och tar sig tid att förklara hur saker kan göras bättre duktiga och snälla handledare hemskt sega gruppövningar dock"

Summerat: Det förekommer både klagomål och beröm, För det mesta beröm.


Har det funnits tillräcklig handledningstid?

".... . Men en sak har varit KATASTROF, som student och man läser flera kurser är det inte kul att stå och VÄNTA i ca 1 timme på att få hämta ut en labb. ..."
"Absolut inte, ofta en havtimme trekvarts kö utan för dörrana. Handledningstiderna borde vara mer fördelade så att fler handledningstider funnits dagarna före labbinlämning´, vissa dagar inte en enda tid och ibland flera handledare samtidigt. "

Summerat: ca 50% tyckte att det har funnits tillräckligt med tid men det förekom också en del klagomål på att det har varit för lite tid vilket har skapat köer och att handledningstiderna ej varit bra schemanlagda t ex resulterat i schema krockar.


Vad tycker du om kurslitteraturen? Motivera!

"Kurs litteraturen är suveränt..Lite för tråkigt att läsa men ändå en stor källa av info. Men jag tror att för C-programering den slternativa boken 'A book on C' var bättre än boken 'C-programing language'"
"Advanced programing in the unix environment är ett måste för varje student. Den tar upp allt och massa exempel finnes."
"Nja. Bibeln är ju tokbra men C-boken gillade jag inte ngt vidare. Tyckte bättre om A book on C som jag lånade av en äldrekursare"

Summerat: De åtsikter som framkom av svaren var att Stevens Unix bok var kanon bra. Däremot så förekom det ett par föreslag på att använda "A book on C" instället för nuvarande C bok.


Vad tycker du om kursmaterialet som du fått tillgång till utöver boken?

"Bra att kodexemplena samt gruppövningarna finns på webben."
"Gamla tentor är alltid bra. Men informationen om script-programmering måste samlas ihop bättre. Man fick klicka runt mycket i unix-introduktionen för att hitta information."
"Icke befinligt, vill ha oh-blad på internet också."


Summerat: Det som fanns uppskattades.


Skummade du igenom de delar av boken som skulle behandlas före resp. föreläsning?
"Någon enstaka gång. Det var lite svårt då material för nästa föreläsning lades upp på webben ofta sent på dagen innan."

Kommentar: 57 av 69 svarade att de inte skummat iförväg. En person svarade med citatet ovan.


Kunde du koppla de obligatoriska uppgifterna (laborationerna) till teorin?

"Ja, de gick hand i hand för en gångs skull."
"Speciellt vill jag ge en eloge till mish. Mkt bra laboration"
"Ja, dock låg föreläsningarna efter, så teorin till laborationen kom oftast efter labben lämnats in :)"

Summerat: av de 70 som svarade så var nästa samtliga positiva ( även om i varierande utsträkning ).


Har det funnits tillräckligt med tid avsatt för de obligatoriska uppgifterna (laborationerna)?

"nej det har blivit många långa kvällar"
"Nej, absolut inte. Denna kurs ska bsolut inte kallas halvfartskurs. Jag har lagt ner nästan heltidsjobb under hela kurstiden."
"Helt ok om man börjat i tid."
"fritid........"

Summerat: ca 30 % av de som svarade tyckte att det inte har funnits tillräckligt med tid.


Hur var svårighetsgraden på de obligatoriska uppgifterna (laborationerna)?

 

TOTAL

För lätt

Lätt

Lagom

Svår

För svår

BLANK

80

0

4

36

32

5

3



Har du lärt dig något av de obligatoriska uppgifterna (laborationerna), var de givande?

"Mycket. Väldigt bra labbar. Tyvärr så tar det mycket tid. Men de var viktiga."
"Ja, dom har varit givande. Man lär sig bra när man jobbar praktiskt. Men dom var alldeles för många för halvfart.Alla hade omöjligt kunna ingå i en helfartskurs på 5p!!"
"Ja, de var mycket givande"
"Har lärt mig mest av laborationerna."

Summerat: Samtliga har upplevt labbarna som givande om inte mycket givande. Även om det har varit kort om tid.


Vilken programtillhörighet har du?

 

TOTAL

Teknisk datavetenskap

Datavetenskapliga programmet

Interaktion och design

Annat program

Fristående kurs

BLANK

80

47

14

0

14

4

1


Hur viktigt kändes kursen för ditt program (eller studier)?

 

TOTAL

Oviktigt

Ganska oviktigt

Varken viktigt eller oviktigt

Ganska viktigt

Mycket viktigt

BLANK

80

0

1

4

34

39

2


Hur viktigt var det du lärde dig för dig själv och den personliga utvecklingen?

 

TOTAL

Oviktigt

Ganska oviktigt

Varken viktigt eller oviktigt

Ganska viktigt

Mycket viktigt

BLANK

80

1

2

7

39

26

4


Har du lärt dig hur du praktiskt kan använda kunskapen?

 

TOTAL

Nej

En liten del

Ganska mycket

Största delen

Ja

BLANK

80

0

8

17

21

31

2


Hur många timmar/vecka i genomsnitt har du lagt ned på denna halvfartskurs (undervisning + självstudier)?

 

TOTAL

0-5

6-10

11-15

16-20

21-25

26-30

Mer än 30

BLANK

80

1

4

15

15

16

13

10

980


I jämförelse med andra kurser var arbetsbelastningen på denna kurs:

 

TOTAL

Mycket lägre

Lägre

Lika

Högre

Mycket högre

BLANK

80

0

0

22

37

16

4


Min egen insats på kursen bedömmer jag som:

 

TOTAL

Inte alls bra

Mindre bra

Ganska bra

Bra

Mycket bra

BLANK

80

3

4

15

40

16

1