1. Introduction to Computer Science (CS50x) - Harvard University
Students who earn a satisfactory score on nine problem sets (i.e., programming assignments) and a final project are eligible for a certificate. It is a self-paced course–you may take CS50x on your schedule.
2. Introduction to Computer Science and Programming Using Python - MIT
This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle practical problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but it will be their first and last computer science courses for many. This run features lecture videos, lecture exercises, and a problem set using Python 3.5. Even if you previously took the course with Python 2.7, you will easily transition to Python 3.5 in future courses or enroll now to refresh your learning.
4. FrontEnd Masters - Four Semesters of Computer Science in 5 Hours
In this course, some big topics are discussed here in just five hours: Algorithms and Big O Analysis, Recursion, Sorting, Data Structures, AVL Trees, Binary Search Trees, Tree Traversals, and Path Finding. This is a paid course but worthy one.
5. Introduction to Computer Science using Java
This is a course in Java programming for beginners. It covers the fundamentals of programming, roughly the same material covered in a beginning programming course in a university or a high school AP Computer Science course.