30 Great Free Online Computer Science Courses (Updated)

30 Great Free Online Computer Science Courses

Whether you work in the tech industry, or just spend a ton of time on your personal device, taking a free online computer science course is a great way to improve your skills and stay up-to-date on the ever-changing world of computers. Thanks to websites like Coursera and EdX, computer science classes from some of the world’s best universities are available to anyone, regardless of continent or time zone. That means you can study things like programming languages and machine learning on your own preferred schedule. Although hundreds of  computer science courses exist online, we’ve got all the information you need about some of the best. Keep scrolling for 30 great free online computer science courses.

Build Your First Android App

CentraleSupélec

CentraleSupélec — the collaborative name of France’s Supélec and Ecole Centrale Paris — offers this free online course. As a project-centered class, Build Your First Android App walks students through the production of their own application. Step by step, students will create storyboards, install necessary tools, and build. The course is taught entirely in English, and takes about 19 hours to complete.
Course Website

Code Yourself! An Introduction to Programming

University of Edinburgh

Beginning students who want to understand a little about what this whole programming thing is about would do well to consider this free course offered by University of Edinburgh. The course instructors use Scratch to introduce the basic concept and principles of coding to beginning students. Throughout the course, students will begin to think like a software engineer. The course takes about 12 hours to complete in full.
Course Website

Computer Architecture

Princeton-Top Computer Science Bachelor's DegreesPrinceton University

According to Coursera’s Learner Career Outcomes, 50% of people who took this free online course from Princeton saw tangible career benefits. That’s pretty impressive! In Computer Architecture, students will learn to design the computer architecture of complex modern microprocessors. The syllabus consists of 21 modules on topics like directory protocols and parallel programming. The course is best for those advanced in computer science. It takes about 50 hours to complete.
Course Website

Computer Science 101

Stanford University-Top Computer Science Bachelor's DegreesStanford University

If you are a true computer science newbie, then this course from Stanford University makes for the perfect starting point. In Computer Science 101, online students will learn the essential patterns and ideas which govern computer science. Topics covered include computer hardware and software. Class activities include experimenting with short bits of computer code and learning to download or install software. The course is beginner level, and can be completed in about six weeks.
Course Website

Computer Science: Algorithms, Theory, and Machines

Princeton-Top Computer Science Bachelor's Degrees

Princeton University

Princeton University offers a variety of free online computer science courses, including this one. Algorithms, Theory, and Machines is a 20-hour online course available on the educational website Coursera. Topics covered include “Stacks and Queus” and “Introduction to the Theory of Computing,” to name but two.
Course Website

Computer Science: Programming with a Purpose

Princeton University

Princeton University’s Computer Science: Programming with a Purpose is a free online computer science course offered via the website Coursera. As the class description states, “Learning to program is an essential part of the education of every student, not just in the sciences and engineering, but in the arts, social sciences, and humanities, as well.” This flexible course consists of 10 modules. Topics covered include basic programming concepts and programming languages, among other things. It takes about 88 hours to complete this beginner-level course.
Course Website

Computer Vision Fundamentals with Watson and Open CV

IBMIBM

Anyone interested in machine learning and artificial intelligence would do well to consider this course offered by computer science powerhouse IBM. Computer Vision Fundamentals… is a hands-on online course. Students will learn about Python, Watson AI, and OpenCV. They will then use their new knowledge to build, train, and test their own image classifiers. Several lab exercises are scheduled into the class. IBM’s free online computer science course is beginner level and can be completed in about 14 weeks.
Course Website

CS50’s Computer Science for Business Professionals

Harvard-Top Computer Science Bachelor's DegreesHarvard University

This introductory course on computer science is designed  for those in business — specifically, managers, founders, and other decision makers. Offered by Harvard University, the course takes an approach opposite that of most others like it. Instead of emphasizing mastery of low-level concepts, this course emphasizes mastery of high-level concepts. Topics covered include programming languages and cloud computing, among others. The course is ideal for beginners, and can be completed in six weeks.
Course Website

Cybersecurity and Its Ten Domains

University System of GeorgiaThe University System of Georgia

Cybersecurity and Its Ten Domains  is offered by The University System of Georgia. It’s aimed at computer science students, working professionals, and interested citizens. Over the course of the class, students will gain a complete understanding of the various types of cybersecurity. In addition to lecture videos, the course uses knowledge assessments, discussions, and activities as learning aids. The course is ideal for beginners, and takes approximately 25 hours to complete.
Course Website

