What I Didn't Learn in a CS Degree

Posted

I recently stumbled across The Imposter’s Handbook, which describes itself this way:

For the longest time I would remain silent when discussions with my peers would veer toward theoretical topics like P vs. NP, Lambda Calculus or bubble sort vs. merge sort… I decided to change all of this a year ago. I sat down and looked up all of the topics that a typical CS degree covers and then I dove in. Half way through, I decided to write a book about what I was learning.

It’s an interesting project, but it got me thinking about all the things I didn’t learn when I did do a CS degree:

It’s easy to say “this stuff isn’t part of computer science”, but that’s disingenuous. The boundaries of computer science can be exactly where we choose to draw them, just like the boundaries of medicine or economics. Right now, those boundaries are drawn by the privileged in ways that implicitly enshrine their privilege, but they could include this:

Declining Female Participation in Computing

or the fact that “Massive Open Online Course” has effectively come to mean ubiquitous surveillance in the classroom, or anything else if we so choose.

The first step toward choosing is to be aware that there are choices. That’s why I’m looking forward to The Imposter’s Handbook, but would look forward more to a book that collected and presented all the “other stuff” I didn’t learn in school. I’m not qualified to write it, but nothing would make me prouder than to see it as the next volume in the AOSA series. I’d be grateful for your thoughts.