Back
  Comments from lecturer inline in red below.
Survey ID 1393
Title COMP3231/9201/3891/9283 15s1
Description End of semester Operating Systems course survey.
Anonymous Yes
Fill Ratio 79% (131/165)
# Filled 131
# Suspended 3
# Not Filled 31
(required) indicates required field

Please provide us with as much constructive feedback as you can. We do read these surveys and act on the information you provide. Thanks for your input.
1. Quick Evaluation
1. Give a high rating if you have a good opinion of something (e.g. interesting, useful, well-structured, etc.). Give a low rating if you have a bad opinion of something (e.g. too slow, confusing, disorganised, etc.)

Question type : Single answer -- Radio Button
Very similar to previous years.
Of minor note:
  • Tutorials were rated slightly lower than previously
  • ASST3 also rated a little lower than previous
  Excellent
Satisfactory
Poor N/A N/F
Lecturer: Kevin Elphinstone 66 (50%) 50 (38%) 14 (11%) (1%) (0%) (0%) 0 (0%)
General OS lectures 34 (26%) 64 (49%) 24 (18%) (3%) (1%) (3%) 0 (0%)
Your tutor 36 (27%) 22 (17%) 29 (22%) (6%) (5%) 31 (24%) -1 (-1%)
Tutorials 22 (17%) 43 (33%) 22 (17%) 13 (10%) (2%) 25 (19%) 3 (2%)
Asst1: Synchronisation 43 (33%) 63 (48%) 24 (18%) (2%) (0%) (0%) -1 (-1%)
Asst2: Syscalls 30 (23%) 58 (44%) 32 (24%) (6%) (2%) (1%) -1 (-1%)
Asst3: Virtual Memory 40 (31%) 49 (37%) 23 (18%) 14 (11%) (5%) (0%) -1 (-1%)
Textbook 10 (8%) 17 (13%) 27 (21%) (4%) (2%) 70 (53%) 0 (0%)
Computing resources 25 (19%) 44 (34%) 40 (31%) (4%) (3%) 13 (10%) 0 (0%)
Course web page 33 (25%) 53 (40%) 38 (29%) (3%) (1%) (1%) 1 (1%)
Piazza message board 74 (56%) 40 (31%) 14 (11%) (2%) (1%) (0%) 0 (0%)
Wiki 33 (25%) 61 (47%) 26 (20%) (6%) (1%) (2%) 0 (0%)
Help with technical questions 44 (34%) 53 (40%) 23 (18%) (2%) (1%) (6%) 0 (0%)
Lecture slides 39 (30%) 60 (46%) 24 (18%) (4%) (0%) (1%) 2 (2%)
Lecture video capture 68 (52%) 39 (30%) 15 (11%) (2%) (0%) (5%) 0 (0%)
Operating Systems overall 43 (33%) 76 (58%) 10 (8%) (1%) (1%) (0%) 0 (0%)
2. General
2. Would you recommend this course to another student such as yourself?

Question type : Single answer -- Radio Button
Very similar to previous years
Yes 124 (95%) chart
No (5%) chart
N/F 0 (0%)
3. What were the best things about this course?

Question type : Long-answer

Answer at the bottom page (120 comments)
4. What were the worst things about this course?

Question type : Long-answer

Answer at the bottom page (112 comments)
5. Did you get the impression that the staff (lecturer, tutors, consultants) tried their best to answer your questions and help you? Please tick N/A if you did not attend lecture, consults, tutes)

Question type : Single answer -- Radio Button
Similar to previous years
  Strongly
Agree

Neutral
Strongly
Disagree
N/A N/F
Lectures 74 (56%) 49 (37%) (4%) (1%) (0%) (2%) -1 (-1%)
Tutorials 54 (41%) 32 (24%) (6%) (3%) (0%) 34 (26%) -1 (-1%)
6. How does the quality/value of this course compare to other....

Question type : Single answer -- Radio Button
I bit of a downtick, compared to previous years (10%) compared to courses in general. I suspect this might be related to the large cohort this year?
  Among
the best

Average
Among
the worst
N/F
Year 3 COMP courses 79 (60%) 33 (25%) 18 (14%) (1%) (0%) 0 (0%)
COMP courses in general 71 (54%) 43 (33%) 17 (13%) (1%) (0%) -1 (-1%)
Courses in general 73 (56%) 45 (34%) 12 (9%) (2%) (0%) -1 (-1%)
7. What background knowledge do you think you were missing that would have helped you in this course? Are the official pre-requisites a suitable preparation?

Question type : Long-answer

Answer at the bottom page (108 comments)
8. Consultations were underutilised during semester. Please comment on why you did not take advantage of the available consultations. (e.g. inconvenient time, did not need, not useful, piazza sufficient, etc..).

Question type : Short-answer

Answer at the bottom page (121 comments)
9. Given the material covered in the course, please rate how helpful the following components/sources were in understanding the material.

Question type : Single answer -- Radio Button
Interesting - the textbook is the outlier here. Most student seem indifferent to it. I don't find this an issue as I suspect it is more related to readily available source of info on the net. Though I can't really confirm this either way.

I should survey the textbook more deeply next year as to why?
  Very helpful Helpful Neither helpful or unhelpful Unhelpful N/F
Lectures 66 (50%) 54 (41%) (5%) (1%) 3 (2%)
Lecture video captures 63 (48%) 52 (40%) 11 (8%) (0%) 5 (4%)
Tutorials 36 (27%) 56 (43%) 26 (20%) (5%) 7 (5%)
Tutorial questions 35 (27%) 77 (59%) 14 (11%) (0%) 5 (4%)
Assignments 72 (55%) 49 (37%) (5%) (0%) 3 (2%)
Sample exam questions 50 (38%) 59 (45%) 16 (12%) (0%) 6 (5%)
Textbook (6%) 31 (24%) 77 (59%) (5%) 9 (7%)
Other sources on the Internet 31 (24%) 57 (44%) 32 (24%) (4%) 6 (5%)
3. Lectures
10. Is the current mode of lecture delivery, using computer-projected slides, effective?

Question type : Single answer -- Radio Button

Yes 126 (96%) chart
No (2%) chart
N/F 2 (2%)
11. Was the subject material (lecture notes, information on the subject web page, textbook, tutorials, manuals, etc.) sufficient to follow the course?

Question type : Single answer -- Radio Button

Always 35 (27%) chart
Most of the time 82 (63%) chart
Sometimes 10 (8%) chart
Rarely (1%) chart
Never (0%) chart
N/F 3 (2%)
12. Did the explanations in the lecture help you to understand the subject material? (please choose N/A if you generally did not attend lectures)

Question type : Single answer -- Radio Button

Always 34 (26%) chart
Most of the time 65 (50%) chart
Sometimes 16 (12%) chart
Rarely (1%) chart
Never (0%) chart
N/A 12 (9%) chart
N/F 3 (2%)
13. Tick any statement below that is true for you in regard to lecture attendance and the lecture videos (you can tick more than one).

Question type : Multiple answer -- Check Box
Confirmed that students find the videos helpful, with very few students not taking advantage of them.
I did not use videos 17 (13%) chart
I had a clashing timetable, and used the video to regularly catch up. 11 (8%) chart
I nearly always used the videos and skipped the lectures. 17 (13%) chart
I generally attended lectures, but I FREQUENTLY used the videos replay material I did not understand in the lecture. 28 (21%) chart
I generally attended lectures, but I OCCASIONALLY used the videos replay material I did not understand in the lecture. 71 (54%) chart
14. If you have not been attending lectures, were there any factors that influenced your decision not to attend, not including the availability of lecture videos?

Question type : Long-answer

Answer at the bottom page (71 comments)
15. Any suggestions for improving lectures (including the lecture video captures)?

Question type : Long-answer

Answer at the bottom page (70 comments)
4. Tutorials
16. The aim of the tutorials is to help you understand the subject material better. Please convey how they performed in this role

Question type : Single answer -- Radio Button

  Strongly Agree
Neutral
Strongly Disagree N/A N/F
The tutorials helped me understand the material 34 (26%) 53 (40%) (7%) (2%) (2%) 25 (19%) 5 (4%)
The questions were of appropriate difficulty 33 (25%) 52 (40%) 18 (14%) (0%) (0%) 23 (18%) 5 (4%)
The questions should have increased difficulty (3%) 10 (8%) 48 (37%) 35 (27%) (4%) 23 (18%) 6 (5%)
The number of questions was appropriate 13 (10%) 64 (49%) 20 (15%) (3%) (2%) 23 (18%) 5 (4%)
The number of questions should be expanded (4%) 22 (17%) 55 (42%) 18 (14%) (2%) 23 (18%) 6 (5%)
I always prepared for the tutorials (5%) 20 (15%) 33 (25%) 28 (21%) 12 (9%) 27 (21%) 5 (4%)
Class participation is important for understanding the material 20 (15%) 33 (25%) 21 (16%) 19 (15%) (7%) 24 (18%) 5 (4%)
Occasional tutorials being out of sync with lectures (due to public holidays etc..) is not a problem 11 (8%) 42 (32%) 29 (22%) (5%) (5%) 29 (22%) 7 (5%)
17. Please rate how effective your tutor was. Check N/A if you did not deal with the particular tutor.

Question type : Single answer -- Radio Button
We have two tutors of amazingly high standard. I'll provide some feedback to the tutors with the relatively "normal" feedback.
  Excellent
OK
Poor N/A N/F
Tutor A 21 (16%) 10 (8%) (3%) (0%) (0%) 78 (60%) 18 (14%)
Tutor B 20 (15%) (4%) (1%) (0%) (0%) 91 (69%) 14 (11%)
Tutor C (2%) (6%) 20 (15%) (2%) (5%) 80 (61%) 13 (10%)
18. Any suggestions for improving tutorials?



Question type : Long-answer

Answer at the bottom page (64 comments)
5. Assignments
19. Please rate the level of difficulty of the assignments

Question type : Single answer -- Radio Button
Pretty similar to previous years.
  Too easy
Just right
Too difficult N/F
Asst1: Synchonisation (2%) 38 (29%) 76 (58%) (7%) (1%) 4 (3%)
Asst2: System Calls (0%) (2%) 71 (54%) 49 (37%) (4%) 4 (3%)
Asst3: Virtual Memory (0%) (2%) 48 (37%) 52 (40%) 24 (18%) 4 (3%)
20. How well was each assignment specified (taking into account a significant part of the assignments is understanding what to do from the commented code itself)?

Question type : Single answer -- Radio Button

  Very clearly
OK
Confusing N/F
Asst1: Synchonisation 48 (37%) 50 (38%) 26 (20%) (2%) (0%) 4 (3%)
Asst2: System Calls 14 (11%) 37 (28%) 39 (30%) 24 (18%) 13 (10%) 4 (3%)
Asst3: Virtual Memory 20 (15%) 36 (27%) 26 (20%) 25 (19%) 19 (15%) 5 (4%)
21. Did the supporting material (manuals, notes, comments in code) provide sufficient information for solving the assignment?

Question type : Single answer -- Radio Button

  Very much
Somewhat
Not at all N/F
Asst1: Synchonisation 54 (41%) 43 (33%) 26 (20%) (2%) (1%) 5 (4%)
Asst2: System Calls 25 (19%) 38 (29%) 46 (35%) 13 (10%) (4%) 4 (3%)
Asst3: Virtual Memory 21 (16%) 46 (35%) 34 (26%) 15 (11%) 11 (8%) 4 (3%)
22. How confident were you with the following low-level and general programming concepts PRIOR to the course.

Question type : Single answer -- Radio Button
Pretty similar to previous years with students having some 'C' programming experience, but little experience invoking system calls, debugging, and working with larger code bases.
  Expert (e.g. > 100hrs) Solid experience (e.g. < 100hrs) Some experience (e.g. < 10hrs) Little to no experience (e.g. < 1hr) Never heard of it before N/F
C programming 46 (35%) 67 (51%) 13 (10%) (1%) (0%) 4 (3%)
C pointers 33 (25%) 61 (47%) 32 (24%) (1%) (0%) 4 (3%)
C pointer arithmetic 25 (19%) 56 (43%) 34 (26%) 11 (8%) (0%) 5 (4%)
Compilation toolchains (gcc, ld) 11 (8%) 33 (25%) 57 (44%) 24 (18%) (2%) 4 (3%)
Debugging with GDB or similar (3%) 14 (11%) 48 (37%) 55 (42%) (5%) 4 (3%)
Application programming using system calls (5%) 24 (18%) 24 (18%) 48 (37%) 24 (18%) 5 (4%)
Assembler programming (on any platform) (5%) 47 (36%) 45 (34%) 25 (19%) (2%) 4 (3%)
Source code version control 21 (16%) 38 (29%) 34 (26%) 21 (16%) 12 (9%) 5 (4%)
Source code navigation (cscope, gtags, ctags or similar) 12 (9%) (4%) 15 (11%) 43 (33%) 52 (40%) 4 (3%)
23. How confident are you with the following low-level and general programming concepts AFTER the course?

