Engineering Leader Guide· a Bicycle Guide

Coming soon · Book Profile

Data Science from Scratch: First Principles with Python

A hands-on introduction to data science that teaches the core concepts, algorithms, and mathematics by implementing everything from scratch in Python rather than relying on existing libraries.

A profile of this book is on the way.

Get the book →

What it’s about

Data Science from Scratch teaches you data science by having you build the tools and algorithms yourself, from the ground up, in clear and readable Python. Rather than treating libraries like NumPy, scikit-learn, and pandas as magic black boxes, Joel Grus walks you through implementing linear algebra, statistics, probability, gradient descent, machine learning models, neural networks, deep learning, clustering, NLP, network analysis, and recommender systems by hand. Framed around the fictional 'DataSciencester' social network, the book grounds abstract concepts in concrete problems while developing the hacking skills and mathematical intuition that are at the core of doing real data science. By the end you understand not just how to use data science tools, but how and why they work.

The through-line

Who it’s for
An aspiring data scientist with some mathematical aptitude and programming skill who wants to genuinely understand how data science works, not just call library functions.
The problem
They need to learn the core algorithms, mathematics, and tools of data science well enough to actually do the work. They feel like an underachiever or impostor who can use libraries but doesn't truly understand what's happening under the hood.
The plan
  1. Get comfortable with Python and the language features that matter for data science.
  2. Build a foundation in linear algebra, statistics, and probability.
  3. Learn to get, clean, explore, and manipulate real data.
  4. Implement core machine learning models and evaluation techniques from scratch.
  5. Advance to neural networks, deep learning, clustering, NLP, and recommender systems.
The payoff
You possess a solid understanding of the fundamentals of data science. · You can build, train, and evaluate models while understanding how they work. · You can confidently use production libraries because you know what they do under the hood.

See our guide

Related profiles we’ve built

Additional reading