Menu
CoddyTech
Learning path

Data Science Roadmap for Beginners

From your first line of Python to models you can trust: SQL, charts, statistics, then machine learning with scikit-learn. Real code in your browser, a chart in every ML lesson.

2,421,911+ codders enrolled across these courses

487 lessons539 challenges2,161 quiz questions

Train a model in your browser

Real scikit-learn code with its real output. Drag the slider to change one line and see what the model learns.

Small k memorizes every training point and draws a jagged border. Larger k smooths it out.

k =5
main.py
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_moons
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier


X, y = make_moons(n_samples=200, noise=0.3, random_state=0)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)


k = 5
model = KNeighborsClassifier(n_neighbors=k)
model.fit(X_train, y_train)
print(f"train accuracy: {model.score(X_train, y_train):.2f}")
print(f"test accuracy:  {model.score(X_test, y_test):.2f}")


xx, yy = np.meshgrid(np.linspace(-2, 3, 56), np.linspace(-1.5, 2, 40))
proba = model.predict_proba(np.c_[xx.ravel(), yy.ravel()])[:, 1]
proba = proba.reshape(xx.shape)


plt.figure(figsize=(5, 4))
plt.pcolormesh(xx, yy, proba, cmap="coolwarm", alpha=0.35)
plt.scatter(X_train[:, 0], X_train[:, 1], c=y_train,
            cmap="coolwarm", edgecolors="k")
plt.title(f"k-nearest neighbors, k = {k}")
plt.show()
Loading the charts
Output
 

The data science roadmap, step by step

6 courses8 sections487 lessons539 challenges2,161 quiz questions

Each step is an existing Coddy course. Take them in order, or jump into the one you are missing: your progress is saved per course either way.

  1. 1
  2. 2
  3. 3
    Start this stepStartNumPy arrays, pandas tables and matplotlib charts, then the built-in iris, wine and digits datasets. The toolkit every machine learning project starts with, with a chart in every lesson.StartDedicated page
  4. 4
    Start this stepStartCenter and spread, distributions, probability by simulation, outliers, correlation, trend lines, p-values, scaling and encoding. Learned by simulating and plotting, not by memorizing formulas.StartDedicated page
  5. 5
    Start this stepStartSplit, fit, predict and score with scikit-learn: k-NN, linear and logistic regression, trees, forests, boosting, cross-validation and pipelines, ending with a penguin species classifier.StartDedicated page
  6. 6
    Start this stepStartFind structure without labels: k-means, hierarchical clustering, DBSCAN, PCA and anomaly detection, ending with a project that maps and groups handwritten digits.StartDedicated page
What you get
Everything you'll use to learn to code

Learn by Doing

Write real code, query databases, build websites, and master AI prompts. Our interactive lessons cover every skill modern developers need.

playground.js
Code Editor
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
Test #1test Case Success icon
Test #2test Case Success icon
Test #3test Case Failure icon
Input
"Alex"
Output
"Hello, Coddy! Alex"

Build Your Streak

Stay consistent and watch your progress grow! Track your daily coding habit, protect your streak with freeze days, and earn rewards for showing up every day.

12 days streak

Return tomorrow to keep your streak!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

Double or Nothing

Day 5 of 7

fire Freeze icon

Streak Freeze

2 left

You're Not Alone

Compete on global leaderboards, invite friends to earn rewards, and celebrate each other's wins. Coding is better with friends!

Challenger League
Challenger LeagueTop 7 advance
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up iconPromotion zoneleaderboard Arrow Up icon

Every way to learn

Read, listen, test yourself, ask the AI, or look up anything you've already covered. Every lesson meets you where you are.

Intro to Variables
Audio

A variable is a named container that stores a value you can reference later in your program.

In Python, you create one by writing the name, an equals sign, then the value you want to store.

The value can change over time - reassigning the name simply points it to a new value.

1xSarah

Earn a Certificate

Earn certificates for every course you complete. Add them to your LinkedIn profile and resume to showcase your coding expertise to employers.

CoddyCertificate of Completion
This certifies thatJohn Doehas successfully completed
python iconPython Fundamentals
Verified
DateJan 2026
LinkedInAdd to LinkedIn

Why follow this data science roadmap on Coddy

  • One order, no guessing. Python first, then SQL to get the data, then charts and statistics to understand it, then models to predict from it. Each step uses what the step before taught.
  • You see the data. Every machine learning lesson has a chart or a diagram, and the charts your code draws appear in the Plots tab beside it, so a distribution, a correlation or a decision boundary is something you have looked at, not only read about.
  • Real tools, nothing to install: Python, SQL, NumPy, pandas, matplotlib, SciPy and scikit-learn, all running in your browser at the versions data scientists use.
  • Two finished projects, a penguin species classifier and a handwritten digit explorer, plus final challenges on churn, fraud and A/B tests. Each course ends with a free certificate.

Frequently asked questions about becoming a data scientist

How do I become a data scientist from scratch?

Learn Python, then SQL, then how to explore and chart data with pandas and matplotlib, then enough statistics to tell a pattern from noise, then machine learning with scikit-learn. That is this roadmap, in that order. Then build two or three projects on public datasets that answer a question someone would care about, and write up what you found.

What is the difference between a data analyst and a data scientist?

An analyst explains what happened: queries, spreadsheets, charts and reports. A data scientist also predicts what will happen and tests whether an effect is real: statistics, machine learning and experiments. The two share SQL, Python and pandas. If dashboards and reporting are your goal, the Data Analyst path is the closer fit.

What should I learn first for data science?

Python. It is the language of almost every data science job posting, and the libraries the rest of the path uses (pandas, matplotlib, scikit-learn) are Python libraries. The first step covers only the parts of Python the later steps need: variables, conditions, loops, functions and lists.

Do I need a degree or advanced math for data science?

Not to start, and not for many jobs. Employers look for people who can get data with SQL, clean and chart it with pandas, reason about it with statistics and build a model they can defend. This path teaches the statistics with simulations and charts, with no calculus. A degree helps for research roles; a portfolio of honest projects helps everywhere.

How long does it take to follow this roadmap?

About five to seven months at an hour a day. Python basics take around six weeks, SQL three to four, and the four machine learning sections about 40 hours together. The time after that, spent on your own projects, is what turns the skills into a portfolio.

Does this data science path cover deep learning?

No, and the page says so below. It covers classic machine learning, the models most business problems are solved with: regression, trees, forests, boosting, clustering and PCA. Neural networks, deep learning frameworks and large language models come after these, and they are easier to learn once you can split, train and evaluate a model properly.

Other learning paths

The same courses, arranged for a different role. Progress carries over: a course finished on one path counts on every path that includes it.

All learning paths
Coddy programming languages illustration

Start the Data Scientist path for free

Start learning