Question type : Single answer -- Radio Button
Nice!! A "collateral benefit" of doing OS has been a significant increase in confidence in general software engineering skills.
  Expert (now part of your programming toolbox) Could use the concept elsewhere with a little effort Now roughly know what it is Still have no idea N/F
C programming 78 (60%) 47 (36%) (2%) (0%) 4 (3%)
C pointers 72 (55%) 54 (41%) (1%) (0%) 4 (3%)
C pointer arithmetic 63 (48%) 57 (44%) (5%) (0%) 5 (4%)
Compilation toolchains (gcc, ld) 23 (18%) 75 (57%) 27 (21%) (2%) 4 (3%)
Debugging with GDB or similar 31 (24%) 69 (53%) 24 (18%) (2%) 5 (4%)
Application programming using system calls 26 (20%) 68 (52%) 31 (24%) (2%) 4 (3%)
Assembler programming (on any platform) 17 (13%) 74 (56%) 34 (26%) (2%) 4 (3%)
Source code version control 51 (39%) 51 (39%) 24 (18%) (1%) 4 (3%)
Source code navigation (cscope, gtags, ctags or similar) 31 (24%) 38 (29%) 43 (33%) 15 (11%) 4 (3%)
24. Which source code version control system were you most familiar with BEFORE taking the course.

Question type : Single answer -- Radio Button
Again, while git is a "winner", I think it is too complex to expect 29% of students to just "pick it up" as part of the course.

I might reconsider, but I find git has too many ways to shoot oneself in the foot.

git 93 (71%) chart
hg (mercurial) (1%) chart
svn (subversion) (7%) chart
other (4%) chart
I had not used version control before 19 (15%) chart
N/F 4 (3%)
25. The aim of the assignment work was for you to develop practical skills with the concepts covered in lectures.

Question type : Single answer -- Radio Button
Pretty similar to previous years
  Not really
Somewhat
Very much N/F
Did the assignment work help with this? (0%) (5%) 21 (16%) 37 (28%) 62 (47%) 5 (4%)
26. Please indicate how much time you spent on ALL the assignments combined, for each of the following aspects of the solving the assignments.

Question type : Single answer -- Radio Button
Interesting. The "average" student spent about 73 hours per semester on the assignments, about 5.6 hours per week.

My main take away is that debugging is the most time consuming activity, and it should not be. Acquiring debugging skills is a bigger issue than just (E)OS.

This is backed up by activity on Piazza being mostly related to debugging.

I'll have a think about how OS can add improved debugging as another side-effect of the course.


  < 1 hour 2-3 hours 4-8 hours 9-15 hours 16-30 hours 30+ hours N/F
Reading/comprehending the spec. 10 (8%) 41 (31%) 39 (30%) 22 (17%) (5%) (5%) 5 (4%)
Following/answering the guided questions to the source code. 24 (18%) 51 (39%) 29 (22%) 14 (11%) (3%) (1%) 8 (6%)
Further browsing of the OS161 source code to understand the assignment task. (3%) 29 (22%) 46 (35%) 27 (21%) 10 (8%) 10 (8%) 5 (4%)
Designing a solution (5%) 24 (18%) 44 (34%) 25 (19%) 15 (11%) 12 (9%) 5 (4%)
Coding (0%) 10 (8%) 35 (27%) 39 (30%) 29 (22%) 12 (9%) 6 (5%)
Debugging (0%) (5%) 23 (18%) 38 (29%) 33 (25%) 25 (19%) 5 (4%)
Testing using the provided tests (6%) 49 (37%) 39 (30%) 20 (15%) (6%) (2%) 4 (3%)
Writing your own tests 61 (47%) 43 (33%) 19 (15%) (2%) (1%) (0%) 4 (3%)
Learning assumed knowledge (e.g. C pointer programming, casting, source code browsing) 53 (40%) 46 (35%) 18 (14%) (5%) (1%) (2%) 4 (3%)
27. Any suggestions for improving the assignments?

Question type : Long-answer

Answer at the bottom page (89 comments)
28. I got very little feedback on the support videos I recorded this semester (subversion and asst3 walkthrough). Now is your chance to encourage or discourage me spending more time doing them, or suggest improvements.

Question type : Long-answer

Answer at the bottom page (109 comments)
6. COMP3891/9283 Extended Operating Systems
Skip this section if you did not do COMP3891/9283 Extended Operating Systems.
Extended OS aims to be an informal lecture on selected advanced topics from real systems, research areas, or state of the art. It also aims to cover OS/161 in more depth to prime students for the advanced assignments.
29. Please answer the following.

Question type : Single answer -- Radio Button
  • Automarking is still unpopular
    • I can't do much about that given the rise in enrolments and limited resources
  • A mild desire for an EOS tutorial exists, though I do encourage you to sit in on normal tutorials if you need it.
  • EOS staying "less structured" viewed more favourably than in past years.
  • The size of the EOS assignments also viewed more favourably than previously. I have reduced their scope this year.
  Strongly Agree Agree Indifferent Disagree Strongly Disagree N/F
EOS should be assessed differently to OS. (4%) 13 (10%) 15 (11%) (2%) (1%) 94 (72%)
Compared to OS, completing EOS should indicate a greater OS understanding and level of achievement. (4%) 22 (17%) (3%) (0%) (0%) 100 (76%)
Having separate exams is a good way to differentiate EOS from OS. (4%) 14 (11%) (7%) (1%) (2%) 100 (76%)
Requiring completion of a subset of the advanced assignments is a reasonable way to achieve a higher "bar" for EOS. (6%) 12 (9%) (5%) (1%) (2%) 101 (77%)
Only automarking the advanced assignments is OK. (1%) (3%) 10 (8%) 12 (9%) (3%) 100 (76%)
EOS should have tutorials in addition to the extra lecture. (4%) (6%) 14 (11%) (3%) (0%) 100 (76%)
EOS should be more formal and structured like OS. (2%) (5%) (5%) 15 (11%) (0%) 100 (76%)
The advanced assignment components were too large. (4%) (5%) 10 (8%) (5%) (2%) 100 (76%)
The advanced assignments should be worth a higher fraction of the EOS mark. 10 (8%) (3%) (7%) (5%) (2%) 100 (76%)
30. How would you rate extended OS as a whole?

Question type : Single answer -- Radio Button
Similar to previous years
Excellent (7%) chart

17 (13%) chart
Average (3%) chart

(2%) chart
Poor (0%) chart
N/A (2%) chart
N/F 95 (73%)
31. Any suggestions for improving COMP3891/9283 Extended OS?

Question type : Long-answer

Answer at the bottom page (23 comments)
7. Exam
32. Any comments on the exam sample questions provided on the wiki as a study aid?

Question type : Long-answer

Answer at the bottom page (85 comments)
33. Answer the following questions to convey your opinion of the final exam (or leave blank if submitting the survey before the exam).

Question type : Single answer -- Radio Button
Pretty similar to previous years.
  Strongly Agree Agree Neutral Disagree Strongly Disagree N/F
The exam overall was too hard (1%) (4%) 39 (30%) 15 (11%) (0%) 71 (54%)
The exam overall was too short - i.e. it should be 3 hours (4%) 11 (8%) 14 (11%) 26 (20%) (2%) 72 (55%)
The exam should contain more True/False questions (2%) (2%) 20 (15%) 21 (16%) 10 (8%) 74 (56%)
The exam gave me the oppurtunity to demonstrate my understanding of operating systems (4%) 31 (24%) 18 (14%) (2%) (0%) 75 (57%)
I think my exam result will be representative of my operating systems knowledge (3%) 17 (13%) 25 (19%) (7%) (1%) 75 (57%)
The final assessment should be weighted more towards the exam (0%) (2%) 19 (15%) 29 (22%) (5%) 75 (57%)
34. Do you have any particular comments you would like to make about the exam?

Question type : Long-answer

Answer at the bottom page (46 comments)
8. Miscellaneous
35. This year we used Piazza as an additional medium for student support. Please choose one of the following.

Question type : Single answer -- Radio Button

Keep using Piazza. 113 (86%) chart
Get rid of it. (2%) chart
I do not have an opinion of it. 11 (8%) chart
N/F 4 (3%)
36. Any comments on the use of Piazza?

Question type : Short-answer

Answer at the bottom page (73 comments)
37. We always look for evidence of cheating in assigments and try or best to catch and penalise cheaters. Please tell us what you think about the treatment of cheaters in the course.

Question type : Single answer -- Radio Button

Too soft (1%) chart

(5%) chart
Just right 110 (84%) chart

(1%) chart
Too harsh (0%) chart
N/F 13 (10%)
38. What do you think your final result will be for the course?

Question type : Single answer -- Radio Button

HD 15 (11%) chart
DN 54 (41%) chart
CR 33 (25%) chart
PS (6%) chart
FL (0%) chart
No Idea 17 (13%) chart
N/F 4 (3%)




Back to Summary
3. What were the best things about this course?

1: interesting syllabus

2: Very interesting and great course materials

3: It was very interesting to learn about the content

4: In depth and really hands on

5: Assignments which help us to study for the exam at the same time.

6: Learning the fundamentals of operating systems and synchronisation is good experience which I would recommend to any CSE student, good course structure, good real life examples, exposure to a large code base as it would be in workplace

7: Very practical, assignments were rewarding and examples were relevant

8: having assignments in general, with a high weigting rather than 100% focus on meaningless theory

9: Assignments are challenging but rewarding

10: The lecturer. He was very thoughtful when it came to preparing lecture material and videos and he was fairly prompt with answering questions on piazza.

11: Well-designed assignment and well-organised content

12: The challenging programming, learning the stuff behind the scenes.

13: Perhaps I'm a bit weird but I really loved concurrency. The lectures were great, some were better than others. The not as good lectures had a greater focus on surface learning, this is how it's done and that's it. The best lectures were the ones where I felt engaged and really understood what was happening (Semaphores, Paging, Concurrency, Buffer Caching). Piazza was excellent, that saved me hours worth of time.

14: Concepts learned Practical situations Exam (surprisingly) Overall, enjoyed learning the content

15: Challenging yet enjoyable assignments.

16: Challenging assignments. Teaches useful skills for use beyond OS.

17: It's a nice return to the low-level gritty stuff of first year, plus it's all practical understanding of how computers do magic.

18: Assignments

19: Practical and group based work

20: Assignments were challenging and interesting. The tutor, Tutor B, was helpful and knew her stuff.

21: The amount of content covered within a semester. I felt I got a really good grasp on Operating Systems in a very effective manner. Providing tests was amazing - really helped.

22: The assignments provided good experience with navigating and understanding a large code base written by someone else.

23: The content was good and it was lectured well.

24: Overarching coverage of components that make up an operating system. Without looking at implementation specifics, things were fairly straight forward.

25: Real tough work, and really can improve ones' skill.

26: No labs, with an emphasis on becoming familiar with the course material at your own pace.

27: Interesting content. It was enjoyable learning about the low level stuff.

28: It was organised well.

29: Useful and interesting content Interested and helpful staff

30: The content was interesting and useful

31: I learned the most from the tutorials, both content wise and how to actually do the assignments.

32: assignments

33: Really good range of topics. I feel like I have a much better understanding of how the OS does its job. Also, while it could be intimidating to first start each assignment, as you had to get a feel for where the moving parts were in the huge code base, the fact that we were actually working on a proper OS was really good. Kevin marking up the slides as he went through was really helpful. You could go back and watch the logic in the recordings, incase you forgot the steps. Tutorials really good. Good topics/questions and the tutor (Tutor A) was great.

34: The actual content being taught was very interesting, although complex at times but was taught in a clear manner.

35: The lectures were concise and very easy to follow. The recordings were of very good quality, much better than any other course has done!

36: Relevant to my area of interest

37: Interesting and useful contents. I actually learnt a lot from this course.

38: It was learning about operating systems, in particular the way we went about learning about them was great. OS's are intimidating and everything is interlinked, but the course definitely broke up each part really well, and explained basic concepts before delving into more complex ones.

39: Great lecturer, interesting content, and the case study's were great to bring some practicality and real world knowledge to the theory

40: It challenged me

41: Fundamentally interesting subject to learn Lecture recording is always nice Lecturer himself is also excellent

42: - Good coverage and overview of how OS works - Concepts were well explained by the lecturer - Lecturer has good pacing and is organised

43: Assignments are well designed, yet more interesting if it's Linux.

44: Very interesting introduction to operating systems. Content was thorough and assignments were interesting.

45: The challenging nature of the assignments. Once you understood what was happening and finished the task there was a real sense of accomplishment.

46: Piazza message board

47: Lots of hints given for assignments

48: The assignments.

49: It made me work had, and they threw us in the deep end, but that was great. The course was extremely interesting.

50: Kevin

51: The lecturer was fantastic and the course covered everything that I hoped to learn from the OS course.

