Skip to content

4. Free courses, videos and practice

Courses (free to learn; certificates sometimes paid)

Course Provider Good for
CS50x — Introduction to Computer Science Harvard (edX / cs50.harvard.edu) strong programming foundations
CS50P — Introduction to Programming with Python Harvard Python properly
CS50 SQL and CS50 AI Harvard databases; AI concepts with Python
Kaggle Learn (Python, Pandas, Intro/Advanced SQL, Data Visualization, Intro/Intermediate ML, Feature Engineering) Kaggle short, hands-on, in the browser
Khan Academy — Statistics and Probability; Algebra, Precalculus, Calculus Khan Academy maths and statistics fundamentals; videos available in several languages
MIT OpenCourseWare — 18.06 Linear Algebra (Gilbert Strang); 18.05 Introduction to Probability and Statistics; 6.0001 Introduction to Computer Science and Programming in Python MIT university-level courses with videos and problem sets
Machine Learning Specialization Andrew Ng, DeepLearning.AI / Stanford (Coursera) ML fundamentals; financial aid available on Coursera
Practical Deep Learning for Coders fast.ai deep learning, top-down and practical
Elements of AI University of Helsinki / MinnaLearn AI concepts for everyone, no maths needed
Google Machine Learning Crash Course Google ML concepts with exercises
freeCodeCamp — Data Analysis with Python; Relational Databases freeCodeCamp project-based certificates
Software Carpentry / Data Carpentry The Carpentries Git, shell, Python, data organisation

Video channels

Channel For
3Blue1Brown Essence of Linear Algebra, Essence of Calculus, neural networks — beautiful visual intuition
StatQuest with Josh Starmer statistics and ML methods explained clearly, one idea per video
Khan Academy step-by-step maths and statistics
CS50 lectures and short videos
freeCodeCamp long tutorials on Python, SQL, pandas

Practice platforms

Platform Practise
Kaggle datasets, notebooks, beginner competitions ("Titanic", "House Prices"), discussion
SQLBolt, SQLZoo, LeetCode (database problems), HackerRank SQL and Python exercises with instant feedback
Project Euler maths + programming puzzles
DrivenData, Zindi data-for-social-good competitions (read the data rules for each)
Exercism programming exercises with mentoring
OpenStreetMap / HOT Tasking Manager real mapping contributions in Nepal

Competitions: how to use them well

Competitions teach a lot — evaluation, validation, feature engineering — but leaderboards reward tiny gains that rarely matter in practice. Use them to learn: read top solutions after the competition, write up what you learned, and remember that real projects start with a question and a client, not a fixed dataset and a metric.

Learning on a slow or expensive connection

  • Download videos and lecture notes when you have good internet (many courses allow this); read PDFs offline.
  • Kaggle notebooks and Colab run in the cloud — your computer can be old.
  • JupyterLite and local Python run offline once installed.
  • Prefer text tutorials and books to videos when data is costly.
  • Study groups can share downloads (respecting licences).