CS50 is Harvard University's introduction to the intellectual enterprises of computer science and the art of programming. It is to be offered at both Harvard and Yale in coming semesters, marking a notably rare educational collaboration between the rival institutions. The entire course is also available online for free. Complete with lectures, notes, problem sets & YouTube walkthroughs of various concepts, anyone can emulate Harvard’s introduction to Computer Science from home, and I’d highly recommend it.
In full disclosure, despite my love of technology, I had never taken a formal computer science course before, nor have I attended a course at Harvard University. The college and the Internet have made it possible to basically audit the entire course and absorb the masterful teaching of David J. Malan at your leisure. So if you’ve ever been interested in how computers work, this course is a great investment of your time.
CS50 includes multiple tracks, challenges and exercises for students depending on their familiarity with the material. Even if you don’t have the slightest idea of how binary numbers work and you can’t tell a bit from a byte, this is the best way I know of to gain a general understanding of computer science and the fundamental concepts of programming.
In summation, my hat’s off to Harvard for making this possible. There are a number of barriers between most people and institutions that offer this caliber of education, but distribution on the Internet overcomes every single one of them. Increasingly complicated electronics now permeate every aspect of modern life and a fundamental understanding of how computers function is a very empowering gift.