Interactive software research consultant. Drummer, samplista, free software and free culture hacktivist
1 story
1 follower

Computer Science Courses that Don't Exist, But Should

7 Comments and 23 Shares

CSCI 2100: Unlearning Object-Oriented Programming
Discover how to create and use variables that aren't inside of an object hierarchy. Learn about "functions," which are like methods but more generally useful. Prerequisite: Any course that used the term "abstract base class."

CSCI 3300: Classical Software Studies
Discuss and dissect historically significant products, including VisiCalc, AppleWorks, Robot Odyssey, Zork, and MacPaint. Emphases are on user interface and creativity fostered by hardware limitations.

CSCI 4020: Writing Fast Code in Slow Languages
Analyze performance at a high level, writing interpreted Python that matches or beats typical C++ code while being less fragile and more fun to work with.

CSCI 2170: User Experience of Command Line Tools
An introduction to UX principles as applied to command line programs designed as class projects. Core focus is on output relevance, readability, and minimization. UNIX "ls" tool is a case study in excessive command line switches.

PSYC 4410: Obsessions of the Programmer Mind
Identify and understand tangential topics that software developers frequently fixate on: code formatting, taxonomy, type systems, splitting projects into too many files. Includes detailed study of knee-jerk criticism when exposed to unfamiliar systems.

Read the whole story
951 days ago
I'd be up for unlearning OO, studying classic software, making command line programs more usable and better understand programmer obsessions. Not so sure about the fast code in slow languages one (I would probably end up being the annoying student trying writing C++ code to run 10x faster than the profs examples :P)
Porto, Portugal
951 days ago
Share this story
6 public comments
948 days ago
This. This. Really, really, this.
950 days ago
Differential diagnosis 101
Zagreb, Croatia
951 days ago
That last one should come first, then they have the required skills to stay focussed on the other ones
951 days ago
I already took these classes at the School of Hard Knocks.
951 days ago
What if some day you could get a Classical Studies degree that included study of 80s software and video games
Waterloo, Canada
951 days ago
We're on our way; pretty sure that the original Super Mario Brothers has been deconstructed to death in various game studies
952 days ago
A+++++ would enroll again
Earth, Sol system, Western spiral arm
952 days ago
Same here :-)