Computer Science

  • Matt Might provides a pretty comprehensive guide to what CS students should know. There’s not really enough time for us to get to everything in class — you’ll need to put in time outside of class if you want to know all of this. It’s worth it, though.
  • A nice collection of advice and info. Although it says freshman, it will likely be useful to all CS students.
  • Vizualizations of many algorithms and data structures.
  • A massive list of links for programmers, ranging from tech news to interview preparation to improving your English.
  • Teach Yourself CS is another list of resources. It’s aimed toward self-taught software engineers, but the materials could be very useful if you’re struggling in a particular course.
  • Get better at using the shell with with CMD Challenge.
  • Visualize the code you write using Python Tutor. Despite the name, you can program in Python, Java, JavaScript, C++, and more!
  • A collection of resources for programmers.
  • Programming interviews are notoriously difficult. There’s little evidence to suggest they lead to good hiring decisions, yet I don’t think they will change anytime soon. In the meantime, get some practice at the Tech Interview Handbook. It gets easier with practice.
  • Here is a fun collection of video game source code from real, commercial games.
  • 100+ Project Ideas for programmers or those learning to program.
  • The Interview Study Guide for Software Engineers
  • Free-for.dev: a list of free software and services for developers.

General Learning

  • Coursera’s free Learning How to Learn course will improve your learning of all topics, not just computer science.
  • In a similar vein, improving your problem-solving skills will help many facets of your life. This tutorial is a pretty good one. Also check out Polya’s How to Solve it.
  • I heard you like lists, so here is a list of cool lists.