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 — 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.
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.
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.
Computer Science 101
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.
Computer Science: Algorithms, Theory, and Machines
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.
Computer Science: Programming with a Purpose
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.
Computer Vision Fundamentals with Watson and Open CV
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.
CS50’s Computer Science for Business Professionals
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.
Cybersecurity and Its Ten Domains
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.
Divide and Conquer, Sorting and Searching, and Randomized Algorithms
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.
Everyday Excel, Part I
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.
How Computers Work
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.
How to Code: Simple Data
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.
How to Create a Website in a Weekend!
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.
Internet History, Technology, and Security
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.
International Cyber Conflicts
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.
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.
Introduction to HTML5
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.
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.
Introduction to User Experience Design
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.
Introduction to Web Development
Kotlin for Java Developers
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.
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.
Learn to Program: The Fundamentals
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.
Machine Learning for All
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.
Mathematical Thinking in Computer Science
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.
Modern Robotics: Foundations of Robot Motion
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.
Natural Language Processing
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.
Parallel Programming in Java
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.
Python Programming: A Concise Introduction
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.
- 15 Fastest Online Master’s in Computer Science
- 50 Highest Paying Jobs in Computers & IT
- 30 Great Books on Data Science and Big Data
- 5 Cheapest Associate in Computer Science Degree Programs
- Top 10 Best Online Master’s in Computer Science Degree Programs
- Top 10 Computer Science Degrees Online
- Top 50 Bachelor’s in Computer Science Degree Programs
- 50 Fortune 500 Companies Offering Computer Science Internships
- 50 Great Cities for Studying Computers and Technology