CMPUT404: Webservices


Notice: CMPUT 404 in Winter 2021 2020-07-24

I am going to be teaching CMPUT 404 in Winter 2021, remotely regardless of what the university decides.

It will be a synchronous course. You will have to attend lectures as I give them. There will be in class exercises that are synchronized.

There will be group work where you are expected to synchronize within your labs.

If we’re forced on campus in winter the actual lecture will still be online and you’re free to go that classroom and stream the lecture on the projector. I will not be there.

This will be a very synchronous online course with group work.

Notice 2020-05-19

As of 2020-07-04 Pre-requisites: CMPUT 301, CMPUT 291. You do not need CMPUT 391, I will waive CMPUT 391 iff you have CMPUT 291 and CMPUT 301.


CMPUT404 is a software engineering course about the web, backend and frontend. It’s not just a web course, it’s the web from the point of view of a software developer. How do we deploy software on the web. We cover lots of concepts.

I have cotaught with Hazel Campbell before.

The goals of the course of is to produce students who are confident with web concepts and unafraid to look under the hood to debug something.

Lab Notes

The labs for the course are hosted here:

Lecture Notes

The lecture notes are available online and available under a FLOSS compatible license:


Learn some backend, frontend, and protocols


Build a Peer to Peer blog platform

Derivative Work

Feel free to clone and copy provided you give my collaborators and myself appropriate attribute and follow the licenses.