18 Most Recommended Data Science Platforms To Learn Python and SQL
A comprehensive guide to the most popular data science platforms by the community
Learn Python and SQL online in 2020 on one of these most popular data science platforms
Data science is one of the hottest careers in today’s market. Companies are always hiring data scientists and there’s always a large number of people trying to become one. But data science hasn’t been around for as long as other technical disciplines, so unlike software development which has, there aren’t as many data science-specific learning platforms to help prepare aspiring and experienced scientists. There’s, of course, Coursera and Udemy, then a few big brand name platforms like DataCamp. Then there are a dozen or more smaller niche data science platforms aimed at training data scientists their way.
I’ve evaluated 18 data science platforms recommended by people in the data science communities. Depending on your learning style and need, there’s a platform for you. The first half of the article is my final assessment of the platforms, ending with a complete list of platforms with all the details that helped me evaluate them. The second half of the article details my approach in evaluating the platforms — understanding the different user types, sourcing platforms, and variables to evaluate. So, if you have the time, skip to the end first to understand my evaluation criteria and then read the results. If you’re pressed for time, just go to the next section.
TL;DR: My Assessment of Data Science Platforms
I created 2 graphs to map my variables. They’re those graphs with the quadrants you see in all the whitepapers. Honestly, I’m a bit ashamed that I chose this visualization (it feels like making 3D pie charts in Excel) but I think it will allow you to quickly figure out which platform fits you best.
Graph 1: Learning style and experience
Ask yourself: What is my learning style? Do I like to dive right in and start coding or do I like to watch videos first? Am I totally new at this and need more hand-holding? Or can I jump right in?
At the extreme end of lecture-based platforms are pure passive lectures like text on webpages or people talking on videos. Oftentimes these platforms ask you to install the software yourself, which I think is lazy since it’s so easy to spin up a server with all the software to offer the full out-of-the-box experience. Users aren’t always advanced — that’s why they’re learning — so offering them an experience where they can access the software, libraries, and datasets easily accessible via browser is now a must-have — at least to me.
Interactive, self-guided learning allows you to work at your own pace and select whatever topic you want to learn or practice. At the extreme end, there’s a fully functional IDE that allows you to explore, interact, and manipulate data like you would in a real professional setting. But it’s not just completely self-guided as there are solutions to help you solve questions and understand concepts. The approach here is to start coding immediately and learn the solution if you are stuck. These platforms are perfect for the experienced user, even if you’re just moderately experienced.
The middle ground is a blend of lecture and interactive self-guided learning. With these platforms, you’re on a “course” and “path” to learn a set of concepts from start to finish. You’re presented with text and/or video and then asked to apply what you learned in an interactive-but-limited IDE where you’re asked questions that build up in complexity. Interactive-but-limited IDE means that the IDE only accepts inputs that answer the question prompted so you can’t go off the path and explore the data or try out different functions and techniques — you know, things a good data scientist would do. This is perfect for someone learning from scratch and is trying to learn something new from the ground up.
Graph 2: Content Focus
Ask yourself: Am I trying to learn python? Or am I trying to learn python to be a data scientist? Am I trying to prepare for an interview? Or am I trying to build my first machine learning model? Or just trying to learn the basics?
Specialty topics are educational content meant for a specific purpose. For example, it’s preparation for a technical interview — either data science or software development. It’s to learn financial modeling with python or to build a gradient boosted decision tree. These platforms serve a niche population but they do it extremely well to the satisfaction of their user base.
General education is merely an introduction to basic concepts that are building blocks to becoming proficient in navigating the language, like how to create pandas dataframes to manipulate data. Once you’ve mastered these concepts, the next phase would be to dive into specific topics that serve your needs.
Platforms are designed with a user in mind. In this case, are you a data scientist or software developer? If you’re reading this, you’re probably a data scientist, but as I’ve mentioned before there are many more educational platforms created for teaching software development. Sometimes these platforms offer education in python but their content and examples aren’t always meant for data scientists. It’s sort of like adding a plug-in to a piece of software (it’s not native and sometimes feels a bit hacky).
A detailed evaluation of each data science platform
In case the graphs aren’t enough for you.
What each platform is known for and how they’re unique
What type of user would benefit most from each platform
Teaching style and features by user experience level
Educational topics by technical focus (Data Science and Software Development)
So depending on your career goals and how you like to learn, there’s a platform for everyone. In your journey, you might end up using a few of these best data science platforms since each platform focuses on a specific strength. Pick the data science platform that allows you to learn what you need to learn for the stage you’re at. I hope this list has been helpful.
See below for my approach to evaluating the platforms…
Appendix: My approach to evaluating the 18 data science platforms
1. User Personas
I started with an understanding of the user — you. When thinking about what type of people would be interested in learning data science, I came up with 3 different user personas:
- Experienced data scientists: These are current data scientists. They’re either seasoned with several years of experience and companies served or they’re working as a data scientist at their first job. Either way, these guys are either searching for a new job and in need to prepare/freshen up their interview skills or want to learn other data science skills to go into another discipline of data science.
- Technical, inexperienced/aspiring data scientists: These people might be CS students or current business analysts. They write code and don’t need too much hand-holding as they start upskilling in data science. They’re probably interested in a career change to data science.
- Non-technical, inexperienced/aspiring data scientists: These people might be students or someone in a non-technical role at a company. They don’t write code and don’t know where to start but they are interested in a career in data science or dipping their toes into the technical world.
2. Sourcing Companies (which to include and exclude)
I asked myself how someone would find out about data science platforms. Other than a simple Google search, most people would either go for a brand they recognized or choose a platform based on a recommendation.
I chose to find the platforms from recommendations on popular subreddits like:
Reddit has an active data science community so it was a good place to start. I supplemented with Quora, Google, and Youtube.
I consciously chose to exclude (MOOCs) massive open online courses (like Udemy, EdX, and Coursera), bootcamps, and university programs because the quality depends on the instructor and course, so it would be difficult for me to evaluate apples-to-apples. Also, I didn’t think experienced data scientists would actually take an Udemy course on how to be a data scientist — but I could be wrong.
For each platform, I signed up and used it for a bit. I didn’t sign up for the premium version unless I couldn’t properly evaluate the platform based on my criteria.
3. Variables used in my evaluation
I evaluated each platform based on 4 main variables I thought were important for each of the user personas above.
Go back up to my assessment section to read the results!