Number of Respondents: 18/36 (50%)
The instructor(s) helped me to understand the course concepts.
Average: 4.94
Standard Deviation: 0.23
| Strongly Disagree | Disagree | Neutral | Agree | Strongly Agree | No Basis for Rating |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 1 | 17 | 0 |
| 0% | 0% | 0% | 5.56% | 94.44% | 0% |
Comments
[Strongly Agree] Answers student questions effectively and succinctly. As someone with very limited prior knowledge to programing, I was able to understand clearly.
[Strongly Agree] Very clear lectures, also does demos sometimes to show cool stuff.
The instructor(s) created a supportive environment that helped me learn (Supportive environments enable students to feel included and valued regardless of any aspect of their identity).
Average: 5
Standard Deviation: 0
| Strongly Disagree | Disagree | Neutral | Agree | Strongly Agree | No Basis for Rating |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 18 | 0 |
| 0% | 0% | 0% | 0% | 100% | 0% |
Comments
[Strongly Agree] Funny guy
The instructor(s) stimulated my interest in this course.
Average: 4.94
Standard Deviation: 0.23
| Strongly Disagree | Disagree | Neutral | Agree | Strongly Agree | No Basis for Rating |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 1 | 17 | 0 |
| 0% | 0% | 0% | 5.56% | 94.44% | 0% |
Comments
[Strongly Agree] Very interesting content post midterm.
[Strongly Agree] Ross is an amazing professor who has a great sense of humour.
[Strongly Agree] The additional demos gave me some directions in terms of what to study next.
The intended learning outcomes were identified (Learning outcomes/objectives articulate what students should be able to know, do, and/or value by the end of a course).
Average: 4.61
Standard Deviation: 0.76
| Strongly Disagree | Disagree | Neutral | Agree | Strongly Agree | No Basis for Rating |
|---|---|---|---|---|---|
| 0 | 1 | 0 | 4 | 13 | 0 |
| 0% | 5.56% | 0% | 22.22% | 72.22% | 0% |
Comments
[Strongly Agree] Would be better if the 5 modules were outlined before the end of module 1 so we can get a bigger picture and understand why we’re learning the stuff in module 1
[Disagree] i still don't really understand the point of learning these languages (SIMPL, PRIMPL, A-PRIMPL, MMIX).
The course activities prepared me for the graded work.
Average: 4.5
Standard Deviation: 0.6
| Strongly Disagree | Disagree | Neutral | Agree | Strongly Agree | No Basis for Rating |
|---|---|---|---|---|---|
| 0 | 0 | 1 | 7 | 10 | 0 |
| 0% | 0% | 5.56% | 38.89% | 55.56% | 0% |
Comments
[Strongly Agree] In-class examples were very useful, but could use more.
[Agree] Give us more assignments pre midterm because some topics barely had any exercises for us to do (aside from the midterm review session)
The intended learning outcomes were assessed through my graded work.
Average: 4.5
Standard Deviation: 0.6
| Strongly Disagree | Disagree | Neutral | Agree | Strongly Agree | No Basis for Rating |
|---|---|---|---|---|---|
| 0 | 0 | 1 | 7 | 10 | 0 |
| 0% | 0% | 5.56% | 38.89% | 55.56% | 0% |
Comments
[Strongly Agree] Assignments reflected lecture content.
The course workload demands were...
Average: 4
Standard Deviation: 0.58
| Very Low | Low | Average | High | Very High | No Basis for Rating |
|---|---|---|---|---|---|
| 0 | 0 | 3 | 12 | 3 | 0 |
| 0% | 0% | 16.67% | 66.67% | 16.67% | 0% |
Comments
[Average] First half seemed easier than CS 136, but post-midterm, the difficulty ramped up. Would prefer more examples and help for compilers and assemblers.
[High] The assignments can take some time.
Text Questions
The most important thing I learned in this course was:
Data structures, compilers/assembly (interesting)
Code, Static, Heap, Stack.
And side effects introduce complications.
Better C programming? Honestly I am unlikely to use anything that I learned in this course given the heavy focus on made up languages like Primpl and Racket.
My love for compiler design. Also gave me a deep understanding of how computers and programming languages work.
c memory stuff
Not to be afraid to ask for support or help when I need it! I had a wonderful conversation with you during office hours and I wish I were able to go to them more often if going to lectures already wasn't big enough of an issue for me. The content was stimulating and interesting, and going to lectures definitely would help intuition much better than otherwise.
Low level computing
Being able to reason about how languages actually work and understanding how lower level languages get abstracted higher and higher. It was interesting to see the entire process going up (admittedly less interesting to have to write it all, but it was informative).
Interpreters
Modelling memory and low level programming
All languages aren't real and programming is a lie
How my high-level programs are actually represented & implemented on my computer at the machine level.
What helped me to learn in this course was:
Taking notes, attending lectures, and reading lecture summaries. Also having friends who I can talk to.
Just programming. Really getting my hands dirty with C programming and using Valgrind to check if I was leaking memory or having dangling pointers.
good energy and clarity of the course staff in teaching and helping during office hours and online discussions
Some of the assignments were quite good and helped me to better understand the material (I generally learn CS better through assignments than lectures). Other assignments were tedious nightmares where much of the work taught me little to nothing (C10 and Q8 come to mind)
The assignments help a lot in terms of understanding.
posted lecture notes
Discussing problems with peers, seeking help during office hours, and the attached lecture summaries (bless).
The professor and the assignments
The lecture summaries are great, just sometimes not posted in time for me to peruse before class. I like reading a little before lectures so I'm not completely confused.
Assignment questions
Reviewing course notes that I have written thoroughly and making sure I understood the assignmetn statements
The video game: Human Resource Machine
was very helpful to getting used to the assembly-llke languages and also for working with GOTO statements
What changes, if any, would I suggest for this course?
Would prefer a list of upcoming assignments (Title, Due date), as well as getting more information in marmoset (more info on release tests, showing exact # of tests passed).
Honestly nothing. This course was a introduction to the world of side effects and I believe it perfect.
It seems like a really strange choice to make an introductory CS course lean so far into compilers, especially when we have a required second year course entirely on compilers. I would much prefer CS 146 use the extra time we have over CS 136 to do an overview of various topics in CS (maybe a little compilers, a little operating systems, a little data science, a little front end / UI) to give a better overview and help students find what they are interested in. Not sure that will every happen but I think it would be nice.
There's not enough practice content for midterms and finals, we have no expectations going in.
no style marks
Make the midterm and final exam more approachable. It is almost impossible to interpret what types of questions could show up which makes it very difficult to study and prepare for. I was expecting a midterm biased heavily towards conceptual understanding, however most questions relied on implementation skills and assignment-type questions rather than the abstractions and niche details discussed in lectures. I hope it is easier in future years to differentiate between content that is good for our learning and understanding, and content that is important to fully wrap our heads around and properly comprehend.
Give us more assignments pre midterm and give us a brief outline of the 5 modules in the beginning (helps give the course cohesion)
Maybe a few less assignments toward the end. It's a bit of a busy time looking for jobs which is probably more of a priority than trying to wrangle a compiler. But I'll get on it..
Course notes that aren't fully text-based (e.g. slides)
Give more assignments in the beginning of the course to get familiar with some of the harder concepts
I think we could've skiped SIMPL and went straight to PRIMPL