When you buy through our links, we may earn money from our affiliate partners. Learn more.
- edX is a non-profit online education platform founded by MIT and Harvard that offers free and affordable classes.
- The site features 210 MIT courses, including 17 computer science classes you can enroll in completely free. You can also pay a small fee and receive a certificate at the end of a course.
- Read more: 10 affordable data science courses and programs you can take online — offered by Harvard, MIT, and companies like IBM, Google, and Amazon
edX, a learning non-profit founded by MIT and Harvard, offers free and affordable online classes to improve education accessibility to 25 million students.
The site has partnered with more than 90 of the world’s leading universities, non-profits, and NGOs to offer courses from programming in java to the science of happiness for free. Students also have the option of paying for a certificate of completion ($40-$300) that they can add to their CV, resume, and LinkedIn page. The site also has affordable options for Professional Certificates, MicroBachelors, MicroMasters, and Master’s programs.
As one of its founding universities, MIT has 210 classes available on edX, including 17 computer science courses. Below, you can browse free courses on everything from an introduction to computer science to quantum information science to the intersection of philosophy and mathematics. You can also take advantage of MIT’s OpenCourseWare, where they publish virtually all MIT course content for the public.
17 MIT online computer science courses you can enroll in for free:
1. Introduction to Computer Science and Programming Using Python
This course is part one of an introduction to computational thinking, programming, and computer and data science. Without any prior experience in computer science or programming, you should be able to exit both with an understanding of how to think computationally and write programs to tackle problems.
The class focuses on breadth rather than depth. You’ll learn about Python, simple algorithms, testing and debugging, data structures, and get an informal introduction to algorithm complexity.
This course should take nine weeks to complete.
2. Computation Structures 1: Digital Circuits
This is part one of a three-part series on digital systems. It’s based on a course offered by the MIT Department of Electrical Engineering and Computer Science and covers topics like digital encoding of information, principles of digital signaling, combinational and sequential logic, implementation in CMOS, and more.
Using your browser for design entry and simulation, you’ll get to design and debug circuits at both the transistor- and gate-level, culminating in the creation of a 32-bit arithmetic and logic unit.
It’ll take ten weeks to complete.
3. Computation Structures 2: Computer Architecture
This course covers topics like the design of a processor instruction set architecture, how to translate high-level programs into sequences of computer instructions, the design of the datapath and control logic for a 32-bit processor, and the role of caches in the memory hierarchy.
It takes ten weeks to complete.
4. Computation Structures 3: Computer Organization
This interactive course teaches students how to turn a processor into an entire computer system. You’ll learn virtualization as a way to share a single processor, along with basic organization of a simple time-shared operating system, appropriate techniques for parallel processing, and how to use pipelining to increase a processor’s throughput.
This course should take ten weeks to complete.
6. Circuits and Electronics 2: Amplification, Speed, and Delay
Slightly beyond the Level 1 class, this course teaches students how to speed up digital circuits and build amplifiers in the design of microchips used in smartphones, self-driving cars, computers, and the internet.
It’ll take students 5 weeks to complete.
8. Principles of Synthetic Biology
This introductory synthetic biology course brings together computer science, engineering, design, biotechnology, genetic engineering, and biology. Students will learn how to engineer biological systems and program organisms to perform novel tasks.
It’ll take students 15 weeks to complete.
10. Software Construction in Java
This course is part one of two courses focused on writing good software with modern engineering techniques.
Students learn how to write programs that are safe from bugs, easy to understand, and ready for change. They’ll learn about Java programming, software testing, code specifications, and abstract data types.
It takes 12 weeks to complete.
11. Advanced Software Construction in Java
This is the second course on writing good software. It digs deeper into what makes a good code “good” and teaches students how to create code that is safe from bugs, easy to understand, and ready for change. Students will explore two paradigms for modern programming: grammars, parsing, and recursive datatypes; and concurrent programming with threads.
It should take students ten weeks to complete.
12. Discrete-Time Signal Processing
Did You See This CB Softwares?
37 SOFTWARE TOOLS... FOR $27!?Join Affiliate Bots Right Away
This course is designed as a focused view of the theory behind modern discrete-time signal processing systems and applications. Each topic includes a set of automatically-graded exercises for self-assessment, to help digest concepts, and to preview topics.
It should take students four weeks to complete.
13. Global Health Informatics to Improve Quality of Care
Learn how to design health information and communication technology (ICT) solutions for the developing world in this course that focuses on leveraging IT to do just that. It especially highlights how to do so in resource-constrained settings. Students will learn about global health burdens, health informatics, design thinking, evaluation and monitoring, and the software development process.
It should take students 13 weeks to complete.
15. Quantum Information Science I, Part 1
This class is part of a three-course series that teaches students about quantum bits, quantum logic gates, quantum algorithms, and quantum communications. It will help build foundational knowledge to understand what quantum computers can do, how they work, and how you can contribute to discovering new things and solving problems.
It should take students five weeks to complete.
16. Quantum Information Science I, Part 2
The second part of Quantum Information Science builds on the foundational introduction provided in the first course and explores simple quantum protocols and algorithms, including quantum teleportation and superdense coding, Deutsch-Jozsa and Simon’s algorithms, Grover’s quantum search algorithm, and Shor’s quantum factoring algorithm.
It should take students five weeks to complete.
17. Quantum Information Science I, Part 3
The third and final course in Quantum Information Science is an introduction to the theory and practice of quantum computation. It builds on the previous courses’ foundational knowledge and the simple quantum protocols learned during the second course. Students will learn about formal models for quantum noise and quantum communication channels, simple quantum error-correction codes, including the quantum Hamming code, quantum key distribution protocol, and distributed quantum protocols and algorithms.
It should take seven weeks to complete.
Disclosure: This post is brought to you by the Insider Reviews team. We highlight products and services you might find interesting. If you buy them, we get a small share of the revenue from the sale from our commerce partners. We frequently receive products free of charge from manufacturers to test. This does not drive our decision as to whether or not a product is featured or recommended. We operate independently from our advertising sales team. We welcome your feedback. Email us at email@example.com.