Yes, I’m a big fan of learning how to write code.  I’m beginning to get back into it myself, slowly but surely.  However, the problem at this point in my life is knowing exactly what I need to learn in today’s era of programming.

I started my programming courses over 10 years ago, long before there was any such thing as a “smartphone,” let alone the iOS and Android platforms that have become such a huge part of modern programming.

Don’t get me wrong, sites like CodeAcademy and Scratch are great to get started if you have no prior experience with object-oriented languages, but that’s not where I’m at.

I’m ready to dive into the meat of programming, while getting a refresher on some of the core concepts that I learned all those many years ago (trust me, ten years may not sound like a long time, but if you’re not using your programming skills on the regular, you lose them).

The great thing about the time we live in is the readily accessible treasure troves of knowledge produced by some of the leading universities in the world, especially on the topic of computer science.  I think it has something to do with the geek need to show off how much we know, which means that we like to share our knowledge (and skills) with the world.

And, of course, a lot of that information is handed out free of charge.

aGrupieWare, an independent app company, checked out the requirements for several top computer science programs in the US andcreated this program from courses offered by MIT, Stanford, and more.

Here’s their list, which they have stated will be updated and improved upon as they receive feedback from the online community. I’ve pulled the list directly from their site to ensure links are taking you to the right locations.

Introductory Courses  

Intro to Computer Science, pick two of three:

Basic mathematics, pick one of two:

Core Courses 

Data Structures and Algorithms, pick one of two:

Operating Systems:

Programming Languages and Methodologies:

Computer Architecture:


Data Communications:

Cryptography and Security:


Web Development:

Data Structures:


Programming Languages:



App Development:

Artificial Intelligence:



Keep in mind that taking these courses does NOT grant you a degree from any of these institutions. Sorry folks, I wish it were that simple.

Seen via Lifehacker and aGupieWare