My Data Science Master's

My Data Science Master's

By David Venturi

February 1, 2016

View this entry on Medium

I dropped out of a top computer science program to teach myself data science using online resources like Udacity, edX, and Coursera. The decision was not difficult. I could learn the content I wanted to faster, more efficiently, and for a fraction of the cost. I already had a university degree and, perhaps more importantly, I already had the university experience. Paying $30K+ to go back to school seemed irresponsible.

Here are my curriculum choices and the rationale behind them. Using thousands of course ratings and reviews from Class Central, I selected the best computer science, data science, and machine learning courses from world-class institutions like Harvard, Stanford, MIT, Berkeley, Google, and Facebook. You can read my detailed reviews for most courses here (courses with reviews link to a blog post) or on Medium.

Note that the curriculum covers both Python and R, which are the two most popular programming languages for data science.

Note: if you’re looking for an online data science curriculum to follow, the link below contains my most up-to-date recommendations. I started creating this project midway through my personal data science master’s.


Bridging Module

A solid computer science foundation

I want a solid computer science foundation before I start learning data science. My engineering background gives me a head start on the math and stats. Completing these three courses means I will have a standard first-year computer science curriculum, plus the full mathematical and statistical core, under my belt.

The following courses from my undergrad chemical engineering program are also core computer science courses:


Data Science Core

The fundamentals

Listed below are the individual courses contained within the Nanodegree. The estimated timeline for graduation is 378 hours.

Three courses from the Udacity Data Analyst Nanodegree

Why the Udacity Data Analyst Nanodegree?

First and foremost, it received stellar reviews. Second, I wanted a consistent learning experience for my introduction to the field. The Data Analyst Nanodegree offered a combination of breadth, depth, and cohesiveness that a combination of content from various providers would be hard pressed to provide. I am also a fan of their “less passive listening (no long lectures) and more active doing” approach to education.


Machine Learning

Learning from data

Stanford University, TensorFlow (Google’s open source library for machine learning), and The University of California, Berkeley


Software Engineering

Best practices

Listed below are the individual courses contained within Johns Hopkins University’s “Mastering Software Development in R Specialization” on Coursera:

Johns Hopkins University’s "Mastering Software Development in R Specialization" on Coursera

Why software engineering?

The role of software engineering in data science is covered in great detail here by Alec Smith (a data science recruiter) and here by Roger Peng (Johns Hopkins University professor and “Mastering Software Development in R Specialization” creator). A quote from the former:

A lot of data science work is software engineering. Not always in the sense of designing robust systems, but simply writing software. A lot of tasks you can automate and if you want to run experiments, you have to write code, and if you can do it fast, it makes a huge difference.

And from the Mastering Software Development in R Specialization page:

As the field of data science evolves, it has become clear that software development skills are essential for producing useful data science results and products. You will learn modern software development practices to build tools that are highly reusable, modular, and suitable for use in a team-based environment or a community of developers.

Back End Development

Storing and manipulating data

Why back end development?

This Quora page and this Udacity article suggest that back end development and data science can be a useful combination. These Udacity courses, which are the back end courses in their Full Stack Web Developer Nanodegree, along with Stanford’s top-ranked databases course, add an aspect of data engineering to the curriculum.


Additional Resources

Filling in the gaps. Suggestions welcome!

This section is fluid. Additional resources will be added as I progress through the curriculum.


That’s it!

Many thanks to Dhawal Shah of Class Central, as the ratings and reviews from his online course search engine (plus a few insider tips) helped guide the above curriculum choices.

If you have any recommendations for the curriculum, the above subject material in general, or would like to chat about your own educational goals, please don’t hesitate to contact me.