Note: This post is for beginners who are looking to get started with data science and machine learning and want to know how they could design their own online curriculum. If you've got over a year experience with data science, you'll probably find the most value either copying the curriculum template in Notion (for your own use case) or by looking at the later steps outlined below.
When I worked at Apple, we had a system. If you had a device with an issue, you could walk-in, tell us the problem, then we’d either let you know how to fix it on the spot or take your name down so we could book you 1-on-1 time with a technician.
I was a technician so once I’d finished with one customer, I’d look at the list of names and go to the next.
One day a girl came in for help with her iPhone. I walked over to her and said hello and noticed her scrolling through a blue app.
I asked her what the app was.
Coursera, she said.
What’s that? I asked.
It’s an app where you can learn different things.
Oh really? Are you studying at university?
Not anymore, I just think it’s always good to be learning something.
She doesn’t know but that one line changed my whole life. Up until then, I’d only learned when I was required: for a job, for school. Of course, there were times when I’d followed my own genuine curiosity (playing video games, learning to cook) but her words illuminated the fact if I really wanted to, I could learn anything I wanted. Anything.
It’s funny how chance encounters have that effect.
My own path
That night I went home and searched the name of the blue app she told me about. And it was like I’d discovered a new hidden land. You could pick what you wanted to learn and there was a class starting... tomorrow.
Up until then, I’d been studying (and failing) at university. I’d considered what to learn but having to be at certain places at certain times didn’t suit me. I started college at 17-years-old. All I wanted to do was sit on the grass and look at girls.
Alas, I never actually used Coursera until a couple of years after the girl at the Apple Store told me about it.
I left Apple and decided I wanted to learn how to build the programs I was helping troubleshoot.
Whilst learning to code for the fourth time (I gave up the first three times), I stumbled upon machine learning. In other words, writing code to use math to find patterns in data.
I have to learn this, I thought.
And since I decided I’d spent enough time at university for the previous decade, I put together a list of online courses to create my own AI Masters Degree.
And guess what?
Many of them were from that blue app the girl showed me.
Your own path
If there’s anything 2020 has made clear, it’s that every individual has to be in charge of their own health and education.
Now it’s 2021 (or later if you’re reading this in future, hello btw) and physical gathering rules are still up in the air, many (perhaps you) are turning to online resources to learn rather than traditional sources.
This piece is not an argument for university versus learning online. Do whichever suits you.
This piece is a demonstration of how quickly you can piece together your own curriculum for data science and machine learning using Coursera.
However, don’t mistake how quickly you can put together a curriculum as the job being over.
Learning anything worthwhile and especially learning online is not for the faint of heart. If you don’t already have one, you will have to develop a sense of accountability. That’s what developing your own curriculum does for you. It puts you on the hook.
An example data science and machine learning curriculum
People always ask me, why not use free resources?
And I tell them, sure, you can use free resources. But I’ve found they don’t work as well for me. When I first used Coursera, they charged monthly. I knew what was I paying straight away. Knowing I was paying for something made me take it more seriously.
But didn’t you pay for university?
Yes. But I didn’t see the money come out of my account. I thought it was free, I thought it was magic. I took 5-years to complete a 3-year degree and ended up $35,000 in debt (significant but minor compared to others).
Now Coursera have a service called Coursera Plus. ~$537 AUD (~$399 USD) for a whole year of access to world-class learning materials. Ho, ho. If that existed when I started using Coursera, I would’ve saved a bunch.
Time to get specific.
About a year ago, I wrote a post called 5 Beginner-Friendly Steps to Learn Machine Learning putting together resources across the internet to learn the fundamentals of machine learning.
The post focused on getting the reader from knowing nothing about programming to writing machine learning code with the Python programming language as soon as possible.
So to kick 2021 off, I thought I’d replicate that post with a handful of Coursera courses all available through Coursera Plus.
But wait... this is not just a simple replication. I’ve also put together a Notion template you can use to keep track of your progress.
If you’ve never used Notion before, explore the template and click a few things (don’t worry, you can’t break it) before clicking the “duplicate” button in the top right corner, then you’ll be able to alter it to suit your needs.
You can see a video walkthrough of the above Notion template and curriculum below on YouTube.
Now how about a little less interactive-ness with a list of steps.
Note: If you're reading this and thinking "wow, this sounds like an ad for Coursera", you're right. Coursera reached out to me asking if I'd be interested in writing a post dedicated to helping students put together their own curriculums with Coursera and I said yes. That being said, take this message as a disclosure, if you click on a link in this post and pay for something, the amount will not change but I will get a portion of the amount you pay (funds I use to create resources like this).
What it is: Discover and copy the best learning techniques from artists, mathematicians, musicians and more.
Why it’s important: If you're going to be self-driving your own learning journey, you might as well learn how to learn. Learning how to learn is the ultimate meta-skill. Because if you can learn how to learn, you can learn anything.
I recommend everyone do this course regardless of whether they're learning data science and machine learning or particle physics. You can checkout my full review article on the blog.
What it is: This Specialization will help you go from zero programming ability to being able to write Python code.
Why it’s important: If you want to get into data science and machine learning, chances are, you're going to be writing Python code. But it'll be hard to write Python machine learning code without ever using the language before. So use this Specialization to familiarise yourself with Python's fundamental concepts.
Step 3: Applied Data Science with Python
What it is: Now you've got some foundational Python skills, it's time to start tailoring them to be able to work with data. This Specialization will get you familiar with popular Python data science libraries such as pandas, matplotlib and scikit-learn.
Why it’s important: Since Python is a general programming language, you can do almost anything in it. But the good news is, the fundamentals you learned in the Python for Everybody Specialization can be used here. More specifically, you'll start to learn how to use:
- pandas – An extensive data analysis library for working with data like what you'd find in Excel spreadsheets (rows and columns).
- matplotlib – A Python library for creating visual plots with your data.
- scikit-learn – A powerful machine learning library with many pre-built machine learning models and functions for preparing and transforming data.
Step 4: Machine Learning Specialization
What it is: How do you diagnose a machine learning problem? Is it regression? Classification? Clustering? Information Retrieval? This Specialization will teach you how to answer those questions and build systems which are able to learn patterns within datasets.
Why it’s important: The Applied Data Science with Python Specialization taught you how to manipulate and visualise data, now in the Machine Learning Specialization, you'll learn how to write machine learning code to find patterns in that data.
What it is: If you've been wondering how machine learning algorithms are able to learn patterns in data, there's one answer: math. Mostly through a combination of Linear Algebra and Multivariate Calculus (plus some others).
The Mathematics for Machine Learning Specialization will help you understand the underlying mathematics which powers many of the most effective machine learning algorithms.
What it’s important: Data is a compressed form of nature, math can be used to find patterns in data and code can be used to execute math at scale. The steps above focus on getting you to write code as soon as possible. However, as you learn more, you'll probably want to discover how the code you're writing works.
This Specialization will take you deep into the inner workings of machine learning algorithms and further strengthen your understanding of the code you're writing.
There are 3000+ Specializations/courses available on Coursera Plus. Too many for you to ever go through.
The ones I’ve picked are from my own personal experience (I’ve gone through them) or because their content is world-class and exactly what you need to get started with data science and machine learning. But that being said, if something sparks your interest, go for it.
How long should going through all of this take?
Go at your own speed. But if you added up all the recommended timelines, you'd probably end up somewhere between 12-18 months.
However, never underestimate the power of speed. The recommended timelines are for the average student. Are you average? Or are you eager to learn? If you're the latter, remember, there is no speed limit.
Do I need Coursera Plus?
No. You can pick and choose any of the courses you want individually. However, if you plan on going through all of the above, Coursera Plus offers a hefty discount.
I tried it and don’t like it... can I get a refund?
Yes. You've got 14 days after you sign up to Coursera Plus.
But here's another anecdote from my own path. I signed up for a course in the past and got scared I couldn't do it. So I emailed the support team and asked what the refund policy was. They told me two weeks.
Turns out I didn't get a refund. I went through the course, struggled, missed deadlines but then came out the other side knowing far more than when I started.
After the fundamentals
The main point of this post is the internet has made it so you can create your own learning journey. Coursera is a phenomenal resource and I highly recommend it but it is only one of many out there.
Everything we’ve talked about can be learned outside of Coursera. You could even take the Notion curriculum template and reproduce it with all free resources and track your progress.
Let's say you did, you created your own curriculum, Coursera-driven or not. What should you do next?
That question deserves its own article. But as a bare minimum: share your work.
Write about what you've learned. Create a blog under your own name. Search "how to create a blog with GitHub Pages" or start writing on Medium.
Do not worry if someone else has already written about what you want to write about. The practice of writing about what you've learned will further help your learning.
What would the you six months ago like to have known? Write that.
For more on this, I'd recommend reading "How does a beginner data scientist like me get experience?".
What about advanced skills?
This post has covered the fundamentals. If you're looking to further your knowledge, I'd recommend all of the deeplearning.ai courses and all of the fast.ai curriculum.
After that, you're done with courses. Start your own projects. Courses teach fundamentals, self-driven projects help you learn specifics (knowledge which can't be taught).
PS If you have more questions, let me know and I'll answer them/add them here for others to read.