How I Learned Data Science And the 1 Course That Changed Everything
By: Oscar Kwok
Tags: Motivation, Education, Data Science, Programming, Towards Data Science

How I Learned Data Science And the 1 Course That Changed Everything

If you don’t know where to start

If you are reading this, you have probably just started on your data science journey and am wondering what course to take to catapult you to the next level.

I previously answered a question about this topic on Quora, which got a decent amount of views, so it inspired me to go more in-depth on it.

Just like you, I consider myself a beginner in data science as I still have a lot to learn, but I have taken some online courses and wanted to document my process so far including its ups & downs. I also wanted to share the course that, in my opinion, is the one every beginner data scientist should take when starting out.

Let me begin with my story.

Why I’m Learning

A few years ago when I was studying civil engineering at the University of Toronto, I had always come across articles depicting how people, just like me, was learning programming and was able to create awesome projects from scratch.

I wanted to be like that.

At that time, I already knew that engineering was not such a great fit for me as I did not do too well in my technical design courses. I wanted to learn some extra skills so that I could distinguish myself better. So I decided to give programming a try. If other people could do it, it shouldn’t be too hard right?

Starting Out In Python

I tried my hand on different programming languages such as Ruby, HTML / CSS, and Java, but finally settled on Python as it made the most sense to me.

I started learning using Codecademy’s Learn Python course as it was one of the first things that came up when you searched ‘how to learn Python’.

When I first started using it, everything was free. They’ve since added special courses which cost money but I believe they still have basic lessons which you can use to learn the basics of the language and help you build up your foundations for free.

I also came across this Learn Python — Full Course For Beginners YouTube video through freeCodeCamp that takes you through the most important concepts of Python. It is great to be used as a guide to understand Python on a basic level or as a refresher for what you have already learned. You should be able to finish it in a weekend!

Another great resource is to be active on coding challenge websites such as Code Wars where you can use your Python skills to solve coding challenges. You can choose the difficulty of the challenges and look at other people’s code and how they solved it to learn. I used to try to do one each day but had trouble being consistent and eventually stopped altogether.

Not being consistent was a big problem I faced.

Throughout those few years, I would be inspired to learn/practice, but then lose the enthusiasm and stop for a period of time only to start over again a while later.

This cycle would repeat.

The back and forth was because I doubted myself and my ability to learn programming.

I would give myself excuses like:

There are many services out there that can help you code without you needing to know it.

I was too old to learn something entirely new and should focus on what I knew.

There is so much competition.

Its too hard.

Not being consistent and doubting myself cost me a lot of time. I now realize that even a little progress is good as long as you are pushing yourself to learn something everyday.

Journey Towards Data Science

Fast forward a few years, I was working as a construction project manager but felt like something was missing. I regretted not putting more effort into my programming studies.

I was still regularly reading articles about people who self-taught themselves and thought if I didn’t try it myself, I would really regret it in the future.

Data science was a trend that I kept hearing about and when I found out that Python was the language of choice for data scientists, I felt it was a sign for me to pursue my learning in that direction.

I searched around online on how to learn data science and came across this article, The best Data Science courses on the internet, ranked by your reviews, that shows you a path of courses you can take, from no programming experience, to machine learning engineer.

As I felt that I needed to brush up on my Python basics, I started following the path by taking their recommended intro to programming course, Learn to Program: The Fundamentals (LPT1) and Crafting Quality Code (LPT2) by the University of Toronto via Coursera. The courses consist of video lectures that encourage you to follow along, as well as assignments you can work on that engage you while solidifying your skills in Python. They have a great mix of content difficulty and scope for the beginner data scientist. I found LTP1 to be a great refresher course as I had already learnt the basics of Python previously. I did learn quite a few new things that I didn’t know through taking it as well. I love that they teach you how to write code properly for great ‘readability’. LTP2 was quite a bit more difficult and I had some trouble completing the course but I also learned a lot from it.

Following the Coursera courses, I continued on the recommended path and decided to take one of the intro to data science courses. I settled on Udacity’s Intro to Data Analysis because I was attracted to their professional looking website and great layout.

I don’t know why, but I had a lot of difficulty starting up the course. In the beginning, it introduced me to Anaconda & Jupyter Notebooks and I actually spent a great deal of time trying to understand what it was and how to work it. I didn’t find the explanations on the course very helpful, so I had much difficulty moving forward in it. I find that Udacity’s courses sometimes do not provide enough guidance during exercises/quizzes and can assume you already have prior knowledge of concepts. Because of that I stopped working on the course.

So I started to have doubts again.

I thought if I couldn’t even get through that intro to data science course, how could I learn data science! That made me feel really down and not know what to do next.

The Course That Changed Everything

I came across this course while I was checking out other data scientist’s Instagram pages. I was scrolling around and found mention of Jose Portilla’s Python for Data Science and Machine Learning Bootcamp on Udemy. It seemed to be a popular course and people were saying good things about it in comments, so I decided to look further into it.

I was skeptical at first, thinking that I’d fall into the trap of a fancy and catchy title. So I did a lot of research by checking its reviews and comparing them with other online learning platforms. It seemed to be worth the money.

I decided to take the plunge and dive head first into the course.

This is a paid course but you can always find discounts on Udemy so the price can probably come out to around $15. It is well worth it though as it organizes all the main aspects of data science in one package that is easy to follow along.

This course improved my understanding, skills and confidence in data science tremendously.

It thoroughly goes over all the main concepts of numpy, pandas, matplotlib, seaborn, and many others through lectures you can follow along in Jupyter Notebooks and then gets you to do a project on your own based on the lecture. You can even re-purpose those projects for your portfolio! Check out my Github that includes projects from the course.

A big chunk of the course is dedicated to introducing you to machine learning as well and how you can get started in it.

I like how the course focuses on implementation and not theory as that is how I learn best, by doing. It does go over theory, but more brief so you can get enough understanding to apply it to projects.

I am still working on the course and hope to use the knowledge I’ve gained to work on my own projects!