If you have a hankering to learn programming, but don’t have the time or money to invest in going back to school to get a computer science degree, there are lots of free options to help you pick up some coding (and other CS) skills. For example, you could take a free course taught by Microsoft experts or you could pick up one of the many free programming books available online. A new(ish) GitHub repository provides yet another option: access lecture videos and other course materials that many university computer science programs make freely available online.
The repository, simply called Awesome Courses, was created last year by Prakhar Srivastav and it provides a list of college computer science classes that make course-related materials such as lecture videos, notes, assignments and readings available online. The repo links to content from over 140 courses taught at some of the top CS programs in the country, such as M.I.T, Stanford, Cornell, and Carnegie Mellon University. Courses are organized by topic (e.g., Systems, Programming Languages, Machine Learning).
I took a spin through the list and a found a number of pretty good sounding courses that make a lot of material available online, such as:
- M.I.T.’s 6.001 Structure and Interpretation of Computer Programs
- Harvard University’s CS 50 Introduction to Computer Science
- University of Illinois’ CS 421 Programming Languages and Compilers
- Cornell University’s CS 5142 Scripting Languages
- Stony Brook University’s CSE 373 Analysis of Algorithms
There are a lot more interesting sounding courses you can explore in the repository. Take a look for yourself and happy learning!