Free Programming Resources
A curated collection of 100% free resources for learning to code. Every link on this page is free to use — no paywalls, no tricks (that I am aware of).
Getting Started / Complete Beginners
Never written a line of code? These platforms will take you from zero to building real projects.
Khan Academy
Completely free interactive courses on computing, including intro to JS, HTML/CSS, and SQL. Perfect for absolute beginners with zero experience.
freeCodeCamp
Full web development curriculum covering HTML, CSS, JavaScript, and more. Thousands of hours of free content with certifications you can earn.
The Odin Project
Full-stack learning path with hands-on projects. Teaches you to build real websites using HTML, CSS, JavaScript, Ruby, or Node.js.
Codecademy (Free Tier)
Interactive coding lessons right in the browser. The free tier covers basics of Python, JavaScript, HTML/CSS, and several other languages.
CS50 by Harvard
Harvard's legendary intro to Computer Science — completely free on edX. Covers C, Python, SQL, web development, and fundamental CS concepts.
Web Development
Learn HTML, CSS, JavaScript, and everything you need to build modern websites and web applications.
MDN Web Docs
Mozilla's comprehensive reference and tutorials for HTML, CSS, JavaScript, and web APIs. The gold standard for web documentation.
W3Schools
Beginner-friendly tutorials and references for web technologies. The "Try it Yourself" editor lets you experiment with code instantly.
JavaScript.info
The Modern JavaScript Tutorial — from basics to advanced topics. Extremely thorough and well-written, with interactive examples throughout.
CSS-Tricks
Articles, guides, and an indispensable almanac for CSS. Great for learning Flexbox, Grid, animations, and modern CSS techniques.
Frontend Mentor
Real-world frontend challenges with professional designs. Build actual projects to fill your portfolio — free challenges available at every skill level.
Python
Python is one of the most beginner-friendly and versatile languages. Great for web development, data science, automation, and more.
Python.org Tutorial
The official Python tutorial from the language creators. Walks you through Python's features step by step — authoritative and always up to date.
Automate the Boring Stuff
A free online book that teaches Python through practical projects like web scraping, working with spreadsheets, and automating daily tasks.
Real Python
High-quality tutorials and articles covering everything from Python basics to advanced topics. Many tutorials are free with clear, real-world examples.
Google's Python Class
A free class for people with some programming experience who want to learn Python. Includes lecture videos, written materials, and coding exercises.
Data Science & AI
Dive into machine learning, data analysis, and artificial intelligence with these free courses and platforms.
Kaggle Learn
Free micro-courses on Python, machine learning, SQL, data visualization, and more. Hands-on lessons you can complete in a few hours each.
Fast.ai
Practical deep learning courses that teach you to build state-of-the-art models. Uses a top-down approach — you build things first, then learn the theory.
Google AI Education
Google's collection of free AI and machine learning courses. Includes beginner-friendly content and tools like TensorFlow tutorials.
MIT OpenCourseWare
MIT's full computer science curriculum available for free. Includes lecture videos, assignments, and exams from actual MIT courses.
Mobile Development
Build apps for phones and tablets. These official docs and frameworks are all free to learn and use.
React Native Docs
Official React Native documentation. Build native mobile apps using JavaScript and React. If you know React for the web, this is a natural next step.
Flutter Docs
Google's UI toolkit for building beautiful, natively compiled apps for mobile, web, and desktop from a single Dart codebase. Excellent codelabs included.
Apple Developer Tutorials
Apple's official SwiftUI tutorials. Step-by-step guides that teach you to build real iOS apps with interactive code examples.
Android Developer Tutorials
Google's official Android training. Free courses covering Kotlin, Jetpack Compose, and modern Android development practices.
DevOps & Tools
Git, Docker, Linux, and CI/CD are skills every developer needs. These resources will make you comfortable with the tools of the trade.
Git Documentation
The official Git reference, including the free Pro Git book. Learn version control from basic commits to advanced branching strategies.
Docker Documentation
Docker's official getting started guide. Learn to containerize applications — an essential skill for modern development and deployment.
Linux Journey
A free, self-paced guide to learning Linux. Covers everything from the command line basics to networking and system administration.
GitHub Skills
Interactive courses that teach GitHub features through hands-on exercises. Learn GitHub Actions, Pages, pull requests, and collaboration workflows.
Practice & Challenges
The best way to learn is by doing. These platforms give you coding problems to solve, from beginner exercises to interview prep.
LeetCode (Free Tier)
The most popular platform for coding interview preparation. Hundreds of free problems covering algorithms, data structures, and system design.
HackerRank
Coding challenges in dozens of languages across multiple domains. Great for practicing algorithms, SQL, regex, and language-specific skills.
Codewars
Train on "kata" — small coding challenges ranked by difficulty. Solve problems, then see how others solved them to learn new techniques.
Project Euler
A series of mathematical and computational problems that require creative programming to solve. Great for sharpening logic and math skills.
Exercism
Free coding exercises in 70+ languages with optional mentoring from volunteers. Practice through progressively challenging problems with real feedback.
Ready to Start?
Pick one resource and commit to it. Consistency beats perfection — 30 minutes a day is all it takes to start building real skills.
Jump to Beginner Resources