52: contents are interesting Programming assignments are fun, difficult but not overwhelming

53: Great and useful lecture materials.

54: Really interesting content, good help on piazza from lecturer and classmates

55: Kevin was a fantastic lecturer and was extremely helpful on the course forum. The concepts were taught in a clear and concise manner, and it was always obvious how this was relevant to current OS design.

56: Content was interesting and informative, many useful concepts to be learnt.

57: Lectures and course content presented in a very clear logical way. Found the course content to be very interesting, plus Kevin is an excellent lecturer.

58: Helps me think critically

59: Challenging content, some of the content is essential fundamental knowledge.

60: Video for assignment 3 was immensely helpful. Clear and interesting content.

61: Learning interesting ideas about how OSs work, synchronisation, scheduling and the TLB particularly.

62: The content were very interesting.

63: Interesting and challenging theoretically while still containing a good deal of programming.

64: Lecturer, best lectures + recordings I've had.

65: interesting, challenging assignments where just enough assistance is provided.

66: recorded lectures

67: Having hands on experience with system level code. The content we learn is quite useful.

68: Tutorials and lectures, and group assignments in general.

69: Nothing in particular honestly.

70: Very organised, topics nicely segmented and followed on from previous.

71: The Hands-on approach to coding and OS implementation

72: learning about the stuff that would be difficult to learn elsewhere - e.g. virtual memory and file

73: The assignments

74: Good lectures, good consultations.

75: Online recordings and the amount of help the lecturer gave on the piazza forums. Helped significantly and answered any questions I had concerning assignments and course content.

76: course community

77: Content was interesting, pacing (except for asst3 3) was good, lecturer was engaging.

78: Multiprogramming concepts including locks, dataraces, synchronisation techniques and methods to prevent deadlock. Also the appreciation of scheduling used for applications other than OS.

79: The assignments

80: It is hard.

81: Lecture recordings with most examples visible in the lecture recording (unlike a lot of other courses which do examples on the blackboard).

82: The content and clarity

83: Enough practical assignments to help us understand.

84: Assignments, engaging lecturer

85: Good lecturer who explained/communicated the content well

86: The assignments were very interesting, the lecture content was laid out in such a way that it was easily understandable.

87: Learning the basic concepts for the first time really opens your eyes to the operating systems side of computing.

88: Practical, challenging

89: Very interactive assignments, that aided the material very well. Fastest response time on the piazza forum of any courses done so far.

90: assignment and quick respons from piazza

91: The projects are really great experience. The theory is well taught and interesting. Good to learn about concurrency.

92: Variety of OS Topics Covered

93: Everything was taught clearly and concisely. Overall I found the course rewarding towards understanding the concepts behind programming for different operating systems.

94: Lecturer has hands on experience as well as an appreciation for quality teaching

95: interesting course, engaging lectures

96: Interesting Content that is very useful for future reference

97: I liked the lecture video captures because even if I can't follow along in class I know I can always look back and relearn what I didn't understand.

98: Technical, Interesting content, Kevin is genuinely passionate about teaching the course

99: video capture of the lectures was good for going over a lecture again

100: Good overview of operating systems. Very interesting.

101: Feeling of completing an assignment (or at least thinking you've done it correctly).

102: The breadth of concepts that are not OS specific (Eg. Synchronisation, Optimisation via understanding of fundamentals).

103: Getting to understand the low level details of an OS.

104: good content

105: The support and the content

106: The lectures, and applications for the concepts given. The projects/assignments were also very interesting.

107: Assignments

108: Rich knowledge for students to understand OS

109: The content. It was exactly what I wanted to learn

110: Challenging and interesting assignments on a real codebase.

111: The Tutorials were very helpful.

112: Clarity and reinforcement of information (lecture, tutorial and assignments complementing eachother). Tutor and lecturer were both knowledgeable and helpful.

113: The best things, were learning about the different sections of the OS, how it works.

114: The ability to delve into the low level aspects which is helpful for any electrical student.

115: The extremely practical and hands-on approach to learning. Being able to actually implement the features that we learn about in theory on a nice, simplified OS is a great way to really solidify our understanding of the theory. Kevin was very responsive to questions on Piazza and provided all the necessary resources for us to complete the tasks (without making it too obvious or easy)

116: The assignments were very interesting, and quite challenging. The lecture content, in places had some very interesting concepts.

117: The assignments were challenging and very interesting. We covered a broad range of important and interesting content as well.

118: The lecturer, the content, the assignments.

119: The Assignments particularly because of the great support we were given with them through piazza and great tutorials. Tutorials themselves were also fantastic.

120: The resources were killer, as in seriously great. This is helped primarily by the fact that there is a lot of talent at UNSW for OSs, secondarily by the fact that the course is arranged so well (i.e. assignments are calibrated perfectly and time-tested) and thirdly because the CSE program is structured well enough to bring students to the level (within a certain small epsilon) required of OS.
4. What were the worst things about this course?
Noted 1: Tutorials - hard to understand tutor
My aim is to record a walk-through for assignment 2 in the future. 2: Assignment 2 particularly felt overly complicated due to the foreign code base. I understand getting familiar with the code base is part of the challenge, but this assignment felt like it went too far this aspect. A video or textual guide describing what the existing code provided would have been greatly appreciated. I did not find the answers to the tutorial questions or the FAQ to be sufficient.
Wish you defined "harder" stuff more precisely. 3: Easy stuff was taught well, harder stuff wasn't.

4: Assignment due dates were always a week after the due dates for AI assignments.

5: The assignments. They seemed quite helpful at first and I did learn stuff from them, though they turned into a massive debugging headache where most of the time was just finding stupid small bugs (I got very little out of this bug finding)

6: Lectures could be a bit more interesting

7: Attending tutorial is somewhat boring and redundant aside of getting tutorial mark, which does not make sense to be one of the marking criteria in this course.
You have the option to submit git diff, it was described (but unsupported), and students have used it. 8: SVN is weird. Replacing it with git, or having the option to submit git diffs, would be great.

9: Assignments too hard

10: Assignment 3. Actually, it was more like a love-hate relationship in my case.

11: Harmonic average for marking.Variance between lectures (eg some lectures learning interesting and difficult things, others learning ideas that a 3rd year CS could be reasonably expected to know)

12: Participation marks for tutorials.

13: The vast amount of theory that just has to be memorised

14: I think we should have been encouraged to use git in the assignments, and more support should have been provided for it. Subversion doesn't work well for sharing code in a group the way git does.

15: The workload was a lot larger than other comp courses this semester, assignments took roughly 2 - 3x as long to complete when compared to other comp courses.

16: I found the assignments were extremely difficult (Not an excellent student, but also not terrible and probably spent about 45+ hours for assignment 2 and 3, 90+ between my partner and I).

17: The questions in piazza sometimes no one answers

18: Portions of the extended course high workload for minimal marks. (Asst2.)

19: Obviously assignments were time-pressurised, as they have to be given a) the course requirements and b) the requirements of other subjects. However, OSs are not a rushed art form: too much emphasis on shorter deadlines may incorrectly prioritise shipping dates over OS correctness and efficiency.

20: the assessment was very rough - assignments were time consuming and hard, and extended sections weren't worth the time and effort (2.5% of total mark each, and took over 15 hrs per student.. not worth completing if you have other priorities) - i would suggest either making extended sections marked on "attempt", ie if you've done 5 hrs or so of work, you should get the marks, or simply make it easier - the base assignments already cover a lot of material anyway

21: Having to write our own test cases for things... (yes, yes, we're all mature adults who can do that without handholding, but it still sucks).

22: n/a

23: Lectures were very dry, not much reading/writing actual code.

24: No toolchain for OS161 for Mac OSX - I can't really blame you for that though. Bit of a nitpick, but it would be awesome if you switched to Git instead of SVN. It's widely used enough in industry now to be something useful for most students to learn anyway.

25: Confusing assignment specifications

26: Late assignment penalty deducting marks rather than capping marks Assignments were ambiguous at certain points Assignment 3 was a nightmare Harmonic mean Negative marking in exam MCQ

27: Too many lecture slides, revision was difficult. Too many misc facts to remember.

28: In other courses when given an Assignment, it's instantly clear WHAT has to be done and it's up to me to deduce HOW. At the start of every Assignment in OS I was asking myself WHAT do I have to do. I understand that "Yes I have to implement syscalls" but WHAT do I do to accomplish that? I would have liked a little more guidance at the start of Assignments. Once we worked out what we had to do, we could stop bashing our heads against bricks and get to the actually challenging parts.

29: Lots of content

30: The tutorials. The way that participation was marked did not encourage participation at all. The tutor marked participation if you answered a tutorial question. While this meant that each student had to prepare for the tutorial if they wanted a mark, at the same time the question to student ration wasn't equal enough to support this marking scheme and tutorials became a stressful competition to answer questions. Furthermore, students who asked meaningful questions were not marked for participation either, which meant that students no longer cared to ask meaningful questions/pay attention during the tutorial if they already got their participation mark.

31: Assignments are time consuming

32: harmonic mean, incredibly boring course content, utterly useless assignment specs, meaningless puzzles instead of clear cut tasks, mixing undergrads with postgrads and extended nerds, lecturer assumes we are coding gods and have been using linux since kindergarten, harmonic mean, and did i mention harmonic mean? oh and ... harmonic mean,

33: Assignments had very little direction

34: Having an ineffectual project partner made the latter projects quite difficult but that is my own fault really. Although the low penalty on the late assignments helped mitigate this somewhat, also the bonus marks helped here and there

35: Tutorial participation marks

36: Pacing of the assignments felt a bit rushed

37: The assignments were confusing!

38: With the assignments it sometimes felt like the difference between spending 20 minutes on something or 4 hours was simply whether someone (lecturer/tutor/student/internet) just happened to mention the relevant point. I don't know if this is something that can be avoided though.

39: Bugs in assignments

40: There was to some degree a mismatch between what the assignments covered and what the lecture slides covered. I would have also liked some degree of coding homework aside from the assignments.

41: Criticism is more useful than praise but I don't have many criticisms to make.

42: The lack of coding aside from the assignments, felt unbalanced, and there was a degree of mismatch between assignment content and lecture content. Additionally walking through assembly code was a little boring.

43: The high level of content that are only assessed during the exam time and probably forgotten afterwards or at least remains but a strand of information 1 year on from now.

44: The Virtual Machine portion took the longest for me to understand.

45: Assignments didn't cover every single concept taught.

46: The pressure of having to talk in exams. I also found it difficult in reading the assignment specifications in the first week of the assignment as it is quite vague in some parts.

47: assignments - took too much of my time especially with other subjects where assignment due dates were about the same

48: Some of the OS161 code-base for the second assignment was not overly well documented and hence example usages (even in other parts of the OS like dumbvm Ass3) would have wasted less time figuring out usage of data-structures and more time designing and testing. Lecture content could sometimes be dry but this was often offset by providing real life examples or details about other systems which made it less of a problem.

49: Assignments were very time consuming.

50: not enough info about assignments

51: assignments were hard to figure out exactly what/how to do

52: I'm sad we didn't get to go through the security portion of OS but I understand that we didn't have the time. Other than that, everything was great!
Umm, it's mentioned in lectures and at the bottom of the assignment specs? 53: The wiki was poorly advertised when it comes to help with assignments, students need to be reminded to check it more often

54: Too many students in lecture room Weird tutorial dynamic with people trying to get marks and worrying more about answering one of the questions than listening to the rest of the discussion

55: I did find the course challenging but overall it was a very enjoyable course.

56: Nothing in particular, except that the assignments were time consuming.

57: it's deadlines happened to fall exactly on every other subject, but that's a collective thing.

58: Feedback on assignment marks

59: Assignments were very hard, often with little guidance

60: My tutor was not very good. He did not speak clearly and had a tendency to rush through explanations. My group partner was terrible. I did about 95% of the work, but I suppose that's not the fault of the course...

61: Extended assignment marking

62: Not much support for partners that do not do the work. Maybe make it one person to do per assignment so there isn't any confusion.

63: Not enough assignments on theory. Assignment marks were too harsh.

64: Not much.

65: page tables. The initial bombardment of hints and tips for asst3 was overwhelming and difficult to understand until the student has made a significant effort to complete it. asst3 would be the worst and best thing about this course.

66: Tutorials (participation mark and content)

67: Setting up the environment was a mission and a half. There was very VERY dated information concerning how to install and set up os161/sys161 on home computers. I spent days trying to get it to work, and it still did not work. Ended up having to ssh and upload to cse servers and run it virtually every time i wanted to test assignments. Very annoying.

68: Nothing

69: Tutorial Participation, while the tutorial questions and answers themselves are useful for guiding study, I don't feel that participating in the tutorials help very much.

70: assignments

71: some of the details of OS was quite dry particularly when looking at assembler code.

72: My tutor, I couldn't understand what he was saying and effectively learnt nothing from tutorials.

73: Some of the theoretical components were less interesting, such as the hierarchy of accesses in files (probably necessary though)

74: The assignments were very time-consuming

75: More open consultations would be appreciated

76: Assignments were super confusing and time consuming

77: Tutorials. As a postgrad I was relieved by the fact that attendance was optional. Of the tutorials I did attend, it seemed that students would be overly competitive to answer particular questions or alternatively just blurt out anything just to allow them to get their name marked off. While I understand the importance of class participation, I felt the tactics used/competitive nature didn't make for the greatest learning environment.

78: Confusing assignments at first since the code base is quite big.

79: The assignments were a lot harder than I was expecting, but there's no real way around this. Kevin did warn us of the difficulty at the beginning of the semester. There was a lot of information to cover in order to feel prepared for the final exam. However, the exam

80: None of my complaints are related to the teaching aspect of the course.

81: assignments involved a lot of components working together and can be difficult to complete, even when knowing the basics of the content.

82: Sometimes it felt that the instructions weren't clear for some of the assignments. I know that we had many people asking us how we interpreted the question and where to look in the code. I found it challenging but it was tough.

83: Nothing struck me as bad, but sometimes the content is a bit dry. I don't think theres a solution to this, it's similar to how i felt about the networking course. Kind of like a "this is how it is, and this is why" kind of subject. (Assignments are a counter to this).

84: assignment is hard

85: The tutorials sometimes were not too helpful as we did not get to go through all of the questions.

86: Requires more attention than most courses for good marks; unfortunately of which I couldn't provide due to other courses and work. I felt the assignment spec could be quite vague in precisely what was required, leading to some confusion in what to deliver. The harmonic mean for calculating the final mark (for a mostly philosophical reason as I feel it doesn't reward learning; and rather benefits those who already have knowledge of the content).

