Progress Tracker¶
Copy this file, paste it into your notes app, and check items off as you complete them. Work through the course in order — each section quietly prepares you for the next.
How to Use This¶
- Check off each item only when you can explain it out loud, not just when you've read it.
- The interview questions at the end of each section are the real test — if you can answer them fluently, you're ready to move on.
- Return to unchecked items before a study session ends, not the next day.
Week 01 — Data Science Foundations¶
Day 01 Part 1 — Python Basics¶
- [ ] Understand Python's data types (int, float, str, bool, None)
- [ ] Write and call functions with arguments and return values
- [ ] Use control flow: if/elif/else, for loops, while loops
- [ ] Build and manipulate lists, tuples, and dictionaries
- [ ] Write a list comprehension to replace a for loop
- [ ] Handle exceptions with try/except
- [ ] Use a context manager (
withstatement) - [ ] Answer the interview questions out loud
Day 01 Part 2 — Advanced Python¶
- [ ] Write a class with
__init__, instance methods, and__repr__ - [ ] Use
*argsand**kwargscorrectly - [ ] Read and write files with
open()and a context manager - [ ] Import and use a module from the standard library
- [ ] Handle a specific exception type (not just bare
except) - [ ] Write a decorator that wraps a function
- [ ] Answer the interview questions out loud
Day 02 Part 1 — NumPy Fundamentals¶
- [ ] Create arrays from lists, ranges, and random generators
- [ ] Index and slice arrays (1D and 2D)
- [ ] Understand broadcasting — explain it without looking at notes
- [ ] Replace a Python for-loop with a vectorised NumPy operation
- [ ] Use
np.where,np.clip,np.argmax,np.argsort - [ ] Compute mean, std, min, max along an axis
- [ ] Complete the NumPy exercises
Day 02 Part 2 — Pandas Basics¶
- [ ] Load a CSV into a DataFrame
- [ ] Select columns by label and rows by condition
- [ ] Handle missing values (
.isna(),.fillna(),.dropna()) - [ ] Rename and drop columns
- [ ] Compute descriptive statistics with
.describe() - [ ] Sort a DataFrame by a column
- [ ] Answer the interview questions out loud
Day 03 Part 1 — Pandas Advanced¶
- [ ] Group data with
.groupby()and apply aggregations - [ ] Merge two DataFrames on a key column (inner and left join)
- [ ] Apply a custom function to a column with
.apply() - [ ] Detect and handle duplicate rows
- [ ] Reshape data with
.pivot_table() - [ ] Complete the exercises
Day 03 Part 2 — Data Visualization¶
- [ ] Create a line chart, bar chart, and histogram with Matplotlib
- [ ] Customise labels, titles, and figure size
- [ ] Create a scatter plot and interpret correlation visually
- [ ] Create a heatmap with Seaborn
- [ ] Choose the right chart type for a given question
- [ ] Complete the mini project
Day 04 Part 1 — Statistics Basics¶
- [ ] Compute and interpret mean, median, mode — and know when each is appropriate
- [ ] Compute variance and standard deviation by hand (once)
- [ ] Explain normal, Poisson, and binomial distributions in plain English
- [ ] Understand skewness and kurtosis conceptually
- [ ] Complete the practice questions
Day 04 Part 2 — Inferential Statistics¶
- [ ] Explain a p-value correctly (what it is and what it is NOT)
- [ ] State the null and alternative hypotheses for a scenario
- [ ] Explain Type I and Type II error — and the tradeoff
- [ ] Know when to use a t-test, chi-squared test, and Mann-Whitney test
- [ ] Explain the difference between statistical and practical significance
- [ ] Answer the interview questions out loud
Day 05 Part 1 — SQL for Data Science¶
- [ ] Write SELECT queries with WHERE, ORDER BY, LIMIT
- [ ] Use GROUP BY with aggregations (COUNT, SUM, AVG, MIN, MAX)
- [ ] Understand the difference between WHERE and HAVING
- [ ] Write INNER JOIN, LEFT JOIN — know what each returns
- [ ] Write a subquery in a WHERE clause
- [ ] Write a CTE (
WITHclause) for a multi-step query - [ ] Write a window function with PARTITION BY and ORDER BY
- [ ] Complete the SQL case studies
Day 05 Part 2 — Exploratory Data Analysis¶
- [ ] Inspect a new dataset: shape, dtypes, missing values, duplicates
- [ ] Detect and investigate outliers (IQR method, z-score)
- [ ] Produce univariate summaries for numeric and categorical features
- [ ] Compute and visualise bivariate relationships (correlation, crosstab)
- [ ] Write 3 Observation/Interpretation/Action insights from an EDA
- [ ] Complete the mini case study
Week 02 — Machine Learning and Projects¶
Day 01 Part 1 — Machine Learning Basics¶
- [ ] Explain the difference between supervised and unsupervised learning
- [ ] Explain the bias-variance tradeoff without looking at notes
- [ ] Explain data leakage — give an example of each type
- [ ] Split data into train/validation/test correctly
- [ ] Fit and predict with a scikit-learn model using the standard API
- [ ] Complete the exercises
Day 01 Part 2 — Regression Algorithms¶
- [ ] Explain what linear regression minimises and how it works
- [ ] Implement linear regression and interpret the coefficients
- [ ] Explain Ridge vs Lasso — what each penalises and when to use each
- [ ] Build a decision tree regressor and control overfitting with max_depth
- [ ] Compute MAE, RMSE, and R² — interpret each
- [ ] Complete the exercises
Day 02 Part 1 — Classification Algorithms¶
- [ ] Explain logistic regression — what it outputs and why sigmoid is used
- [ ] Understand KNN — the algorithm, the distance metric, the k parameter
- [ ] Explain why Naive Bayes works well for text despite its assumptions
- [ ] Build a Random Forest and explain why it outperforms a single tree
- [ ] Explain the difference between bagging and boosting
- [ ] Compute precision, recall, F1, and AUC — interpret each
- [ ] Complete the exercises
Day 02 Part 2 — Clustering Techniques¶
- [ ] Explain K-means — the algorithm, when it fails, how to choose K
- [ ] Build and interpret a dendrogram from hierarchical clustering
- [ ] Explain how DBSCAN handles noise and arbitrary cluster shapes
- [ ] Compute and interpret silhouette score
- [ ] Know when to use each clustering algorithm
- [ ] Complete the exercises
Day 03 Part 1 — Feature Engineering¶
- [ ] Handle missing values correctly (impute vs drop — when each is right)
- [ ] Encode categorical features (one-hot, ordinal, target encoding)
- [ ] Scale numeric features — and know which models require scaling
- [ ] Create datetime features (year, month, day_of_week, lag)
- [ ] Build a sklearn Pipeline that encapsulates preprocessing
- [ ] Explain why all preprocessing must be fit on training data only
- [ ] Complete the exercises
Day 03 Part 2 — Model Evaluation¶
- [ ] Implement k-fold cross-validation and interpret the results
- [ ] Plot learning curves — diagnose bias vs variance from them
- [ ] Run a RandomizedSearchCV hyperparameter search
- [ ] Explain overfitting from a learning curve without prompting
- [ ] Choose the right evaluation metric for a given business problem
- [ ] Complete the exercises
Day 04 Part 1 — Intro to Deep Learning¶
- [ ] Explain what a neural network does (at the level of neurons, layers, activations)
- [ ] Explain backpropagation in plain English
- [ ] Know when to use ReLU vs sigmoid vs softmax
- [ ] Build a simple Keras model (Sequential API)
- [ ] Explain dropout and batch normalisation — what each does
- [ ] Identify overfitting from a training history plot
- [ ] Complete the exercises
Day 04 Part 2 — NLP Basics¶
- [ ] Describe the text preprocessing pipeline (clean → tokenise → vectorise)
- [ ] Explain TF-IDF — the formula and the intuition
- [ ] Build a TF-IDF + Logistic Regression text classifier
- [ ] Explain what word embeddings capture that TF-IDF cannot
- [ ] Explain the Transformer architecture at a high level
- [ ] Complete the exercises
Day 05 Part 1 — End-to-End Mini Project¶
- [ ] Frame a business problem as an ML task
- [ ] Complete a full EDA and document findings
- [ ] Engineer features and build a preprocessing pipeline
- [ ] Train, compare, and select a model
- [ ] Evaluate on a held-out test set and interpret results
- [ ] Write a plain-English summary of findings
- [ ] Review the submission checklist
Day 05 Part 2 — Mock Interview and Resume¶
- [ ] Write a 90-second career narrative and say it out loud
- [ ] Walk through a project using the Problem → Data → Approach → Results → Learnings structure
- [ ] Answer 5 technical interview questions without looking at notes
- [ ] Review your resume against the checklist
- [ ] Set up a GitHub portfolio with at least one project
- [ ] Complete the mock interview script
Guided Projects¶
Complete at least one end-to-end project. Start with the one closest to your target role.
- [ ] Titanic Survival Prediction — binary classification, handling missing data
- [ ] House Price Prediction — regression, geographic features, skewed targets
- [ ] Customer Churn Prediction — classification, imbalanced classes, business framing
- [ ] Sales Forecasting — time series, lag features, temporal train-test split
- [ ] Movie Recommendation System — collaborative filtering, sparse matrices
- [ ] Sentiment Analysis on Tweets — NLP, TF-IDF, multi-class classification
Interview Preparation¶
Work through these only after you've completed the corresponding course sections. Saying answers out loud is the practice — reading is not.
- [ ] Python — basics, data structures, OOP, functional
- [ ] SQL — basics, joins, window functions, CTEs, optimization
- [ ] Statistics — descriptive, probability, hypothesis testing, A/B testing
- [ ] Machine Learning — fundamentals, regression, classification, clustering, ensembles
- [ ] Deep Learning — neural networks, training, CNNs, RNNs, transformers
- [ ] NLP — preprocessing, classical NLP, embeddings, language models
- [ ] System Design — ML systems, pipelines, serving, monitoring
- [ ] Case Studies — metrics, experiments, ML framing, business cases
- [ ] Behavioral — story, projects, conflict, STAR method
The Real Completion Signal
You are done with a topic when you can teach it. Pick a concept from the section, explain it out loud to an imaginary student for 60 seconds without notes, and field one follow-up question. If you can do that, the topic is yours.