The lecture schedule for this course is:

The lecture slides below are part of this website, so (like any other website) they can be updated. There won’t be major changes after the lectures have been delivered, but I’ll correct any errors, add any new examples/analogies which come up in class.

It is expected that you attend every lecture and make your own notes. The lecture slides aren’t a textbook—they’re visual aids to help explain the concepts in the lectures. This is a good thing—there’s nothing worse than a lecturer who just drones on, reading the textbook from the slides. We’re gonna have more fun than that :)

However, this means that taking notes (in addition to the lecture slides) is an essential part of the learning process. You can’t just download the slides the night before exam and expect to be able to memorise a bunch of facts and pass the course.

Lecture recordings are provided for each Tuesday/Thursday lecture in both low and high-quality versions. Any use of the video recordings (outside the scope of this course) requires explicit permission by the course convenor (i.e. Ben).

Any information referring to lectures which haven’t happened yet is subject to change—so check back regularly.

By student request, I’ve also provided pdf versions of the slides (using decktape to do the html→pdf conversion, if you’re interested). However, the pdf slides have a few limitations:

  • they won’t have any of the interactive bits (e.g. the conversion widget slide)
  • they can’t be live-updated (e.g. error corrections, new content based on student feedback) like the html slides can be, so it’s up to you to make sure you’re checking back regularly for the latest versions
  • there also might be some weird layout stuff going on (since the conversion process isn’t perfect)

So, my advice is to use the html versions of the slide content (they’re the gold standard), but the pdf stuff is there as well (keeping in mind the caveats above).

Week 1: Introduction & Digital Logic

Week 2: ALU Operations

Week 3: Memory Operations

As well as the Echo360 recording fail (not uncommon on campus this semester) my backup system also failed this week. So there’s no Tuesday week 3 lecture recording. I’m really sorry about that.

Week 4: Control Structures

Week 5: Functions

Week 6: Assembler Macros

The Tuesday week 6 lecture finishes off the Functions content from week 5.

mid-semester break

Week 7: Data Structures

Week 8: Asynchronism, Interrupts & Concurrency

Remember that there’s a guest lecturer this week.

Week 9: Async funtimes

The Tuesday week 9 lecture was mostly livecoding and other live stuff (including dancing!), so there’s not too much on the slides. Also, there was no lecture on Thursday in week 9

Week 10: Networks

Week 11: Operating Systems

Week 12: Architectures

The Thursday Week 12 lecture was the revision song, I’ve uploaded a smartphone video below (thanks Zoey).

Updated:  31 May 2018/ Responsible Officer:  Head of School/ Page Contact:  Ben Swift/ Licence:  CC BY-NC-SA 4.0