87: Not the worst things, but something could improve: (1) Too much details, could reduce the materials to have a final course teaching something in general. e.g. docker, etc. (Scheduling at least could leave to students to learn by themselves.) (2) Lecturer might be speaking a little bit too fast for international students, but it's okay actually.

88: Marking in assignments seemed to take away marks too generously

89: Virtual memory. I felt that virtual memory was really dry, and a bit uninteresting. Mainly because of the nature of the topic, but I would have liked to of heard more about how real world OS apply virtual memory management techniques.

90: The extended component was a mistake. Extended components of the assignments are considerably more challenging, and I didn't feel like I gained much by taking extended.
Hmm, I'm called lots of names, but "rude" is not usually one. I wish I new what this was about?
91: lecturer seemed very rude

92: Group work on the assignments. It wasn't necessary. I did the whole things myself and then wasted time trying to integrate it into my partners solution.

93: - Unforgiving assignments, I felt the final assignment was particularly difficult compared to the others. - The assembly code in the lectures were a bit of a turn off and I felt it added to my confusion. I think the most useful stuff to learn was the broader picture of each of the topics (TLB operation, justification behind design decisions in OS', etc)

94: The assignments were poorly explained. It was often very confusing as to what was expected/how your solution was expected to work. It felt like you wasted hours and hours of your life on trivial details that didn't help you learn anything about the course content. The first assignment was well explained (particularly the library part) and so was the frametable section of the 3rd assignment. If the rest of the assignments could be more like those sections that would be great.

95: Too much contents

96: Assignments - not given enough time to do them and the specs were too vague to actually get started and plan time. It was hard to keep up with course content when the assignments were too time consuming.

97: The way the final marks would be calibrated according to a harmonic mean scale. This is rather harsh, and almost overlooks the hard work and effort placed into the assignments. A normal average should be taken.

98: Content was very straight forward, but the assignments weren't (probably intentionally). Probably the lack of tests in the assignments before marking is what made it difficult. You often get caught out on little bugs that the given tests don't necessarily test for.

99: The lectures were rather dry, and there are too many slides (~ 800) which can put people off of the content. Perhaps separate content out so "animations" aren't created through sequential slides. Also, a lot of information was repeated from slide to slide making it difficult to follow.

100: Trying to understand the assignment task and the code base before starting to work was time consuming and not fun.

101: The assignments seem to be particularly difficult, as in you get lost very quickly on what code you need where.

102: -

103: N/A

104: It is hard

105: course was pretty legit os161 environment bit difficult to set up at home

106: Not much code reference.

107: Vast coverage of the topic.

108: Assignments were too hard, particularly assignment 3. Tutor replied to my email queries with "Post on Piazza" and not answering my question.

109: Steep learning curve, with: 1. Technical terms 2. Large code base written by someone else, SVN 2. Understanding the code base at a high level and how one part interacts with each other.

110: Assignments are actually a little bit too challenging for some students. Lectures are a little bit boring and dry.

111: The workload ended up being quite high because of the assignments, but I always find that I learn the most in the the courses requiring more work, and this was no exception.

112: Assignments were confusing.
7. What background knowledge do you think you were missing that would have helped you in this course? Are the official pre-requisites a suitable preparation?

1: N/A

2: I felt that ELEC2142 was suitable preparation.

3: A much solid understanding of pointers would have helped greatly and COMP1927 being completed in first year did not help.

4: Pre-requisite knowledge was sufficient.

5: Current pre-requisites are fine. I felt that I probably should have brushed up my C programming more.

6: Fine

7: Official pre-requisites are adequate.

8: yes

9: Its all good

10: The pre-requisites are suitable preparation for if there is no background knowledge about the data structure and some algorithms, it will be very hard to learn this course.

11: Yes, most of the theory and skills needed were taught in the course

12: I don't feel that you really need much background knowledge before attending the course.

13: The official pre-requisites were sufficient but a solid knowledge of C is very important

14: Everything was good.

15: Prerequisites were suitable.

16: Pre-requisites seem reasonable, although more experience with C would have been beneficial

17: None needed. Official is suitable

18: none. The official prereqs are sufficient, but pointer revision (possibly from C++ primer) would be beneficial.

19: I probably was lacking in some background knowledge of OSs (Linux, Uniprocessors) but this is all external information.

20: They're fine.

21: The pre-reqs were enough for me. COMP2041 came in handy a few times but it was hardly necessary.

22: Not really much.

23: The prereqs seem fine.

24: N/A

25: Pre-requisites are suitable.

26: More tutorials on gdb. Was a lifesaver in the last assignment, but I didn't use it for the first 2. It would have saved me a lot of time. Hardware knowledge, however this was not an issue as I picked it up quite quickly.

27: The pre-requisites were suitable. I didn't think I was missing anything

28: Coming from an ELEC background, the finer technique of debugging was not there.

29: Pre-Requisites are as good as it gets, since you don't really touch C after first year.

30: N/A

31: Yes, the official pre requisites are suitable preparation.

32: We had a suitable knowledge of C programming, but it was a steep learning curve to come straight into working within a large pre existing body of code.

33: None

34: Official ones where ok, COMP2121 and COMP1927 should be enough.

35: I think probably for computing students this subjects wouldn't be difficult but for those who chose it coming from the electrical department it's a challenge, so probably a good requirement is to actually score at least a D or C for electrical students in the various pre-requisites to attempt this.
You've indirectly observed what I have observed myself, too little programming/software development experience in 2nd year. I can't influence the structure of the degree directly, however the school will go through a degree revamp at some point in the next couple years, and your issue will be addressed for future students. 36: i think there was a mismatch with prereqs. it is logical that you need to have done 1927 and 2121, however, please note that 1927 is a sem 2 course often done in year 1, 2121 is a sem 1 course (only) and done year 2. as OS is only offered in sem 1, you have to do it in year 3. this was bad in my opinion because 1927 was the last time i had used C (18+ months ago), and in the initial two assignments, i struggled simply due to not having done C coding in 18 months, and easily spent a few nights entirely just having to sit and debug my solutions to figure out my mistake was a simple C syntactical error. My suggestion: allow OS to be taken as a co-req to 2121 (most knowledge from 2121 isn't actually entirely necessary for OS), which will make OS a year 2 course, which would be much better as 1927 is the most important prereq.

37: None really, I learned as I went along and it was manageable.

38: No extra background knowledge would have been helpful, besides knowing some of the content of the course beforehand. The prerequisites are suitable.

39: No background knowledge at all.

40: Maybe a little more C programming experience would help, especially some more complex C projects.

41: Not much really.

42: Not sure, but even with the prerequisites I struggled to understand some of the concepts in this course, possibly because they were covered too fast.

43: Official prerequisites are suitable

44: Didn't feel like I was lacking in background knowledge.

45: More rigorous coverage of C would be nice, though is fine overall.

46: pre-requistite is suitable

47: The officialy pre-requisites are sufficient.

48: n/a

49: Hardware knowledge

50: The pre-requisites are suitable preparation.

51: The pre req of 2121, I will hopefully prove is unnecessary, given that I took it concurrently. However, concurrency, in my specific case would have been good to seal the deal on 100% in the first assignment. OSs, however are the largest programs that will run concurrently save for boutique NSA super computing algorithms, so a certain amount of the course still has to be dedicated to teaching this (in its OS context) rather than outsource it to a pre req (with potentially patchy results).

52: The current prerequisites were sufficient

53: Basic C knowledge - a lot of small things I forgot since 1927

54: NO!!! i barely know how to use linux, didnt even know linux existed until 2 years ago and you just assume we are linux gurus

55: I felt like I was well prepared for the course. =

56: Nothing I did in previous courses seemed particularly essential.

57: The requirements of 9032 and 9024 were spot on. It would be impossible without 9032, and any higher level COMP course is impossible without 9024. I cant think of any part of the course where I felt I was not properly prepared in the preceding courses of my degree.

58: Everything was fine, could do the course with just a bit of c programming experience

59: I think the prerequisites are suitable.

60: Pre-requisites are suitable.

61: Official prereqs are fine.

62: Official pre-reqs are suitable

63: Potentially some knowledge picked up from Elec eng, pre-reqs seemed adequate.

64: The official pre-requisites were enough for me to understand all the course content, although there were some jargon terms used that I was initially confused about. The C code involved in the assignment was a bit involved, especially since I havent touched c in a long time. Additionally my partner was hopeless in C, he was an Electrical enginnering student and never understood what was happening in any of the assignments, so maybe a little c refresher video similar to the assignment 3 video.

65: Device driver programming, might be?

66: N/A

67: N/A

68: In terms of theory, Algorithms (3121) which I did concurrently was a massive help in justifying what were the best algorithms to use (Eg. EDF and Optimal Caching). I think it would be helpful to have this as a pre/co-requisite.

69: Official pre-reqs felt suitable

70: More about concurrency and memory.

71: pre-requisites suitable

72: the pre-requisites were sufficient

73: C from COMP1927. Mastering low-level computing from COMP2121 would have been useful to understand the course better. Yes, they are suitable.

74: I think the prerequisites were suitable, there wasn't really any other background knowledge that seemed essential.

75: Didn't have any experience in application programming w/ syscalls

76: You learn the basics for everything, maybe COMP3222.

77: I think they are suitable. I think it helps if people have already seen the concepts covered in this course at a superficial level prior to undertaking it. This is something I was fortunate enough to have inadvertently and it definitely helped with my understanding

78: Prerequisites are suitable

79: None really

80: Didn't really feel like any additional background knowledge was needed.

81: My C knowledge was lacking in some parts, I had never heard of extern variables before but anyone with knowledge of C from the first year courses should be able to complete this course with help the forums.

82: It was good

83: N/A

84: The prerequisites are suitable.

85: N/A I think the prerequisites were sensible

86: N/A

87: I think current pre-requisites are good. I struggled a lot in ass2 and 3 because I hadn't used C in a very long time resulting in a lot of semantic bugs so maybe a separate refresher video would be handy. You would only need to record it once and can reuse it every year.

88: Nothing in particular, but perhaps consider making this a core course. The concepts taught are pretty crucial for any computer scientist to learn.

89: Granted, I am an exchange student and did not take courses here but I felt readily capable to take on the course

90: Some connection to COMP2121, but then I don't know if it's already a pre-requisite and I can't be bothered checking.

91: Prior experience in using gdb would've helped with assignments, but learning while doing the course was sufficient.

92: sufficient

93: Strong C knowledge is required

94: The current pre-reqs are suitable, no major gaps in knowledge.

95: official pre-requisites are suitable preparation.

96: official pre-reqs are legit

97: coming from an ELEC2142 background, as opposed to COMP. Felt like we were missing some terminologies. For example words like x86. Even something as simple as "disk" was foreign to me at the start. I've heard of hard disks and use them on a daily basis, but seeing it in the context of OS was a bit different.

98: Some more knowledge about how the hardware side of things worked. I guess this was partially covered from COMP2121 and isn't really necessary but it would be nice to be able to correlate the software and the hardware.

99: I took COMP2121 as a co-requisite and felt I learnt more about Interrupts, Assembly and hardware from OS than Microprocessors.

100: Nothing in particular.

101: None, I actually felt that it once overlapped very slightly with stuff I already knew from comp2121

102: I think the official ones suffice.

103: Official pre-reqs are suitable.

104: only done 1917 and 1927, had no problems

105: basic structure of low level hardware

106: Suitable

107: nothing much, just a solid C foundation was useful
Summary: debugging seems a theme and 'C' knowledge to a lesser extent. 108: -
8. Consultations were underutilised during semester. Please comment on why you did not take advantage of the available consultations. (e.g. inconvenient time, did not need, not useful, piazza sufficient, etc..).

1: inconvenient time and piazza was more accessible

2: I found no need for one on one. However I would have used the service if I needed it

3: Not organised enough.

4: Piazza sufficient

5: Other provided resources were sufficient.

6: Piazza was sufficient, was always able to figure things out by myself.

7: time inconvenient

8: Friends usually answered a bunch of questions and poor time management on my part to actually use the consultations meaningfully.

9: No need

10: Did not need them, in general. Piazza and the coursework was sufficient.

11: PIzza was sufficient, and I didn't really need them

12: inconvenient time

13: Piazza sufficient

14: Piazza and tutors were sufficient

15: Piazza was sufficient due to quick answering of questions from lecturer and other students. Would have been nice to see tutors on there.

16: inconvenient time, easier to use email and piazza

17: I had a very busy semester; piazza was most useful for asking questions at a time that suited me.

18: did not need - tutes+piazza was sufficient

19: I was unaware of the consultations. Piazza was very helpful.

20: Did not need it except for assignments. Piazza also helped a lot.

21: piazza was very sufficient

22: Time/place information was not as emphasised/convenient as piazza. Piazza was also pretty sufficient for most things (apart from extenuating circumstances)

23: piazza sufficient

24: did not need them. piazza + reading lecture slides + reading code sufficient

25: Didn

26: not useful

27: Piazza was sufficient

28: did not need

29: Inconvenient time

30: Piazza covers most cases.

31: Piazza was good. Ability to rewatch videos at your own pace helped with understanding topics. Time Constraints. However if time allowed, I would use the consultations if required (near asst time)

32: i mostly used piazza if i needed consultation

33: did not need

34: did not need

35: Did not need to/easier to ask questions over piazza with example of code & errors

36: I have to commute 2.5 hours each way to uni, it was not worth it for the amount of work i could get done without the consult.

37: piazza was sufficient and inconvenient time

38: Usually also don't require them in other courses - piazza sufficient

39: N/A

40: No much thoughts on the theory part.

41: piazza was sufficient

42: Didn't need

43: Didn't need.

44: Piazza was sufficient, both for my own questions and looking at others'

45: did not need, piazza sufficient, lazy me

46: Did not need

47: Did not find out about them until late into the semester.

48: Piazza was awesome and answered everything.

49: did not need, piazza sufficient

50: I believed in the whole purpose of piazza

51: Our group used the consults.

52: Piazza is sufficient

53: Inconvenient time

54: piazza fine

55: did not need as piazza answered all my questions before I asked them myself.

56: I never use consultations so...

57: Piazza + google, there are good resources available online for os161

58: Hmm I was too far behind at the start and preferred not to waste your time on questions I should already know.

59: was busy

60: Piazza was sufficient

61: didnt even know they were on, just used piazza, would have gone but, if could help debug code in person

62: Didn't have time to go

63: Inconvenient time

64: Most of the questions were asked by other students

65: clash with classes. Generally too busy.

66: Found piazza to be very helpful

67: We never encountered problems that couldn't be covered by piazza

68: piazza sufficient and tutorial time also sufficient.

69: Did not need, but would have used had the need arisen

70: Piazza + tutor were good

71: I felt that I could find out from the textbook/lecture slides rather than bother the lecturer with questions that could easily be answered by the course resources

72: I didn

73: Piazza sufficient/did not need/too busy flailing arms in attempt to finish assignments on time

74: piazza + lecture coverage was pretty sufficient

75: They were at inconvenient times and piazza was very helpful as someone usually had the same problem and could help solve it from personal experience.

76: piazza sufficient

77: Tutorials and Piazza are sufficient.

78: Piazza itself is already sufficient due to its fast response

79: Outside responsibilities tended to restrict this.

80: piazza sufficient

81: I found piazza forums really useful, most of the time i didnt think about using them, although they would have been really helpful during the assignments.

82: Piazza sufficient.

83: I only use consultations as a last result, I do everything I can do be independent when solving problems.

84: Did not need and piazza sufficient, comp students are lazy too

85: Don't ever really go to consults for any courses. Prefer to post on Piazza if needed.

86: I wasn

87: Everything was online

88: Time commitments to other courses, if the lecturer was remotely as helpful as in lectures/tutorials they definitely would have helped a lot, I regret not going to consults.

89: piazza and tutorials were sufficient

90: There are generally easier ways to find the information you need rather than making a special trip into CSE for a meeting that lasts a few minutes.

91: piazza sufficient

92: No time, tutorials and piazza were enough.

93: piazza is sufficient, and I mostly would have other projects to do.

94: I was a bit behind in other assignments anyway so most things I was searching for was already on piazza.

95: The consultation hours clashed with other subjects.

96: Piazza, tutorial answers and the assignment FAQs were sufficient

97: Piazza sufficient, learned most of the content at the end of semester.

98: Would only need it for assignments. The content is fine.

99: Did not need, piazza sufficient

100: Piazza was more useful

101: Piazza was good. The lecturer was fantastic at responding.

102: Would have used if I knew they were underutilised.

103: Piazza was very useful, but also it was hard to think of questions.

104: piazza sufficient

105: Never personally used consultations for most courses, piazza was a step above other courses therefore even less need for consultations

106: We had consultations? I think that problems in OS are really hard to put into words, I think if we had a consult in a lab where we could work on our assignments and ask questions at the same time would be an invaluable asset

107: Insufficient time due to a high workload/times not lining up with hours

108: Piazza and tutorials were sufficient

109: did not need

110: piazza was sufficient for me

111: I cram my study, so I don't have questions when they are on.

112: did not need

113: Piazza was pretty sufficient for answering my questions, and the lecturer was pretty thorough in the material.

114: Did not even really know about the consultations

115: Pizza wasn't offered... And inconvenient time.

116: electrical engineering student doing 4 hardcore courses, barely had time to finish the assignments in the first place

117: I was bogged down with other subjects mostly

118: I should have used them.

119: Didn't need/piazza sufficient

120: inconvenient time
Summary: Piazza continues to substitute for consults. Regarding time for consults, the timeslots are chosen based on your timetable so I find it hard to believe they are all "inconveniently" timetabled.

121: don't usually use for any course
14. If you have not been attending lectures, were there any factors that influenced your decision not to attend, not including the availability of lecture videos?

1: The chemistry theatre had a terrible smell. Sometimes a higher priority assignment is due.

2: I attended every lecture but once due to a clash.

3: Lecture videos were good quality, and you don't really gain any additional benefit compared to sitting in a lecture.

4: With so much coursework (in all subjects), I would often work on assignments instead of lectures.

5: N/A

6: Timetabling shenanigans and distraction with other courses, the lectures were definitely not bad.

7: I was away from lectures for about 2 weeks due to illness. I used the videos to catch up.

8: I attended most lectures, and when I didn't it was due to needing to spend the time on signalments etc

9: Clashing timetable, extracurricular workload and sufficient lecture notes.

10: none

11: N/A

12: A lot of content is covered in each lecture, and often when I missed a lecture due to work, I found the following lecture to be confusing if i didnt attend or watch the previous lecture.

13: + Didn't go to lectures the day before the assignments were due because I needed the time to do the assignment.

14: -

15: N/A

16: N/A

17: I attended the lectures all the time.

18: sometimes necessary because of work and other uni subjects and assignments

19: For lectures I did skip, I was catching up on assignments for this and other courses.

20: clashing timetable

21: I attended lectures most of the time. I skipped a few times due to assignment deadlines.

22: N/A

23: I generally used the lecture time to work on the assignments as my partner and I had difficulties meeting up outside of this 'reserved time'. Also, I sometimes need to have things repeated, and replaying sections of a video a few times is handy.

24: I wasn't available to come in to uni for a week due to illness and I used the videos to catch up.

25: N/A

26: OS was the only thing I had on Thursday.

27: At the start, I worked a lot and was very far behind. Coudn't attend lectures after 3 weeks so needed to catch up via video for the rest of the semester.

28: too many things to do. learn faster from lecture videos than in-person lectures

29: I don't attend lectures for anything. If there were no videos I probably also wouldn't have attended, but the course would have been a lot harder then.

30: The lecture room is too comfortable and it is quite easy to fall asleep during the break.

31: N/A

32: I attended lectures.

33: Part time work meant I could only attend the Thursday EOS lectures, but slides were sufficient for the rest.

34: Inconvenience/time wasted travelling to uni. Some examples presented in lectures are very straightforward - can skip them in lecture videos.

35: Too long, and I don't find lectures to be an effective way for me to learn

36: I had a start up that failed, burnt out this semester. Unfortunately I could have done really well, since I did well in the assignment, and knew most if not all the content in the exam!

37: N/A

38: The lectures fit inconveniently with my timetable, and I felt that the tutorials and slides combined with occasional videos would be sufficient

39: N/A

40: my bed at home is very warm and cosy :)

41: I'm a bad student and also had a couple of clashes. Lectures in general just seem to involve reading the slides out loud which feels like a waste of time for me. I went to a couple of OS lectures and did find them useful, but not enough to overcome my laziness.

42: N/A

43: BBQs

44: N/A

45: Rate of content coverage, particularly wrt. concurrency was very slow.

46: N/A

47: repeating to understand the lectures

48: If I missed/couldnt keep up with one lecture, it was very hard to follow with the next ones. So i used the lecture videos at my own pace.

49: I did attend lectures but slept or did other things like the actual assignments during them which many others did.

50: sometimes because of the assignment

51: I always attend lectures.

52: assignment 3 was gigantic

53: I found the delivery to be somewhat slow and arduous. Reading the slides, while not always comprehensive, was a much more efficient use of my time.

54: -

55: n/a

56: I attended all lectures.

57: I found the lecture slides and tutorials sufficient to gain a basic understanding of the content

58: -

59: N/A

60: N/A

61: N/A

62: N/A

63: Too many people

64: No point attending current lectures until I've caught up with previous ones.

65: I was on other assignments.

66: When I did miss lectures, it was because there was a conflicting, one-off event on.

67: Clashing work commitments

68: I found the lecture videos to be adequate

69: Project director of Sunswift

70: None

71: N/A
15. Any suggestions for improving lectures (including the lecture video captures)?

1: For delivery of the content, consider varying your tone more. Sometimes it feels a bit monotonous, which makes it harder to follow along, particularly because complex concepts are being taught which means that your sentences are fairly long already.
Thanks for all the detailed feedback. I actually attempt everything you suggest, but as you see, it's not easy to keep it together, old habits die hard as they say. 2: lecture video captures were decent but sound was too quiet and audio quality was not the best. i went to one lecture. here are some suggestions: - When you have a diagram and also text on the slides, you have two potential focus points for the viewer. It should be explicit in the lecture slides which part they should be focusing on. - Make sure words are properly linked to the diagram with arrows,etc. - Try to make wording more natural and shorter. A bit of over-use of jargon - Interact with the audience more to make it more difficult to tune out. Perhaps ask a question to increase engagement, or have an interesting puzzle that the audience should think about - When introducing a new concept, link it back to something which the audience is familiar with. e.g. "For example in the Mac OS ....etc ... and this is why Mac OS is crap" or something, to improve memorability and engagement. - Reduce speed of speaking and express ideas as concisely as possible - No need to disclose your intentions when you are lecturing - e.g. "I explain it this way because..." - detracts from the material at hand - Signpost your speaking by adding "titles" to your speech to add structure and notify the audience when you change topic. - Leave diagrams on for some time so students can absorb information better. They need time to think about how this links to their existing information and construct mental links - Better eye contact - Text density should be as minimal as possible (was done well in most cases though) - Make sure diagrams focus on the main idea conveyed. Fetch-execute cycle diagram was done a lot better than CPU architecture diagram - Good to link cpu instructions back to 1917 or 2121 work to give students a better foundation - Vary tone of presentation to elicit importance on certain words and to improve engagement.

3: Less text, maybe some youtube videos to explain some concepts as thats how I learned quite a bit of content.

4: Showing more code would be much more helpful at times than just high level views.

5: Server was down a lot of the time which made getting the videos difficult. Especially before final exam

6: -

7: Since you already cut out start up/end times and break time, not much can be done. Better than Echo360.

8: no

9: In terms of the video records, sometimes the audio is not that clear.

10: less big walls of assembly code

11: More examples and code.

12: No - one of the few subjects that does the video captures very well (i.e. writing on the slides is very helpful).

13: Slides can be a bit boring for any course. Suggest mix it up with more blackboard and going through code in lectures (as opposed to putting code in a lecture slide)

14: More explanation on OS161 code base to help through assignment.

15: More engagement of the audience.

16: N/A

17: It's tricky, but I would prefer it if they were organised by topics more than dates. On the other hand that's hard given the nature of lectures and having to cover certain things at different times.

18: Some of it was rushed which I am not sure why. Perhaps the late attendance, I am not sure. But we seemed to be constantly behind which made some of the later content a little overwhelming.

19: No, they were very well structured and it was really easy to understand what was happening most of the time.

20: No they were great!

21: N/A

22: Kevin's message tone should be played at the start of each lecture to call everyone to attention.

23: N/A
That's what a "lecture" is 24: The lecturer often verbally explains and expands concepts a lot better than the lecture notes. I often found myself writing down what he says far more often than just summarising the lecture notes. But often in class I found that i could not keep up with what he is saying. Also in videos the audio quality is good, but when he referenced images or diagrams on the slide without pointing to them on the screen on his tablet, it was a bit confusing to understand what he is referencing on the slide, when it cant be infered from what he is saying.
This is on of the regular pieces of feedback I get. 25: For worked examples I found these more useful in the online videos than lectures so you can quickly review and ensure your understanding without having to go through the whole lecture (Eg. Bankers Algorithm Video) but thought accompanying notes (typed or handwritten) would be helpful to illustrate how we should show working in solving theses problems.

26: Maybe less talking and more writing/drawing to illustrate some concepts.

27: n/a

28: N/A

29: I think the lecture slides are fine most of the time. Sometimes the voice was a little fuzzy ( however generally still able to follow along).

30: No, lectures were great.

31: For the video captures including which set of lecture notes they cover and the time at which topics are changed if it occurs

32: I'm not sure you can improve the lectures. They perfectly convey the material and the recordings ensure anything missed can be caught up. Maybe try and improve the audio capture on the video (body mounted mic?). I try to listen to the lectures at about 1.25x speed and because the audio isn't super high fidelity, it can be a little dodgy at that speed. Still, it's comprehensible at that speed, so not a critical issue.

33: More real world examples, don't just read lecture notes, any student can read the lecture notes, give examples and worked solutions to help us understand the content in a real world environment.

34: None really

35: If Kevin points the projection screen, it would not be captured on the video and could be hard for one to understand what is going on.

36: Give a 2 minute recap of what we have done in recent past lectures so that those (me) who skip often can still benefit from going to lectures.

37: The lecture slides should stand alone as material in themselves. Sometimes the slides would just be a diagram with little to no labelling which made it difficult to go to as a quick reference. So I kept having to replay the lecture video which often took longer.

38: When explaining diagrams, I can't see physical gestures in the lecture recordings. It would be nice if the mouse could hover over the relevant part of the diagram.
You can download the video via "save as" or what ever your browser uses. 39: Upload lecture videos to youtube - privately if you want. Youtube loads faster and is more convenient to access, and generally works better than whatever the web player that is currently used.

40: None.

41: Bit more content on slides. Easier/quicker to revise content.

42: Not much can be done.

43: Playback in Safari doesn't seem to allow skipping (ended up using chrome)

44: - Reduce slides (like a good sauce) - Split between primary material (Lectures+Notes) and secondary material(web links, animations, papers). - A live code run (once is probably sufficient) of OS161 might help people.

45: Ask more questions i guess... but it was ok generally

46: No

47: Maybe more examples, or more detailed notes.

48: Nope.

49: Lecture slides were confusing.

50: N/A

51: No. Personal preference however is that

52: No

53: Audio quality could be improved in video captures.

54: I didn't (haven't) used the video captures very much (yet) as I prefer the in-person UX. However, the asst3 video was killer. Decisively helped bag many many marks in a much shorter timeframe than what the general web would have yielded (eventually)

