I Finally Finished a Coursera Class!

Tom Drapeau
Codifying
Published in
5 min readDec 1, 2019

--

Image by Traveling_through_history from Pixabay

If you are anything like me, your conscientious you signs you up for a Coursera (or Udemy) class, and then your realistic you procrastinates until you can safely forget you ever signed up. Once you have forgotten, you can then pretend you never signed up and move on with your life.

I recently wrote about my job search. I’m still feeling residual happiness over that outcome. During the search, I noticed pretty much every senior leadership opportunity expected some ML (machine learning) experience — even for roles for which the relevance of ML to the role is somewhat of a head scratcher.

My experience with machine learning was dated. The last time I synced with the industry was in 2010, and back then Hadoop and map reduce were all the rage. I have a basic understanding of Hadoop, how it works, as well as a passing understanding of writing map reduce jobs. I recognized that, in the course of bettering myself, I would need to bring my ML understanding up-to-date, to be able to maneuver in a world of TensorFlow, PyTorch and Jupyter notebooks.

I asked the advice of a good friend of mine who happens to lead a data science team here in NYC how to proceed. He recommended that I signed up for Andrew Ng’s Stanford University Machine Learning certificate course on Coursera.

First Impressions

I found the signup for the course was easy. I opted to pay $79 so that, when I finished the course, I would have an actual certificate to show for it. I’m not 100% sure why that mattered to me, but in hindsight I’m glad I did it, because I might have quit on the class a few times if not for the thought of the certificate (and money I spent).

So official!

I joined a class that had started ‘Week 1’ the previous day (I joined the class on a Tuesday). I was a bit surprised that there was a synchronous aspect to when the class starts and ends, given the asynchronous nature of experiencing the class.

When you join the class, you are allowed into a message board for everyone enrolled in the current session. The intro materials indicated I should want to ‘join the community’ by introducing myself on the message board. I did not do that, and did not feel I missed out by not participating there.

The Teaching

Andrew Ng is a PHENOMENAL teacher, and his course materials were very helpful. He blends visual, oral and written teaching seamlessly. All ‘weeks’ in the class have a mixture of reading and videos to watch. Each video has 1–2 questions embedded in them that you can keep trying to answer until you get them right.

Each week has a five question, mostly multiple choice quiz, that you’ll need to get 80% or higher on to ‘pass’ the week. You get three tries to pass it every eight hours. The quizzes are hard enough that, unless you already know the material, you won’t pass unless you do the reading/watch the videos.

Most weeks also have a coding assignment to do. They estimate three hours for completing the assignment. A few weeks it took me almost the whole duration. Bear in mind, there is no three hour time limit on completing the assignment — it is just an estimate to give students a ballpark. There are VERY helpful tutorials in the resources section of the course link. I highly recommend you find and use them, as I found them crucial in completing the assignments.

The class materials look to have been created in 2011, but the material is very relevant and foundational. After experiencing it, I wouldn’t be surprised if the course material stayed relevant many years into the future, as well.

The Experience

Most weeks, I completed the week’s worth of assignments all in one day (for me, Saturday mornings while the laundry is going). Two of the quizzes I failed three times and had to wait the eight hours to try again. Two of the programming assignments, one on training a neural network (week 5) and one on building support vector machines (week 7), were the hardest for me to complete.

I took advantage of the extra time Thanksgiving weekend allowed, and did the final five weeks worth of the class between Black Friday and the weekend. I found that it took me about two hours to complete the reading, videos and quiz. If there is a coding assignment, which there happened to be eight out of the eleven weeks, tack another two hours to complete it. YMMV.

The Takeaways

I’m really impressed with how much was covered in just eleven weeks. I think it is amazing how ‘sticky’ the teachings are and I credit his teaching methods for this: oftentimes Professor Ng would start with the rationalization/problem statement; move to theory, the math, the application and then the context in which the application makes sense.

Look at how much you learn in eleven weeks!

I also found Professor Ng to be a very humble guy. I appreciated the times he stopped a lecture to remind me that I now have a greater command of machine learning than most of the practicing ML engineers in Silicon Valley! This is probably not true, but it helped inspire me to keep going anyway. :-)

His gratitude to me as a student taking the class was obvious; and I came away feeling he genuinely meant it. It was really nice to see the last video be a video thanking me for taking the class.

Look Ma, I passed!

Conclusion

I recommend Coursera for topics where you need to quickly learn a lot of background/fundamentals, akin to how I used it to get jumpstarted on ML in 2019. I’m no saint; this is the first course I ever finished. :-|

It is great to live in a world in which this kind of high class education is available for very reasonable prices.

--

--