Divide and Conquer, Sorting and Searching, and Randomized Algorithms

Stanford University-Top Computer Science Bachelor's Degrees

Stanford University

Divide and Conquer… is a free online course offered by Stanford University via Coursera. Best suited for intermediate-level students, this course covers algorithms, asymptotic notation, and integer and matrix multiplication, among other things. The course is the first in a series on Algorithms, and can be completed entirely online in about 17 hours.
Course Website

Everyday Excel, Part I

university-of-colorado-boulderUniversity of Colorado Boulder

Fluency in the program Excel is one of the best skills a job seeker can possess. For those without Excel experience, this free online course is offered by University of Colorado Boulder. Everyday Excel, Part I provides students with a fun way to learn to navigate, edit and format, and manage data sets using Excel. The course is perfect for beginners, and takes about 24 hours to complete.
Course Website

How Computers Work

University of LondonUniversity of London and Goldsmiths, University of London

If your interest in computer science is rooted in the most basic question — how do computers work? — then you’ll definitely want to look into this free online course offered by University of London. Students will work through a series of four modules. They will learn all about networks, the internet, and applications. By the end of the course, they’ll have a solid understanding of the ways in which a computer works. The course is ideal for beginners. It takes about 10 hours to complete in full.
Course Website

How to Code: Simple Data

University of British ColumbiaThe University of British Columbia

Those who aspire to learn a programming language or two are sure to be interested in this course offered by The University of British Columbia. How to Code: Simple Data will set up students to master any programming language by walking them through a systematic programming method. Class topics and activities include program requirements and building tests, among others. The class is ideal for beginners, and can be completed in about seven weeks.
Course Website

How to Create a Website in a Weekend!

SUNY OnlineThe State University of New York

Unlike most of the classes on our list of great free online computer science courses, this one offered by SUNY Online is a project-centered course. This means that students who enroll in How to Create a Website in a Weekend! will literally, well, learn to build a website in a weekend. Through video tutorials and guided activities, students will build and publish a WordPress site complete with sound, images, text, hyperlinks, and more.
Course Website

Internet History, Technology, and Security

university-of-michiganUniversity of Michigan

Anyone interested in the history of the internet, as well as how it works, is sure to enjoy this free online course offered by University of Michigan. Internet History, Technology, and Security is a course which focuses on the impact technology and networks have had on our lives and culture. Over the course of 10 modules, students will learn all about the evolution of the internet, from the Dawn of Electronic Computing during World War II to the rapid growth and commercialization of the internet as we know it today. Students will also study the ways in which applications and websites are built and encrypted. The course is suitable for beginner through advanced, and takes about 15 hours to complete.
Course Website

International Cyber Conflicts

SUNY OnlineThe State University of New York Online

This free online course offered by SUNY Online has become more popular than ever thanks to the seemingly daily reports of international cyber crime. In International Cyber Conflicts, students will learn to distinguish between political espionage, data theft, and propaganda. They will also learn to identify the different players in cyber threats, summarize efforts to address cyber crime, and apply different psychological theories of human motivation to different international cyber conflicts. The course is open to students of all levels, and takes about seven hours to complete in full.
Course Website

Introduction to Computers and Office Productivity Software

The Hong Kong University of Science and Technology

The Hong Kong University of Science and Technology offers Introduction to Computers and Office Productivity Software. This free online computer science course is ideal for anyone looking to update their resume or CV with knowledge of Word, Excel, and PowerPoint. Additionally, students will learn how to edit photos using GIMP. Different parts of a computer and the different types of software used on a computer system are also covered. The course is open to all, taught in English, and takes about 15 hours to complete.
Course Website

Introduction to HTML5

university-of-michiganUniversity of Michigan

Anyone interested in web design would do well to consider spending some time on this course. Offered by University of Michigan, Introduction to HTML5 is the first of five courses in the series “Web Design for Everybody.” Over the course of about three weeks, students will cover the basics of HTML5, some preliminary coding, and webpage accessibility, among other things. The course is ideal for beginners through advanced, and can be completed in about 12 hours.
Course Website

Introduction to Self-Driving Cars

University of Toronto

If you are interested in all of the recent news about self-driving cars, then this course from University of Toronto is for you. Introduction to Self-Driving Cars is the first of four classes on the subject. Topics covered include the requirements for autonomy, self-driving software architectures, and safety assurances, among other things. The class is taught in English, offers flexible deadlines, and takes about 35 hours to complete.
Course Website

Introduction to User Experience Design