55: i found sometimes the explanations provided in lectures were too long and indepth. this made it really difficult to follow and generally didn't work in our favour.

56: Continue doing the lecture video captures.

57: Not really, I found them great.

58: Lecture captures are great. Although difficult to see where the attention is on the slides during the recording as we cannot see the pointer. But that is understandable

59: More frequent snippets of examples from the past (*nix, microsoft, apple, etc.) where current topic of discussion has been (in)efficiently implemented/deployed.

60: -

61: Videos are great, especially the video released to help with assignment 3, that was super helpful!

62: To focus more on the specifics of the implementation instead of a broad range of theory that isn't used practically

63: -

64: Have some more detail (or direct links to more material) on the slides.

65: more explanation on os161 and mips

66: N/A
Yes it was. However, it can't compensate that much. 67: Audio was not normalised, often when moving away from the computer to point at the screen the audibility of your voice decreased. Also, it was hard to visualise which parts of the lecture you were physically pointing at when watching/rewatching videos.

68: N/A

69: N/A

70: Less clicking through/reading slides, more code reading/writing, drawing on a whiteboard etc.
18. Any suggestions for improving tutorials?



1: Sometimes in tutorials i found the answers were a bit bare and lacked detail, so i often found myself looking at the answers after the tut. So maybe either reducing the question scope or reducing the number of questions so that concepts and answers can be explained in greater detail

