Skip to Content

Missing Topics in CS Coursework

In crafting a Computer Science curriculum and deciding what should be in and out of an undergraduate degree, some things are often missed. Professors usually take more care in making sure academic topics fit in somewhere, but often overlook practical topics. If you ask us, we would absolutely say that those practical topics are important, but it is often hard to figure out exactly where they will be in the curriculum, and so we treat them less carefully, and often don’t enfore their inclusion.

For at least some of these practical topics, there is a site at MIT: The Missing Semester of Your CS Education. Every CS student should spend time learning many of the topics at this site!

My Own Distinctions from the MIT Topics

  • I’m not big on vim as an editor, though I know a lot of students who use it. I use gedit for most of my writing and coding, though if I had to do a serious code project I probably would use vscode (Visual Studio Code). Knowing how to get out of vi/vim is extremely important, though, because you never know when you might end up inside it!
  • I don’t think continuous integration is an important topic for new CS students. You will, however, most likely use one in your first job.
  • Their explanation of git is weird, and not what a newcomer needs. They seem to focus on its own internals. Who cares? Just understand how to use it. You can find my own Git pages on this site (use the Tools tag).

Other Resources

None for now.