35+ Courses You Can Learn How to Code (for Free)

One of the Most Wonderful Things about the Internet Is the Ability It Gives Us to Access Information. This Superpower Left of Us Use for Something Productive. Living in Today’s World Begins to Be Indispensable to Learn the Languages Spoken by the Machines. We Have at Our Disposal an Enormous Amount of Technological Wonders That Make Our Life Easier, and We Know How They Work.
Programming is the Future of Education and Should Be Taught since We Were Children .
Note: Don’t forget to Bookmark this page!
Algorithms & Data Structures
- Berkeley University CS 61B: Data Structures
- Stanford University Algorithms: Design and Analysis, Part 1
- Stanford University Algorithms:Algorithms: Design and Analysis, Part 2
Assembly
- Introduction To Reverse Engineering Software
- Introductory Intel x86: Architecture, Assembly, Applications, & Alliteration
Android
- Creative, Serious and Playful Science of Android Apps
- Programming Cloud Services for Android Handheld Systems
- Programming Mobile Applications for Android Handheld Systems pt. 1
- Programming Mobile Applications for Android Handheld Systems pt. 2
- Programming Mobile Services for Android Handheld Systems: Communication
- Programming Mobile Services for Android Handheld Systems: Concurrency
- Udacity Android Course Catalog
AngularJS
Bash
- Bash tutorial (PDF)
C
C Sharp
C++
- Google’s C++ Course
- Introduction to C++ (MIT’s opencourseware)
- LearnCpp.com C++ Tutorial
Clojure
Compilers
Cuda
Databases
- Database Systems (MIT’s opencourseware)
- Introduction to Databases (Stanford University)
Deep Learning
- Convolutional Neural Networks for Visual Recognition
- Deep Learning for Natural Language Processing
- Self-Paced Courses for Deep Learning
- Unsupervised Feature Learning and Deep Learning
- What is Deep Learning
Git
Go
Haskell
- C9 : Functional Programming Fundamentals – Erik Meijer
- CIS 194: Introduction to Haskell – Brent Yorgey
- CS240h: Functional Systems in Haskell – Bryan O’Sullivan
- edX: Introduction to Functional Programming – Erik Meijer
- RWTH Aachen University: Functional Programming – Jürgen Giesl
HTML / CSS
- Build a Personal Website with Dash
- Build a responsive website with Webflow
- Build a SaaS landing page using Skeleton
- Build Dynamic Websites
- Code a personal splash page in 1 hour: A Hands-on Intro to HTML & CSS
- Learn HTML5 Programming From Scratch
iOS
Java
- Central Connecticut State University, Introduction to CS Using Java
- Introduction to Java
- Java for Complete Beginners
- Princeton Algorithms, Part 1
- Princeton Algorithms, Part 2
- Problem Solving With Java
JS
Lua
Machine Learning
MATLAB
Misc
- Advanced Data Structures
- Algorithm Design and Implementation
- Berkeley’s CS 61B: Data Structures
- Berkeley’s CS 70: Discrete Mathematics and Probability Theory
- Berkeley’s CS 162: Operating Systems and Systems Programming
- Berkeley’s CS 164: Programming Languages and Compilers
- Berkeley’s CS 169: Software Engineering
- Berkeley’s CS 194: What is an Operating System?
- Berkeley’s Math 10B: Methods of Mathematics: Calculus, Statistics, and Combinatorics
- Bits: The Computer Science of Digital Information
- Computer Graphics
- LouvainX Paradigms of Computer Programming – Abstraction and Concurrency
- LouvainX Paradigms of Computer Programming – Fundamentals
- MIT Numerical Methods (2014)
- MIT’s Artificial Intelligence
- MIT’s Computer Language Engineering
- MIT’s Introduction to Algorithms
- MIT’s Mathematics for Computer Science
- Principles of Reactive Programming
- Stanford Cryptography I
- Stanford Cryptography II
- Stanford SEE 229 – Machine Learning
OCaml
- Cornell’s Data Structures and Functional Programming
- Introduction to Functional Programming in OCaml
Oracle PL/SQL
Python
- Berkeley’s Structure and Interpretation of Computer Programs
- Google’s Python Course
- Introduction to Computer Science and Programming (MIT’s opencourseware)
- Learn Python
- Learn to program in Python
- Programming for Everybody
- Programming Foundations with Python (Udacity)
R
RethinkDB
Ruby
Sails.Js
Scala
Software Engineering
- Advanced Software Construction in Java
- Agile Development Using Ruby on Rails – Advanced
- Agile Development Using Ruby on Rails – Basics
- Software Construction in Java
Swift
Theory
Web Development
- Discover Flask – Full Stack Web Development with Flask
- Flask(A Python Microframework) Tutorial
- The Odin Project – Learn Web Development for Free
- Udacity Web Development Course Catalog