2: Tutorials were great. I don't know how she did it, but we had a great vibe. The participation mark was good to ensure everyone had a go, and the questions varied in difficulty, so there was always a low hanging fruit for students having a harder time to give it a go. Great work!

3: I did not like the compulsory participation marks because it made me feel obliged to ask something or look for something to get the mark.

4: participation mark should be clarified more clearly (in terms of how they are awarded).

5: N/A

6: They were fantastic

7: They were pretty good.

8: voice is not clear for non-native speaker

9: Get tutor to read out names of people to answer questions. Force people to prepare for all tutorials and avoid passing around the participation sheet and awkward dynamics of students desperately trying to get to answer the easier questions

10: More exam style questions (longer and more detailed)

11: Give Tutor C a raise, fantastic tutorials.

12: N/A

13: I think it's just that my tutor who was Tutor C didn't explain concepts clearly and had a soft voice which couldn't be heard well.

14: Did extended - no tutes.

15: None.

16: N/A

17: -

18: Tutor C needs to work on his public speaking, he was too quiet and did not speak clearly. I found that if I did not rush to the tutorial from the lecture I would not get a seat in the front row and this meant I wouldn't get any benefit from Tutor C's explanations.

19: Our tutor was confusing at times.

20: More structured around helping with assignments if they are to be kept as hard.

21: No

22: The last tutorial should have more than 5 questions for class participation mark.

23: Add more questions, or spread questions more amongst students. Hard to earn participation marks because there were not enough questions for everyone and some students fielded more questions by themself, making it a fight to earn marks. The questions were usually very direct with a single answer, so it is hard to contribute to an answer if another student has already answered it.

24: The way tutorial participation marks are given out. It doesn't really encourage people to ask questions when they don't understand the material and it turns the entire tutorial into a competition to see who gets to answer a question.

25: Nope.

26: Carefully selecting who the tutors are and fluency in english would assist exponentially.

27: As mentioned earlier, while class participation is important - a better approach is needed. The overly competitive nature of the class (given its larger size) means that students only really care about finding a chance to speak and be able to mark their name off. Clear cut questions/answers do not really facilitate discussion and even if you knew the answer, there is no point repeating the same points again.

28: I had tutorial just after the 2hr lecture. Tutorials were often for the same week as the lecture, so there really wasn't time to attempt questions before tutorials.

29: Extended. N/A

30: Participation is quite annoying. Can't really pay full attention since everyone is trying to get the mark.

31: No, I had a fantastic tutor, probably the best tutor I have ever had!

32: More questions so everyone gets a chance to get the participation mark

33: No.

34: Totes were great - but the compulsory interjections were a bit forced at times and yielded questionable or at least not immediately apparent high learning to marks ratio...

35: A quick recap of content before launching into the questions may be a good initiative

36: n/a

37: Participation marks are not necessary, self-study should be done at this stage (year 3)

38: -

39: No. Tutorials seem adequate and support the lecture content.

40: Short tutorials make it very difficult for everyone to get participation marks.

41: Perhaps an extended timeslot for more questions?

42: Don't force attendance on the tutorials. Remove the participation marks.

