31 Free Courses To Learn To Program From Scratch

31 free courses to learn to program from scratch

The world needs programmers; it is something that has been known for a long time. And not only that, but companies will require programmers who constantly recycle and renew their knowledge to adapt to changes. For this reason, we are going to show you a series of free online courses to be able to learn programming even without having experience in it.

Free online courses to learn to program in Spanish


  • Programming for everyone: starting with Python: The University of Michigan offers you this course with which you can start writing code using one of the most demanded languages ​​today. You have it on edX.
  • Python: learn to program: Another free course to take the first steps in Python, this time from the Polytechnic University of Valencia. Available on edX.
  • Python Basics for Data Science! : Another Python course, but this time specialized for those who want to be data analysts. IBM has this course available on edX.
  • Machine Learning (machine learning) with Python: a practical introduction – we do not stop with the specializations of Python for those who want to start with a clear objective, and once again, IBM knows that machine learning is one of the most sought-after components by companies now same. The course has open enrollment on edX.
  • Internet of Things: Python Fundamentals – Introductory Python course specializing in the Internet of Things, useful for the coming life where everything will be connected. Galileo University has this course available on edX.
  • Introduction to programming in Python I: Learning to program with Python: the Catholic University of Chile provides us with its introductory course to learn Python. You can enroll on Coursera.
  • Introduction to Data Science with Python: The Anahuac network of universities also has an introductory course in Python for the science and processing of large amounts of data. Freely available on edX.
  • Program with Python: Javeriana University also has its course to learn the basics of Python. Available on edX.


  • Introduction to programming in C: Functions and Pointers: a course at the Autonomous University of Madrid to learn the C language by creating functions and studying pointers. Available on edX.
  • Introduction to C programming: Control instructions and text files: Another unit from the previous course at the Autonomous University of Madrid focused on control instructions and simple text manipulation in files. Available on edX.


  • Android: Introduction to Programming: Do you want to have your own Android application? The Polytechnic University of Valencia has this course for you to start taking your first steps. You have it on edX.
  • Playing with Android: learn to program your first app: Another course to start programming Android applications, this time from the Autonomous University of Madrid. Available on edX.


  • Introduction to Java Programming: Getting Started with Programming Java also has introductory courses for all those interested in object-based programming. This is from Universidad Carlos III and is available for free on edX.
  • Introduction to Java Programming: Data Structures and Algorithms – Another part of the previous course that focuses on data structures and simple algorithms. Ready for you to sign up for edX.
  • Introduction to Java Programming: Writing Good Code – Not only do you have to learn to program, but you also have to make your code elegant and understandable to any other developer. This part of the Java course helps you with that. Available on edX.
  • Introduction to Java: the National Autonomous University of Mexico gives us its course to start writing our code in Java. Available on Coursera.

Other languages

  • Introduction to web application development: we move to the Autonomous University of Madrid to start studying HTML, CSS, JavaScript, and other languages ​​necessary to create a website from scratch. Available free on edX.
  • To Program! An introduction to programming: a simple course from the ORT University of Uruguay and the University of Edinburgh to take your first steps in programming using Scratch. Available on Coursera.
  • Artificial Intelligence for Everyone: Master the Fundamentals – AI is one of the most promising fields, so it’s not a bad idea to learn its fundamentals. This course from IBM can be started at any time on edX.
  • Introduction to video game development with Unity: if what you are interested in is starting to study to create your video games, you have this course from the Universitat Politècnica de València with the basic concepts you need to be able to learn Unity. Available on edX.
  • Introduction to R. It’s not a letter; it’s an entire programming language. It is used for the analysis of data packets, and the network of Anahuac universities makes this course available to you so that you can learn how to use it. You can sign up for edX.

Free online courses to learn to program in English

Free online courses to learn to program in English

    • Introduction to Programming and Computer Science: This two-hour video course recommended to us by Genbeta helps us understand the basics of programming and helps us write our first few lines.
    • Introduction to Web Development: course with the collaboration of Google so that you learn the basic concepts of HTML, CSS, and JavaScript to learn how to create your first web pages. Available at FutureLearn.
    • Introduction to Cloud Development with HTML5, CSS3, and JavaScript: Another course to master the basic concepts and languages ​​to be able to create web pages from scratch. Available on edX.
    • HTML5 and CSS Fundamentals: The W3C consortium has this course to learn how to create web pages focusing on HTML5. You can do it for free on edX.
    • Object-oriented Programming in Python: Create Your Own Adventure Game: Google is also a partner with this online course, where you learn to program with objects and create a text-based adventure game. Available at FutureLearn.
    • Video Game Design and Development: Introduction to Game Programming: A course from the University of Alberta with which you can take the first steps to create your video games. Available at FutureLearn.
    • Computer Programming for Everyone – This course from the University of Leeds helps you understand how anyone can get into programming. You have it at FutureLearn.
    • Introduction to Programming in C++: Get started in C++ with this course from New York University. Available on edX.
    • C Programming: Getting Started: Dartmouth Institute course with which you can learn the basics of the C language, one of the oldest. Registrations open on edX.
    • CS50’s Introduction to Programming with Scratch: Scratch is one of the best programming languages ​​for anyone with no experience, as it makes it very easy to learn the routines and behavior of the code. You can do this course on edX.