ENGN2219: Difference between revisions

From Hitchhiker's Guide to CS
Jump to navigation Jump to search
m (Test refs - work now?)
Tag: 2017 source edit
mNo edit summary
Line 3: Line 3:
'''''NOTE:''' this course has been regularly changing since it switched from simulation in MATLAB (pre 2018) to computer architecture and (originally) also some simulation in Python (2019 on). It continues to change now that Shoaib has taken over from Ramesh, and 2022's incarnation should be very different again.''
'''''NOTE:''' this course has been regularly changing since it switched from simulation in MATLAB (pre 2018) to computer architecture and (originally) also some simulation in Python (2019 on). It continues to change now that Shoaib has taken over from Ramesh, and 2022's incarnation should be very different again.''


This is a comp course with the “ENGN” label slapped onto it. Although the prerequisite is COMP1730 OR COMP1100, COMP1100 students are gonna struggle with the python syntax if they’re not familiar with it. Mind that most comp sci students don’t take this, but if you’re doing a double of engineering and comp sci, you’ll have to take this course for the engineering degree.<ref>Actually, this might not be true; from 2019-2021 you could take COMP2300 instead and count it. Unsure if that'll still be the case, or whether it might actually be preferable to take ENGN2219 now, as it's going more in-depth with computer architecture.</ref> As an engineer who took this course with COMP1730 as my prereq, I found this course heaps of fun because there’s a physical board on it with lights that go blip-blip (yes, there’s an entire lab dedicated to making the LEDs light up). The content is a bit dry, but most of the tutors are really nice; so nice that I became one of the tutors because they thought I could be a good tutor.
This is a computing course with the "ENGN" label slapped onto it. Although the prerequisite is [[COMP1730]] or [[COMP1100]], there is assumed knowledge of Python syntax and it's worth brushing up beforehand if you took 1100. Most computer science students don't take this course. If you're in an engineering degree (including part of a double with computing) you have to take this course for the engineering degree.<ref>Actually, this might not be true; from 2019-2021 you could take COMP2300 instead and count it. Unsure if that'll still be the case, or whether it might actually be preferable to take ENGN2219 now, as it's going more in-depth with computer architecture.</ref> This course is pretty fun because there's a physical board with LED lights and an entire lab dedicated to lighting them up. The content is a bit dry, but most of the tutors are really nice.


Some pitfalls of the course is that VSCodium can be fairly difficult to wrangle/set up. If you don’t set it up early on your laptop and actually use it on your laptop, you’re bound to find some debugging bugs while doing your assignment. Would recommend using it early to find the bugs early (last thing you want is the debugger to break the night before an assignment is due). If you’re an engineer, you’ll have to get use to the 100% late penalty (i.e. if you don’t submit on time, it’s worth 0%), but usually there’s ample time if the management in the background is going okay. There is also some disjointedness between the ARM assembly content and the python content. By the time you figure out how ARM works, you have to swap to Python.
Some pitfalls of the course is that VSCodium can be fairly difficult to set up. If you don't set it up early on your laptop and actually use it on your laptop, you're bound to find some debugging bugs while doing your assignment. It's recommended using it early to find the bugs early (last thing you want is the debugger to break the night before an assignment is due). If you're an engineer, you'll have to get used to the 100% late submission penalty (i.e. if you don't submit on time, it's worth 0%), but usually there's ample time if the management in the background is going okay. The course is split into a section on ARM assembly and one on Python, and the transition is fairly sudden and jarring.


Overall, it’s a fairly good course (from a student and tutor point of view). There’s some interesting history with this course (drop by CSSA if you want to hear about it) but the tutor team is fairly good. I wouldn’t do this course online because it wasn’t very engaging, but if this course is offered in person, I recommend you get it done and out of the way (since it’s usually a prereq). Feel free to take this as an elective if ARM and python is your thing, but it’s not comp sci focused if you wanted more in-depth detail.
Overall, it's a fairly good course (from a student and tutor point of view). There's some interesting history with this course (drop by CSSA if you want to hear about it) but the tutor team is fairly good. It's not nearly as engaging when done online. If this course is offered in person, it's worth getting it done and out of the way early because it's a prerequisite for some later engineering courses. Feel free to take this as an elective if ARM and Python interest you, but it's not computer science focused if you're interested in more in-depth theory.


[[Category:2000-level courses]]
[[Category:2000-level courses]]
[[Category:ENGN courses]]
[[Category:ENGN courses]]

Revision as of 19:51, 8 January 2022


NOTE: this course has been regularly changing since it switched from simulation in MATLAB (pre 2018) to computer architecture and (originally) also some simulation in Python (2019 on). It continues to change now that Shoaib has taken over from Ramesh, and 2022's incarnation should be very different again.

This is a computing course with the "ENGN" label slapped onto it. Although the prerequisite is COMP1730 or COMP1100, there is assumed knowledge of Python syntax and it's worth brushing up beforehand if you took 1100. Most computer science students don't take this course. If you're in an engineering degree (including part of a double with computing) you have to take this course for the engineering degree.[1] This course is pretty fun because there's a physical board with LED lights and an entire lab dedicated to lighting them up. The content is a bit dry, but most of the tutors are really nice.

Some pitfalls of the course is that VSCodium can be fairly difficult to set up. If you don't set it up early on your laptop and actually use it on your laptop, you're bound to find some debugging bugs while doing your assignment. It's recommended using it early to find the bugs early (last thing you want is the debugger to break the night before an assignment is due). If you're an engineer, you'll have to get used to the 100% late submission penalty (i.e. if you don't submit on time, it's worth 0%), but usually there's ample time if the management in the background is going okay. The course is split into a section on ARM assembly and one on Python, and the transition is fairly sudden and jarring.

Overall, it's a fairly good course (from a student and tutor point of view). There's some interesting history with this course (drop by CSSA if you want to hear about it) but the tutor team is fairly good. It's not nearly as engaging when done online. If this course is offered in person, it's worth getting it done and out of the way early because it's a prerequisite for some later engineering courses. Feel free to take this as an elective if ARM and Python interest you, but it's not computer science focused if you're interested in more in-depth theory.

  1. Actually, this might not be true; from 2019-2021 you could take COMP2300 instead and count it. Unsure if that'll still be the case, or whether it might actually be preferable to take ENGN2219 now, as it's going more in-depth with computer architecture.