43: N/A (Did EOS, I didn't have tutorials)

44: No tutorial marks, it somewhat distract the primary reasoning of tutorial : catching up

45: Nope, they were good!

46: Participation marks for speaking in class doesnt always work, especially for the weeks with very few questions. Marking by attendance or the tutor checking an attempt at questions would be more beneficial and be more indicative of tutorial participation.

47: Did EOS, no tutorials

48: -

49: There were times where the tutorial ended early due to us rushing through the questions. If 1-2 questions were added then I believe it would suit the time more. Also I believe we should have more calculation questions as the coverage of those in the lecture was low.

50: None really

51: We could not just discuss questions, instead we could discuss something in general or find a specific topic. Leave the questions to students and we could ask if we have something not understand.

52: N/A

53: Class participation should not be compulsory because I think it does not help students to learn better. On the other hand, it may make some shy students feel anxious or nervous and thus, not paying attention in tutorials and eventually, skipping tutorials.

54: The class participation during tutorials was rather pressuring, as I had felt more of trying to think up which question to answer or what to say rather than always listening attentively to the tutor speaking. If possible, could the tutor check that we've done the tutorial every week like some math courses? I believe that it shouldn't take very long to type/write the answers to the questions.

55: participation marks are good, but my tutorial which had alot of students in it, it was hard to get the participation mark.

56: n/a

57: A more formalised marking scheme for participation to encourage participation through questions and preparing for the tutorial. Tutor needs to speak up a little.

58: The tutor did not ensure that everyone understood the content

59: The participation mark made it so people contributed but sometimes it wasn't a real contribution, just enough to get the mark.

60: I did not attend Tutorials as I was in Extended

61: More questions, increasing in difficulty, some were just going over basic ideas

62: N/A

63: Perhaps removing participation. I noticed many people googling answers in the class for later questions. Meanwhile the people who knew the answers had to keep quite to give other people a go since they had already been 'marked off'.
Summary: participation marks are getting (too?) competitive. I'll review with tutors and evaluate changing it next year. 64: More foundational/basic questions to refresh, rather than jumping straight into harder questions regarding application of this knowledge.
27. Any suggestions for improving the assignments?

1: Nope.

2: -

3: n/a
Yep, as mentioned above, recording a video walk-through is on my todo-list for next year. 4: I would have liked a tad more guidance for asst2. I felt pretty thrown in the deep end, didn't have a much idea about how a lot of things were meant to work. Maybe a bit of a clearer idea of how they would be marked would've been nice. It was clear after asst2. In general the assignments are very good though.

5: Nope
You can submit using git also. 6: Use git instead - its taught in COMP2041, so most students have already been exposed to it. Subversion was completely new. Our group ended up using git to sync between ourselves, and only using svn to submit.

7: A bit more handholding to get started on assignment 3 would be nice.

8: A video like the one for assignment 3 would be helpful for assignment 2 as it was much more difficult to initally understand than the other 2 assignments.

9: N/A

10: A bit more focus on error checks and testing would be good, but I think the assignments would also need to be slightly easier to fit with the time constraints.

11: For the assignments, there were a lot of common design mistakes or assumptions people (including me) made, it would be best I think to collate these into the wiki. Otherwise it's a bit of a pain trawling through piazza.

12: Make them easier or provide more information. They were very confusing

13: Possibly state instruction more clearly

14: Some part of assignment 2 is really confusing just by the specs

15: N/A

16: Provide more documentation, particularly for assignment 2. I didn't know where to draw the line in terms of what we should implement, versus what was already implemented for us. For example, despite viewing the source code, I still wasn't sure what the uio's were for.

17: no

18: Stress even harder how difficult they are.

19: I found it was difficult to know how to start the assignments. Usually it was a mix of just browsing piazza, the wiki, the source code. Even after following the code walkthroughs. The video for ass3 was helpful in breaking down the assignment to help decide where to start (e.g. clearly separating the assignment into 2 parts, the frame table and the 2 level page table).

20: Clearer specs for Assignment 2.

21: N/A

22: Provide additional tests - or at least some starter tests where we can easily modify and write our own. Usually most of the time was spent designing, implementing and debugging but not really enough time to write your own tests. ie: You spend a lot of time testing your code with the given tests to make sure they are solid before proceeding to write your own - of which you would have little time to do.

23: Assignment 2 was pretty hard and few resources could be found.

24: First two assignments were reasonable, with the second being a nice challenge. Assignment 3 was extremely challenging and even though there was a support video released I found that I was unsure of where I should be placing my code. Assignment 3 also did not have very informative comments compared to A1 and A2 which added to the confusion. The spec provided, I found, was not very informative and was missing details such as testing (which I found was in the wiki much later). However what I did find useful was the suggestion on how to tackle the assignment so maybe that can be expanded.

25: N/A

26: I liked the difficulty of the assignments because it taught you how to read a large code set and adapt to it. Sometimes the tutor would not answer questions because he wanted you to think about it, but I wanted clarification on whether I was going in the right direction, which he wouldn't help with assignments instead relaying me to Piazza. I know others had trouble clarifying the assignments as well as they thought it was unclear, so maybe some more instructions. The lack of tests available for all assignments was annoying, we didn't know which tests were functional for that assignment. We passed all tests but we didnt do correct implementation for one function and got punished for it. It was something that was extremely hard to recognize whether it was needed and a simple 1 line command in the 2nd assignment would have saved a couple of marks.

27: Make them harder, solo and slightly more time.

28: The assignments were great, but I had the hardest time on the syscalls assignment. I wasted a few days just trying to get a grip of what we were meant to do. I had no idea about how to go from the sysread() call to the vfs function. Luckily my partner eventually worked it out and then everything was fine. But that was the one point in all the assignments I couldn't work out on my own. Perhaps just a rough example of one of the calls. Like maybe give us a completed sysread() function as an example. The example syscall you gave us didnt have any vfs calls in it, so it was a terrible example to work from. Without it, it is very hard to work out where to find and put the vfs calls.
You can refer to the lecture? 29: possibly more explanation about the KSEGS and the virtual vs physical memory locations on the asst3 specs page.

30: give more instruction on what to do in assignment

31: more guidance on asst3

32: More explanation on how parts of the OS that we need to use work. For example, in assignment 2 particularly we had to use a lot of calls to lower levels and it was very confusing figuring out how they worked and what they returned and what they did to the structs we passed in etc

33: All assignments have solutions, and student should find the solutions on their own. However, the information of the assignments are separated to guides, wiki, piazza, and lecture slides, which one could miss something easily and may take lots of time to find.

34: Give more guideline

35: Marking was too harsh.

36: The difficult part of the assignments was understanding what had to be done, but I think it's fine as it is. Being forced to read through the code and seeing how everything actually worked was very educational.

37: Was not clear from the asst3 spec that the implementation of the basic assignment was not expected to result in a functional malloc & heap. Felt as though it was billed as a drop-in replacement to dumbvm, but in reality introduced regressions. Felt this could have been made clearer.

38: Provide examples for the 2nd assignment. It was really hard to have an idea of what the functions were supposed to look like. Dumb VM in ass3 was really handy for getting an idea of what was wanted. And ass1 was well explained/similar to lecture material.

39: Can't really make something like that much easier, but in the end I'm happy with how it went.

40: assignments were legit

41: More frequent, shorter assignments covering more topics.

42: more detail specification

43: Assignments were a bit time consuming and hard to start.

44: cover more OS concepts, such as process scheduling, file system.

45: N/A

46: Did not know enough about svn to setup a remote repo and work from home which made development tedious. A small VM for virtualbox with os161 and all the build/test tools installed would be a massive fix for setting up this environment.

47: Very time consuming, but I assume its supposed to be that way Keep the assignments to be done in pairs, as it helps to have another person to exchange ideas and learn.

48: Please make the design specs slightly less vague?

49: They are a bit on the difficult side

50: Honestly, they went pretty well - we conceded pretty much all marks we lost, with the exception of a few arguably double penalties due to high 'correctness and style' discretionary marks. It is our submission that we "got it" as soon as we'd realised we'd failed X or Y test... As in could fully explain and point to failing code, with exact patches to fix... Getting a comment in the source code with "-1" for correctness was, in our view, a bit of overkill.

51: Give more specific instructions for what to actually do in the specs.

52: The specs were a bit vague. A lot of waffle then "now implement this file".

53: It would be nice if there was a page that listed things that can be penalised, such as linear searching through data structures.

54: N/A
You can use git, and the magic incantation to generate compatible diffs was on the wiki.

I will advertise this more.
55: Please change from svn to git COMP2041 teaches git anyway, so students will probably be familiar with git to begin with. Additionally, it allows for easier setup regarding programming at home. Finally, commits are made regarding the whole repo and not the pwd; this was an issue when I accidentally didn't commit design.txt due to a lack of experience with svn.

56: I can only say it was hard for me but that's it. I came into this course hoping for a credit and I have probably achieved that because of the difficulty of the assignments despite putting plenty of effort in. If I've achieved my initial expectation of how hard the course is for me then it's a good course. Also I'd prefer the assignments to be a solo task and that's probably a selfish reason since I did nearly all->all of the work required for the assignments which I'm sure many others did too.

57: Maybe make the assignments about just reinforcing the material covered. Too much other stuff in the assignments - I don't feel I get much out of trying to work out what someone elses code does so I can fix mine.

58: More videos (such as the assignment 3 video) as they were very helpful.
Another vote for more getting started material. 59: Help get the ball rolling a bit better at the start. Book a lab once or twice for each assignment with yourself and maybe some tutors on standby to answer questions and help us get our head around what we need to do. Honestly that would have made this course perfect. I found the best part of this course the hours leading up to the assignment deadline (yes even 8am) spent in K17 with everyone else working to finish the assignments. We were all helping each other and it was amazing. I have little doubt that if I wasn't doing other courses I could have got 100% (or very close) in everything. My partner an I literally spent days just working out what to do. If we had a little bit more guidance then it would have made a world of difference.

60: The extended parts were too difficult and way way out of proportion to the rest of the assignment

61: N/A

62: No

63: Perhaps a little more of a helping hand, especially in regards to Assignment 3.

64: VFS layer in assignment 2 is still a bit abstract The address space struct in assignment3 could have been really simple to understand if given, but took a while for us to figure out what to do with it on our own

65: Please do an explanation video for asst2!

66: Giving a much more guide into the source code and making us understand the code would have made starting the assignments much more easier. Most of the time was understanding the source code which was horrible...

67: More explanation of OS161 code base.

68: none

69: Possibly make Assignment 1 a bit harder.

70: N/A

71: More detailed specifications would be nice, a lot of time was spent figuring out what exactly we were supposed to do.

72: Maybe explain address spaces a bit more for asst2, including the use of uio, uiovec etc. as it was unclear what these did.

73: Perhaps give a list of the different types of errors and possible causes of them, would have helped a lot in assignment 3. Other than that, most of the time on the assignments was spent debugging. The good thing about the assignments is that you end up learning the material the assignments are on extremely well (otherwise you wouldn't have been able to do much of them).

74: No

75: Perhaps tie in some I/O stuff.

76: Break them down into weekly labs.

77: Only real complaint is to use git instead... I think the learning curve is a little bit less than SVN too (so nothing major) Also perhaps break down the assignment into smaller subsections that are due earlier to force people to start at an earlier date... But that would probably be annoying to mark...

78: More specific guidelines about what order to implement things in.

79: write up a proper assignments specs, 5 lines of mystery and puzzles is just not enough. assignment spec for comp3331 project was 9 pages...

80: more support video for assignment

81: Less requirenments to look through the whole code, maybe an explicit scope on which files you need to look at to complete it.

82: A more refined assignment specification that specifically outlines what marks are given for, and perhaps breaks the latter (asst2&3) into logical stages (with % of marks given) to help students complete them in a more timely manner.
Take advantage of the consults, they are there to help for exactly these kinds of issues. 83: It took a very very very very very very long time (3+ 8-hour blocks per assignment) to figure out anything. I understand reading through code is an important skill but not getting anywhere after 24 hours of work was very stressful. Try more guidance for assignments. Ass 3 video was very helpful for high level over view but still took a very long time to understand where things were meant to go and how things were meant to work.

84: More specification or steps to follow for implementation.

85: Making them roughly equal difficulty considering that they are all weighted equally.

86: Combining ASST0 and ASST1 would allow ASST1 to be file systems, ASST2 to be memory management, and ASST3 to be something about scheduling.

87: The third assignment was generally unclear on what we were supposed to do, if it weren't for the assignment video and support lectures, there'd be no way to know what we were actually MEANT to be doing. Some more coordination in the spec would be useful

88: Provide just a bit more time to do them. Though an undergrad, I found I still struggled to get around to starting the assignment until the last week (due to working 2 jobs and a full load of uni)

89: More hints should be given because the lecture materials are way to high-level compared to the assignment specs.
28. I got very little feedback on the support videos I recorded this semester (subversion and asst3 walkthrough). Now is your chance to encourage or discourage me spending more time doing them, or suggest improvements.

1: The support videos are good, but it would be better if you can also post the corresponding slides up as well. It's a bit annoying to always having to seek in the video when forgetting some part of the assignment. Especially when I'm at a location with slow/no internet.

2: The asst3 walkthrough was very helpful, and cleared up a lot of questions. Did not watch subversion video as I am already familiar with and prefer git.

3: very informative

4: They we're great and really helpful.

5: I did not attend many lectures or watch lecture videos, but this video I did watch and was very helpful. 10/10 would watch again.

6: The video was great! I watched it about 3 times during the course of doing the assignment and as I understood more about the problem I got more out of the video. The only thing I would request is that you release the lecture notes file as well so that I can add notes.

7: + I was already familiar with SVN so didn't really watch the SVN video (instructions in assignment were sufficient) + asst3 walkthrough was probably the main reason I submitted on time, so I would say it was a resounding success

8: Didn't even look at subversion or use it. Git FTW :) Asst3 was good though. The switching of slides were a little jittery but good otherwise. Helpful to have.

9: The asst3 walkthrough was very very very very helpful at getting started at ASST3 since without it we would be unsure of our allocator which would then pile onto the rest of the assignment

10: The ass3 walkthrough was very helpful for the assignment as the spec was generally pretty confusing. The video helped clear up how we should break down the work and how to get started.

11: Subversion video was so so, we basically ended up only every using svn up, svn commit and svn log. I think there is a preference for git these days among students. Asst3 video was quite helpful. Please do one for asst2; asst1 does not require it.

12: -

13: The asst3 walkthrough was useful, and I didn't use svn video as I felt familiar enough with it.

14: subversion video is not very necessary, because it is easy. asst3 video is quite useful, and would be better if spends less on teaching C pointers.

15: They were actually quite useful, the asst3 one hinted at good design choices which made not screwing up slightly easier.

16: The assignment 3 one was very helpful. I used Git instead of Subversion.

17: The asst3 walkthrough was very nice, but it spent 70% of the time talking about the easy part of the assignment and 30% of the time talking about the hard part, which didn't help with the spec that lacked in detail.

18: Very good, but please provide a few more (but shorter) videos. This will make finding a particular concept a lot easier than needing to watch a full one hour video.

19: the video on asst3 was very helpful and made the assignment much easier to understand and where to start.

20: Asst3 walkthrough was a god send. Everything made so much more sense. Please continue your efforts on utilising such videos. Didn't watch svn video.

21: The support videos were very informative and helpful, especially assignment 3 walkthrough.

22: the videos were generally helpful, in assignment 3 u promised to go through some code on addrspace and pagetable "later in the video" but never did!

23: I watched both of them and found both of them helpful. Maybe add a little bit more to the asst3 video, specifically about the page table and TLB entry structure

24: It was great. Need to trim the fat a bit though

25: Didn't watch the subversion one (we used Git). The asst3 walkthrough was very helpful. Any help with ass3 was helpful.

26: The assignment 3 walkthrough was a great help to getting started with assignment 3. I would have liked to see it a little earlier as my partner and I started before the video was posted.

27: asst3 walkthrough was very useful! It made the third assignment really quite simple - a lot simpler than the second assignment which involved a lot more digging around and trying to get things right. But that might just be because I didn't go to many lectures... I do feel that digging around and figuring things out based purely on the code and lecture slides helped me understand how everything fit together a lot better, although the process itself was time consuming and somewhat frustrating. I didn't watch the subversion videos - just used git. (why subversion anyway, git seems a lot more popular these days).

28: The asst3 walkthrough was helpful and more should be needed for the other assignments.

29: The asst3 walkthrough video was extremely helpful, please keep doing these! Personally, I looked up what I needed to know for subversion online, though.

30: I think they were great.

31: I think the slides overall were great, especially when I was trying to catch up after recovering from illness. It was easy to navigate to find the topics. The sound might be a little fuzzy at times, but didn't bother significantly. Thank you!

32: It was very helpful. Would very much suggest to do it again

33: The asst3 walkthrough was extremely helpful in understanding what to do. I would recommend it in the future.

34: the video for assignment 3 was helpful for explaining the concepts that it did explain.

35: The asst3 video was very helpful, please continue to do it

36: The assignment 3 walkthrough was extremely helpful and would have been nice for assignments 2 and 1.

37: Both videos were excellent resources. The subversion video was adequate to learn enough svn to use for the assignments. The asst3 walkthrough video was also very helpful, and the examples helped with understanding. Watched it multiple times

38: asst3 walk-through was fantastic.

39: Didn't use subversion but the asst3 one was very useful. A valuable tool!

40: the asst3 walkthrough video was invaluable. The assignment was extremely hard for me, and the walkthrough helped there. If anything, more information in the video would have been useful.

41: Helpful!

42: It's alright to have support videos.

43: asst3 helped but my group still struggled with it.

44: I was discouraged to watched the svn video after noticing the length of it was roughly 1hr. I relied on svn docs online. I watched the asst3 walkthrough 2 times in full, and 2 more times jumping between sections. It was very helpful, please do it again next year.

45: The asst3 walkthrough was my bible. Literally replayed over that video at least 7 times to help me understand and get through the assignment. There were a couple things that wern't really clarified but asking on piazza cleared that up.

46: asst3 walkthrough was very very helpful.

47: Videos were really good however some additional examples/showing where specific code is and how it works would greatly assist it. Basically more hand holding would be nice haha :)

48: Very useful, any additional information of guides are always welcome.

49: Video recording for asst3 was really useful, I got the general idea of vm_fault function, as well as the using of trace161 and objdump.

50: Definitely keep doing them. Found them to be extremely helpful.

51: The videos for both subversion and asst3 are extremely useful. It would be great to keep them for the next terms.

52: Fantastic, thank you very much for them!

53: The videos provided a great starting point. I thought the subversion video was useless, since I had nothing but problems with SVN diff with each assignment, which required me to manually delete html files that eclipse had added to the repos. I understand why you used SVN diff but I hated using it. I would suggest using bitbucket and git, it is far easier and a lot more help is available online.

54: ASST3 walkthrough was extremely (almost too) helpful. Didn't watch the subversion one.

55: strongly encourage for the support video

56: Didn't use the subversion video, I found the "walkthroughs" in assignment spec to be sufficient, and happily learnt svn online. Asst3 walkthrough was very helpful.

57: They are okay and useful.

58: Asst3 walkthrough was very useful

59: They were helpful

60: The support videos were great. I watched the svn video and then had no problems using svn, so that worked great. I watched the asst3 video a number of times (in bits and pieces) as I built my solution. It would have been a lot harder without it. Please keep doing them.

61: Do more of these! The asst3 one was great, but for some of the as functions could have benefited from even more depth. For example the load and load complete functions were still confusing as were the activate and deactivate functions. Some thing like this for ass2 would have saved hours upon hours of time.

62: they are useful

63: The video helped a lot, and it should be even more detailed especially on the second part of Assignment 3. Assignment 2 should also have a video.

64: I highly suggest continuing with them, as they are indeed helpful and assist in completing the assignment.

65: The ass3 was good (maybe too much focus on the frame table part), svn is close to git so i didn't watch that one.

66: Asst3 video was helpful. Didn't need the C pointer section though.

67: I found the asst3 walkthrough video very useful as it helped me understand the assignment more and also things to look out for when working on it.

68: The asst3 video was really helpful. Maybe a few more pointers on how to go about completing the assingment

69: need some writing on the material when it needs. not by only words with using picture on it to understand further more

70: asst3 was excellent. did not watch subversion video. used git for version control because more familiar

71: I would like to encourage for the supporting videos. It was quite helpful

72: The video for asst3 was useful except at times it was unclear which part of the assignment you were referring to. Also more code-walkthroughs with suggestions on where we should be tackling what. For example, the frame table struct could be placed here and you could initialise it in ___ function. That would make it very clear as that was one of my main problems - struggling to figure out where to place what. Also a

73: subversion video: still pretty confused with using svn asst3 walkthrough: they were great

74: You should do them. They are very useful especially for people who have no or little experience with subversion and asst3 walkthrough is super helpful. We would not be able to finish asst3 without the walkthrough.

75: The asst3 walkthrough video was very good - watched it a few times which really solidified my understanding of what we were supposed to do for the assignment (what the address space api was for, virtual memory and physical memory addresses, frametable) and useful debugging tips for the assignment (objdump, trace161).

76: Walkthrough for assignment 3 spent too much time on C programming rather than the assignment concepts. Suggestion of doing little snippets of videos covering subsets of the larger video so people can watch the ones for what they need rather than having to skip through the larger video and not have any context to what they've forwarded into.

77: Please record more video for assignment 2

78: Did not watch the subversion video. Asst3 walkthrough was very helpful. Please continue them in the future and possibly extend it to Asst2 as well.

79: the video helped a lot on the assignment, and hints like the video would be very helpful. I would say these videos is also a way to adjust the difficulty of assignments.

80: The support video for assignment 3 was definitely helpful.

81: Asst3 video is extremely helpful but not sure about subversion

82: The asst3 walkthrough was helpful, wish I'd watched it before starting the assignment. We used git, so the SVN walkthrough didn't help much.

83: Im more comfortable reading slides than watching videos as I can read slides at my own pace. Videos were useful but not essential.

84: The asst3 video was very helpful and gave me the starting push that would have otherwise taken a while to do

85: The asst3 video was very helpful for several parts of the assignment, particularly the understanding and design phase.

86: The support videos were a good way to reference on whenever we got stuck on the solution designing stage, so keep it up don't get rid of them!

87: Worth the effort, best lecture recordings ever!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1

88: The asst3 walkthrough was extremely helpful in understanding what to do and how to start the assignment

89: Did not watch subversion video but the asst3 walkthrough was very helpful to tie my knowledge together in preparation for beginning a plan for the solution, definitely a worthwhile video with lots of use.

90: Assignment walk through was very useful and I watched it multiple times to understand the assignment. It helped fill some gaps, but didn't fully complete my understanding. Was a good starting point though.

91: The asst3 video was very helpful, and a similar one for asst2 would have saved me a lot of time trying to figure out where to start.

92: Very, very good! One of the only courses I've done where the staff do additional work to help with understanding the assignment, which I think is really quite necessary with OS, there are so many different challenges to the assignments that I've not encountered much before.

93: Assignment 3 video was great, i highly recomend you do another one particularly for assignment 2. Also consider doing them in a little bit more depth. I found the part about VM fault in asst3 was skimmed over with little detail, while the part about the frametable was abit over done.

94: These videos were really helpful. Would be nice to have one for assignment 2 as another source of information. The subversion video was really helpful as i had not used subversion before.

95: The sound quality for the asst3 walkthrough was all over the place! Made what was otherwise a really helpful video very difficult to follow. This video was integral in aiding my understanding of the assignment though -- definitely keep it or something similar for next year / future courses.

96: The videos were really helpful. You spoke a bit slowly and often paused, but I just sped up the playback to get around that. You accidentally changed slides a bit in the asst3 video which was a bit annoying.

97: asst3 walkthrough was very helpful in understanding the theory and what to do. Didn't use the subversion video because the notes in the assignment spec were sufficient.

98: Asst3 walkthrough was helpful, and well worth the watch from me. I have experience with svn so i didnt watch the svn video and didnt encounter any issue with it.

99: Asst3 support video was amazing.

100: The asst3 video was really helpful, I think everyone referred to it a lot. Didn't watch the subversion video.

101: The asst3 walkthrough was very helpful! It would have been 10x more confusing than before if you hadn't posted that.

102: The assignment 3 lecture video fully clarified all the questions left remaining after going through the spec and codebase. I felt it was a necessary part of the assignment and would have struggled to grasp all the concepts without it. The subversion video could have included setting up a remote repo to be able to push and pull from home.

103: They were helpful in understanding what certain bits of the assignment were supposed to do.

104: The assignment 3 video was used well! It was very helpful and I encourage you to continue to do it

105: I didn't watch subversion but the asst3 walkthrough was excellent! In some places there was too much detail others were a little rushed. I would have liked a little more guidance.

106: They were useful, not sure if video was any more useful than a written document though. I just skipped through them and read the slides rather than sitting through an hour long video. Came back to some slides (particularly in the asst3 video) quite a few times during the assignment for reference.

107: Ew on the subversion, defs switch to the source control of the future. But LOVED! LOVED LOVED!!!! the asst3 walkthrough!!! Especially for its cogent explanation of the steps. I feel it was easy to extend out the unsaid parts of (i.e. the frame table -- doubly linked list) the assignment for more marks, but this left the basic explanation clear to begin with. Audio quality had a few silent spots/dropped frames(?) and was a little too quiet for the macs in safari - but otherwise pretty good

108: Asst3 video was really good, I personally didn't watch the svn video (sorry).
Summary: the asst3 video was really appreciated, but could be split into components based on student background (e.g. debugging tips, C-programming tips, etc..). Not sure it is worth the effort, you can always skip with the online player. 109: Assignment 3 video was great, strongly recommend continuing them.
31. Any suggestions for improving COMP3891/9283 Extended OS?

1: Seemed similar enough, to OS which I guess was fine anyway.

2: I feel the lecture notes for EOS is ambiguous. the assignment specs are less precise as well

3: No, I thought EOS was excellent.

4: I became too confused to follow along so can't give much feedback.

5: -

6: I was able to follow along in the extended lectures generally quite well, but found the extended assignments very difficult and not worth the extra effort.

7: The extended portions of the assignments took a long time for the marks that were associated with them.

8: N/A
I used to run EOS "unassessed" and 50% of students enrolled. I assume just to get EOS on their transcripts (or to skip participation in tutorials) resulting in dissatification for both students (found it too hard, fast, or didnt' even attend) and staff (spent too much time trying to teaching students who lacked the background, ability or interest). 9: I really appreciated the opportunity to do extended OS and like the core aims. However, I feel students should not feel punished for choosing the harder course. The fact that marks are simply given away in the tutorials (for little or no effort), whereas in EOS they require more effort than the base assignments (which are huge). Perhaps better than having a 1 hr lecture stream and then give marks by extended assignment, the 1 hr lecture should be treated as a participation marked tutorial, and assessment in all other aspects should be same as base course. This would reward students that want to learn more in EOS, and at the same time, the disinterested students would simply do OS due to the easier (and more relevant) tutorials.

10: has stronger connection with adv assignment

11: A few times me and my partner were burned because we spent more time on the (in my opinion more interesting) extended portion of assignments, and we lost marks on the basic portion. We made that choice in the knowledge that it wouldn't maximise our marks, but I wish we didn't have to worry so much about that choice.

12: I think one of the more important parts of EOS was getting acquainted with actual research and papers (and what motivated them). BUT it would be nice to have more of an introduction to good OS research practises (how to setup good, reliable experiments. how to benchmark particular features of OSs , how to interpret results etc). Sometimes i felt like we were just looking at graphs. Also schedular activations confused the hell out of me, and i think the major reason was that we didn't really get to see a concrete implementation (which is fair enough). In the regular lectures, i found that seeing an example implementation of a concept (ext2, os161 context switch) really helped solidify understanding.

13: HAVE A TUTORIAL HAVE A TUTORIAL HAVE A TUTORIAL HAVE A TUTORIAL HAVE A TUTORIAL HAVE A TUTORIAL HAVE A TUTORIAL HAVE A TUTORIAL HAVE A TUTORIAL while (true){ kprintf("WE NEED A TUTORIAL KEVINn"); }

14: The current format is great. As an extended course, there is the risk of a number of students taking it who might not be prepared for the workload. The work/mark tradeoff in the Extended assignments meant that a student biting off more than they could chew in their original enrolment didn't mean an automatic fail for them. I think adding tutorials could be good though.

15: If you do decide to make the eos assignment component worth more or mandatory, you should give eos students longer on the assignment or require that they complete less of the base assignment. Logistically, I dunno how you'd do that.

16: Can't think of anything.

17: Considering the advanced components of the assignment would often take >50% of the time, yet are worth <15% of the total marks means there is disproportionate amount of time spent on the advanced component than the basic component. The advanced components are fun and challenging, but should be worth more marks.

18: EOS does not have normal tutorial materials, but going through those would also be helpful. (I know we should do these :P )

19: There was very little difference between the two courses. The assessable content of EOS is very small (4 x 1h lectures), and we didn't even get to more interesting/challenging topics :( Add more topics! Or record a video about assignments so you won't have to spend that much time in it. The advance component was OK, interesting to do, learnt a lot but there was a significant amount of work (for 5 marks). And auto-marking was quite harsh awarding all or nothing, particularly if you are close to a working submission (or you thought you had one using a design you came up with). There was also very little feedback for this part, making it not-worth the effort and time put in. Give feedback on the extended assignments, especially if you make it compulsory. Overall, the lack of content and the extra compulsory work with little feedback was a let-down. Also the assessed part of EOS in the exam was good, but again there wasn't enough.

20: Should provide more useful knowledge or more chance to practice

21: N/A

22: Advanced assignment marking should either contain more tests, or be marked by a presentation. It does not seem fair to lose the entire mark for a section if only a small part of it isn't handled. Design doc also seems useless for this part, due to automarking.
Summary:  Issue are the workload (substantial) and assessment (automarking is harsh). Ideally, only students who enrol are enthusiast interested in going the "extra mile". I will look at what I can do, but EOS needs a higher "bar".  23: It didn't really feel different from OS, apart from a couple of extra tasks that weren't exactly harder - just more things to do. Perhaps the course should have a clearer aim, and tutorials would have been nice - I gen