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

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: 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 System Design: Advanced Concepts of Modern Microprocessors

Chalmers Chalmers University of Technology

If you are tackling (or have plans to tackle) the challenging task of designing your own computer, then you will definitely want to register for this free online computer science course. It’s offered by Sweden-based Chalmers University of Technology. Advanced Concepts of Modern Microprocessors walks students through the steps to make modern multicore-based computers both fast and energy efficient. Students will also be able to engage with other course participants who share their interests. The course is taught in English, and can be completed in about six weeks. Most students who participate in this course have an undergraduate degree in computer science, or the equivalent.
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

The Computing Technology Inside Your Smartphone

Cornell University-Top Computer Science Bachelor's DegreesCornell University

We all love our smartphones, but who among us can say we truly understand them? The Computing Technology Inside Your Smartphone is a free online computer science course offered by Cornell University. Students will explore the fundamental computing technology inside smartphones, plus the advanced techniques that make them run so quickly. Topics covered include application software and digital logic. Sections on advanced performance techniques and actual smartphone processors are also included in the syllabus. The course is ideal for beginners, and takes about 10 weeks to complete.
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

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

How to Win Coding Competitions: Secrets of Champions

ITMO UniversityITMO University

St. Petersburg-based ITMO University, the only seven-time winner of the world’s most prestigious coding cup, offers this free online course. Ideal for anyone looking to boost their career prospects (or enter the world of competitive coding), How to Win Coding Competitions focuses on the algorithms and approaches one needs to become a master coder. Students who register for this course should already have a basic knowledge of C++, Java, Python, and other common programming languages. The class is taught entirely in English, and can be completed in about seven weeks.
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 Artificial Intelligence (AI)

Microsoft

Microsoft, a name synonymous with computer science, offers this free online course via the website EdX. Introduction to Artificial Intelligence is described as “a high-level overview of AI to learn how Machine Learning provides the foundation for AI, and how you can leverage cognitive services in your apps.” By the end of this course, online students will be able to use Azure Machine Learning to building simple machine learning models. They’ll also be able to work with text, speech, and imagery using Python and Microsoft cognitive services. Though the course is considered introductory, a basic knowledge of programming would be very helpful. Self-paced students can complete the course in about four weeks.
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 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

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

Learning From Data (Introductory Machine Learning)

CalTechCalifornia Institute of Technology

Top STEM school CalTech offers this free introduction to machine learning. Learning From Data covers the theory, algorithms, and applications of machine learning in a way that those new to the subject can understand appreciate. Included on the syllabus are lectures on “The Linear Model” and “Neural Networks,” to name a couple. The class is ideal for beginners, and can be completed in about 10 weeks.
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

Minds and Machines

MIT-Top Computer Science Bachelor's DegreesMassachusetts Institute of Technology

Can computers think? Do we perceive reality as it is? These are just two of the questions explored in MIT’s fascinating free course, Minds and Machines. As the most in-depth course on philosophy and AI available online, Minds and Machines provides students with an introduction to the mind, consciousness, reality, and AI. The class is ideal for beginners, and takes about 12 weeks to complete.
Course Website

Mobile Computing with App Inventor — CS Principles

Trinity CollegeTrinity College

Interested in learning how to build mobile apps? Then you’ll definitely want to check out this free online course offered by Trinity College! In Mobile Computing with App Inventor, students will work closely with the open development tool, App Inventor. They’ll learn all about algorithms, programming, and internet marketing as they learn to design and build their own Android applications. The course is ideal for beginners, and can be completed in about six weeks.
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

Sabermetrics 101: Introduction to Baseball Analytics

BU-Top Computer Science Bachelor's DegreesBoston University

Love baseball and computer science? Then you’ll definitely want to check out Sabermetrics 101, a free online computer science course offered by Boston University. The introductory-level course combines topics like baseball analytics and data science with SQL and the R Language to explore the concept of Sabermetrics. By the end of the course, students will be able to compute and communicate statistical analysis of baseball data. It takes about four weeks to complete this course in full.
Course Website

Software Construction in Java

MIT-Top Computer Science Bachelor's DegreesMassachusetts Institute of Technology

The purpose of Software Construction in Java is simple: learn how to write programs that are:

  • safe from bugs
  • easy to understand
  • ready for change

Offered by MIT, this free online class walks students through learning to write “good” code. Topics covered include Java programming and software testing. Abstract data types and code specifications are also touched upon. The intermediate-level course is best for those who have some programming experience. It can be completed in about 12 weeks.
Course Website

Think. Create. Code.

University of Adelaide The University of Adelaide

Australia-based The University of Adelaide offers this free online computer science course entitled Think. Create. Code. It’s well worth the time of anyone who is interested in creating digital content. The class covers basic programming concepts like sequencing and iteration. Upon completion of the course, students may display their animations and artworks in the university’s online art gallery. Think. Create. Code. is ideal for beginners, and takes about six weeks to complete.
Course Website

Using Open Source Web Tooling to Improve Development Proficiency

Microsoft

Using Open Source Web Tooling is another free online computer science course from Microsoft. Over the course of five modules, students will learn to use current open source tools like Bootstrap and Node.js to improve their web development proficiency. Most students who take this course are junior-level developers or computer science students, though hobbyist programmers also benefit from the class. The course is intermediate in level. It can be completed in about five weeks. Two additional parts to this course are also available.
Course Website

Related Links:
15 Fastest Online Master’s in Computer Science 
50 Highest Paying Jobs in Computers & IT 
30 Great Books on Data Science and Big

This completes our list of 30 great free online computer science classes.