CSC course dependencies

:: First-Year Data, Department Data

By: John Clements

Here’s an SVG showing all of the dependencies associated with CSC courses:

Yes, it’s a little small to read. Click on it to see a bigger version. It’s an SVG, so you can blow it up arbitrarily. (Note: this picture is a lot more readable since Aaron Keen made the eminently sensible suggestion that it be left-to-right rather than bottom-to-top.)

Things to know about this data:

  • It’s scraped from the 2015–2017 course catalog in HTML format.
  • All cross-listed courses are normalized to their CSC equivalents.
  • Arrows are shown to all courses mentioned in the prereqs.

The last of these is significant. If a course has a pre-requisite like “Both CSC 124 and one of MATH 117 or MATH 118”, I just draw arrows to all of them. So don’t assume that the number of outgoing arrows is an indication of the number of courses required to take this course.

  • There are lots of courses shown here that haven’t been taught in a long time. CSC 108 jumps out at me, but there are others.
  • Some courses have a prerequisite that can be fulfilled by a no-longer-existing course. For instance, CSC 141 changed into 348, but there are still a bunch of courses that list CSC 141. Since 141 is not displayed as a hyperlink in the catalog, we assume that it’s defunct, and we don’t show it.
  • No dependencies are shown for non-CSC courses.

All scraping and processing done in Racket, natch. Graph drawn with Dot.