Table of contents 👇


Harvard

Stanford

MIT

IBM

The Open University

University of Michigan

University of Minnesota

Coventry University

Helsinki University

MIT OpenCourseWare

MIT OpenLearning Library

Google

Microsoft

Meta

GitLab

freeCodeCamp

Udemy

DataCamp

Accenture

LinkedIn

The Linux Foundation

Extra Courses (Various)

1. Mathematics for Computer Science

This course will explain and apply the basic methods of discrete (non-continuous) mathematics in computer science.

You will be able to use these methods in subsequent courses in the design and analysis of algorithms, computability theory, software engineering, and computer systems.

👉 https://openlearninglibrary.mit.edu/courses/course-v1:OCW+6.042J+2T2019/about

2. Introduction to Machine Learning

This course introduces principles, algorithms, and applications of machine learning from the point of view of modeling and prediction.

It includes the formulation of learning problems and concepts of representation, over-fitting, and generalization.

👉 https://openlearninglibrary.mit.edu/courses/course-v1:MITx+6.036+1T2019/about

3. Software Construction in Java

In this course, you will learn what software engineers mean by "good" code -- safe from bugs, easy to understand, and ready for change. You will also learn ways to make your code better, including testing, specifications, code review, exceptions, immutability, abstract data types, and interfaces.

👉 https://openlearninglibrary.mit.edu/courses/course-v1:MITx+6.005.1x+3T2016/about

4. Advanced Software Construction in Java

This is a challenging and rigorous course that will help you take the next step on your way to becoming a skilled software engineer.

👉 https://openlearninglibrary.mit.edu/courses/course-v1:MITx+6.005.2x+1T2017/about