students often email me asking how to get into ai. i usually tell them to learn data structures and python first. this post is for when you've done that.
ai changes fast. new models come out every few months. but the basics you need to understand them stay the same, so this plan starts with the basics and leaves the newest stuff for the end.
every stage has a rough time, a few free courses, and a small project. you don't need to do every course. pick one and finish it.
how long it takes
i'm assuming about 10 hours a week, next to college. if you can do 20, it goes about twice as fast.
| stage | what you learn | time |
|---|---|---|
| 0 | python, data structures, and an x account | before you start |
| 1 | numpy, pandas, matplotlib | 4 weeks |
| 2 | math for machine learning | 6 weeks, alongside 1 and 3 |
| 3 | machine learning basics | 8 weeks |
| 4 | deep learning | 8 weeks |
| 5 | how llms work | 8 weeks |
| 6 | building with llms | 6 weeks |
| 7 | agents | 6 weeks |
| 8 | go deeper | ongoing |
so roughly: 3 months for the basics, about 8 to 10 months until you can build real ai apps, and a couple of years of building before you're really good at it.
0. before you start
you should be okay with python, basic data structures, and git. if your python feels rusty, ai python for beginners (opens in a new tab) is a quick refresher.
make an x (twitter) account. most people building ai share their work there first. follow a few of them and read what they post. start with these:
- andrej karpathy (opens in a new tab)
- jeremy howard (opens in a new tab)
- andrew ng (opens in a new tab)
- simon willison (opens in a new tab)
- sebastian raschka (opens in a new tab)
- chip huyen (opens in a new tab)
- hamel husain (opens in a new tab)
- hugging face (opens in a new tab)
you don't have to post yet. just read, and look up the topics you don't know.
1. data tools
4 weeks. learn numpy, pandas, and matplotlib. most ml work is cleaning data and looking at it, so don't skip this.
- kaggle: pandas (opens in a new tab) and kaggle: data visualization (opens in a new tab)
- corey schafer's pandas videos (opens in a new tab) on youtube
- python for data analysis (opens in a new tab), free online, to look things up
project: pick a dataset you care about, like cricket scores or your city's weather. clean it, ask three questions, and answer them with plots.
2. math
6 weeks, alongside stages 1 and 3. you need some linear algebra (vectors and matrices), some calculus (derivatives and gradients), and basic probability. it's less than you think. an hour or two a week next to the coding is enough.
- 3blue1brown's linear algebra (opens in a new tab) and calculus (opens in a new tab) videos
- math for machine learning (opens in a new tab) on coursera, free to audit
- statquest (opens in a new tab) on youtube when a stats idea doesn't click
project: write gradient descent in numpy to fit a line through some points, and plot the loss going down.
3. machine learning basics
8 weeks. learn how models learn from data, how to test them on data they haven't seen, and why a high score can still mean nothing. then try a few models: linear and logistic regression, decision trees, and random forests.
- andrew ng's machine learning course (opens in a new tab) on coursera, free to audit
- google's machine learning crash course (opens in a new tab)
- kaggle's intro (opens in a new tab) and intermediate (opens in a new tab) machine learning
- udacity's free intro to machine learning (opens in a new tab)
project: enter a beginner kaggle competition (opens in a new tab) like titanic. start simple, improve it, and write down what helped.
start posting. share your kaggle notebook on x with a few lines on what you learned. it's fine if it feels basic. someone a few weeks behind you will find it useful, and explaining it helps you remember it.
4. deep learning
8 weeks. learn how neural networks work and how to train them with pytorch.
- 3blue1brown's neural networks (opens in a new tab) videos, for the idea
- karpathy's zero to hero (opens in a new tab), starting with micrograd (opens in a new tab)
- fast.ai (opens in a new tab), if you like learning by doing first
- mit 6.s191 (opens in a new tab), lectures and labs
project: write your own pytorch training loop for a small image classifier. plot the loss, spot when it starts overfitting, and fix it.
find your people. look for a local ai meetup, a google developer group, or an ai club at your college. if there isn't one, start one with two friends. try a hackathon too. you build something in a weekend and meet people who like the same things.
5. how llms work
8 weeks. learn tokens, embeddings, attention, and transformers. then learn how models like chatgpt and claude are trained.
- 3blue1brown's transformers video (opens in a new tab)
- karpathy's let's build gpt (opens in a new tab) and let's build the gpt tokenizer (opens in a new tab). type the code along with him.
- karpathy's deep dive into llms (opens in a new tab), for the big picture
- the hugging face llm course (opens in a new tab)
project: build a small gpt with karpathy's video and train it on some text. change one thing, like the model size, and see what happens.
6. building with llms
6 weeks. most ai work today is building apps on top of models through an api. learn to write good prompts, get structured answers back, and use rag, which means giving the model your own documents to answer from. also learn to test your app properly, because a confident answer can still be wrong.
- anthropic academy (opens in a new tab), free courses on building with claude
- deeplearning.ai short courses (opens in a new tab), one or two hours each
- building and evaluating rag apps (opens in a new tab)
- hamel husain's post your ai product needs evals (opens in a new tab)
project: build a tool that answers questions from your class notes and shows where each answer came from. write 30 test questions and count how many it gets right.
talk to people. by now you have work to show. reply to the people you follow with real questions, or with what you tried after reading their post. share your projects and tag the course or tool you used. people are usually happy to reply to someone who's clearly building things.
7. agents
6 weeks. an agent is a model that can use tools, like search or a calculator, and take a few steps to finish a task. learn tool calling and mcp, the common way to plug tools into a model.
- anthropic's building effective agents (opens in a new tab)
- hugging face's agents course (opens in a new tab) and mcp course (opens in a new tab)
- the mcp docs (opens in a new tab)
project: give your notes tool two or three tools. limit how many steps it can take and log every tool call. then check whether it actually does better than the simple version.
8. go deeper
ongoing. by now you'll know what you enjoy. pick one direction:
- building ai products: made with ml (opens in a new tab)
- training models: fine-tune a small open model with unsloth (opens in a new tab), then watch karpathy reproduce gpt-2 (opens in a new tab)
- research: stanford cs336 (opens in a new tab), read papers, and try to reproduce one
- ai in a field you know: health, education, finance, whatever you already understand
give back. help out at meetups, give a short talk, answer beginner questions, or contribute to an open source project you use. teaching shows you what you still don't know.
using ai while learning ai
ai tools can write most of this code for you. use them to explain errors and review your work, but write the main projects yourself, especially micrograd, your first training loop, and your first gpt. you're doing those to understand how things work, so let the tools help after that.
a few last things
- ten hours every week beats one crazy month and then quitting.
- you'll feel lost a lot. go back a step, build something small, and try again.
- free colab and kaggle notebooks are enough for almost everything here.
- put every project on github with a short readme. that's your portfolio.
if you're starting today, do stage 1 this month, start the 3blue1brown videos, and email me your first notebook when it's done.