Georgia Tech-Top Computer Science Bachelor's Degrees

Georgia Tech

If you have any interest in learning User Experience (UX) Design, then this course is for you. Offered by Georgia Tech, Introduction to User Experience Design covers designing alternatives, prototyping, and much more. It is best suited for the novice, and takes about six hours to complete.
Course Website

Introduction to Web Development

UC Davis-Top Computer Science Bachelor's DegreesUniversity of California, Davis

Introduction to Web Development is a free online computer science course offered by U.C. Davis. Ideal for anyone who is thinking about entering the world of web development, this beginner-level course covers such fundamentals as CSS code, HTML, and JavaScript. By the end of the class, students will have a better understanding of the internet’s structure and functionality. Students will also be able to create and publish their own interesting web pages. The course takes approximately 25 hours to complete.
Course Website

Kotlin for Java Developers

Jetbrains

Intermediate-level programmers interested in expanding their knowledge are sure to find this free online computer science course helpful. Jetbrain offers Kotlin for Java Developers via the educational website Coursera. Included on the syllabus are “Nullability, Functional Programming,” “Properties, OOP, Conventions,” and “Sequences, Lambdas with Receiver, Types.” The course takes about 25 hours to complete.
Course Website

Learn Object Oriented Programming with C++

Coursera Project Network

The free educational website Coursera offers a few online computer science courses itself. Learn Object Oriented Programming with C++ is an intermediate-level course. It takes just 1.5 hours to complete, and walks students through creating a basic command line application using object oriented methods.
Course Website

Learn to Program: The Fundamentals

University of TorontoUniversity of Toronto

Interested in learning how to make things happen in the world of computer science? Then you’ll definitely want to check out this free online course offered by University of Toronto. As its name implies, Learn to Program: The Fundamentals covers the basics of programming and learning to write useful programs. The course focuses on working with Python. Beginners are welcome in the course, which can be completed in approximately 25 hours.
Course Website

Machine Learning for All

University of LondonUniversity of London

Machine learning is one of the hottest topics in computer science, and you can learn all about it in Machine Learning for All. This free online course offered by University of London doesn’t focus on the programming tools that most other courses on the subject do. Instead, this course covers the basics of machine learning technologies, and discusses the benefits and dangers of machine learning to society. By the end of the course, students will be able to use datasets to train a machine learning module. The course is ideal for beginners, and takes about 22 hours to complete.
Course Website

Mathematical Thinking in Computer Science

university-of-california-san-diego

University of California, San Diego

UC San Diego, in partnership with HSE University, offers Mathematical Thinking in Computer Science for free via Coursera. The online course covers all of the most important tools used in discrete mathematics: induction, recursion, logic, invariants, examples, and optimality. The only prerequisite is a knowledge of basic math, though a basic knowledge of programming may also be beneficial. The course is beginner level, and part of a larger specialization on discrete mathematics.
Course Website

Modern Robotics: Foundations of Robot Motion

northwestern-university

Northwestern University

Whether you are interested in robots as a career, or just interested in robots, this free course from Northwestern University is no doubt worth your time! Foundations of Robot Motion is the first course of a specialization on modern robotics. The class covers the fundamentals of robot configurations — that is, how and why robots move. Best suited for intermediate-level students, Foundations of Robot Motion takes about 24 hours to complete.
Course Website

Natural Language Processing

HSE University

Natural Language Processing is a free online course offered by HSE University, one of the top research universities in Russia. The course is taught in English, and covers a wide range of tasks in Natural Language Processing. These include sentiment analysis, summarization, and dialogue state tracking, among other things. Though the course can be completed on its own, it is also part of a larger series of courses on advanced machine learning.
Course Website

Parallel Programming in Java

Rice University-Top Computer Science Bachelor's DegreesRice University

Parallel Programming in Java is an intermediate-level course that is ideal for computer science students and industry professionals. Offered by Rice University, this free online class teaches the fundamental concepts of parallel programming in the context of Java 8. By the end of the course, students will be able to use parallel Java frameworks to write parallel programs for desktops, mobile devices, and other multicore platforms. The course takes about 19 hours to complete.
Course Website

Python Programming: A Concise Introduction

Wesleyan UniversityWesleyan University

Python is one of the most useful programming languages. This free online course from Wesleyan University is ideal for anyone new to programming and/or computer science. Python Programming: A Concise Introduction uses four modules and hands-on activities to introduce students to working and creating with Python Version 3.x. The course is ideal for beginners and takes about four weeks to complete.
Course Website

Related Resources: