Mastering Big O Notation

Looking back at the MITx 6.00x course, one concept that I continued to struggle with even in the final exam was Big O notation. The overall concept doesn’t give me any trouble. Professor Grimson is a superb lecturer who explained the idea clearly: Big O notation is used to compare the complexity of algorithms in terms of the relative time or memory it takes to run them in a worst case scenario (i.e. when you have ginormous input).

As I was going through the course, I watched the lectures on edX and an optional recitation posted on the MIT OpenCourseWare website. I got it … sorta. Continue reading “Mastering Big O Notation”


Done with 6.00x

I just finished the final exam for 6.00x (Intro to CS and Programming), the MITx course I was taking in the fall. I have to admit that my stamina took a nosedive near the end of this course.

It’s really hard to keep up coursework over the holidays, and some hiccups in the course administration — mostly delays in getting new assignments posted — messed up my rhythm. So I put off doing the final problem set and watching the last couple sets of lectures until last week. And I have to admit something possibly scandalous: I didn’t bother finishing the final exam. Continue reading “Done with 6.00x”

Geeking out with MOOCs

As my MITx computer science course comes to an end, I’m looking at the next three MOOCs I am planning to take:

Did you know that Stanford has online classes, too? A lot of people are becoming more familiar with Coursera and edX (as well as other platforms), but I had forgotten about Stanford. Right now they are only offering this one class, but it’s perfect for me because I have been wanting to learn more about the inner workings of databases. Continue reading “Geeking out with MOOCs”

Learning a New GUI

Last fall, I decided to dive back into computer programming—at least beyond the HTML and CSS (and bits of PHP) that I have been playing with for years. This time around, I decided to try Python. I found three free online courses that used Python: “Learn to Program: The Fundamentals” and “An Introduction to Interactive Programming in Python” from Coursera, and “Introduction to Computer Science and Programming” from edX.

The first course was a methodical introduction to programming in Python. It helped remind me of the basics of programming while I tackled the other two courses. The edX course (which I’m finishing up in the next week or so) is a more solid, comprehensive computer science course. I feel like it introduced more theory and more challenging problem sets, but it did have the advantage of being a longer course. The most fun, though, was the interactive programming course, a.k.a. how to create games in Python. Continue reading “Learning a New GUI”