Free Online Computer Science Courses

Computer science courses teach essential skills in coding, algorithms, and software development. Whether you're a beginner or an expert, a computer science course can deepen your understanding of computing fundamentals. Gain practical skills for a rewarding career in tech.

863 Computer Science Courses

Audit System with Spring Boot AOP

Coursera Project Network

In this guided project you will learn about what is AOP(Aspect Oriented Programming) and its key terminologies. Then you will also learn about what are the different...

Automate an e-commerce web application using Selenium & Java

Coursera Project Network

In this 1-hour long project-based course, you will learn - 1. Writing test automation scripts using Selenium to automation an e-commerce website 2. Interacting with...

Automated Reasoning: Symbolic Model Checking

EIT Digital

This course presents how properties of acting systems and programs can be verified automatically. The basic notion is a transition system: any system that can be...

Automation Scripts Using Bash

Coursera Project Network

In this 2-hour long project-based course, you will learn how to create Bash scripts that automates long and tedious tasks, evaluate and review some of the most commonly-used...

AWS: Containerization

Whizlabs

AWS: Containerization Course is the fourth course of Exam Prep: AWS Certified DevOps Engineer - Professional Specialization. This course teaches deploying container-based...

AWS: Network Security, Compliance and Governance

Whizlabs

AWS: Network Security, Compliance and Governance is the third course of Exam Prep ANS-C01: AWS Certified Advanced Networking Specialty specialization. This course...

Azure Infrastructure Fundamentals

LearnQuest

Microsoft Azure is a service created by Microsoft to provide cloud computing for creating and managing applications and services using a cloud environment. Azure...

Basic Cryptography and Programming with Crypto API

University of Colorado System

In this MOOC, we will learn the basic concepts and principles of crytography, apply basic cryptoanalysis to decrypt messages encrypted with mono-alphabetic substitution...

Beginners Guide to YAML Syntax

Coursera Project Network

By the end of this project, you will have an understanding of the basics of YAML syntax. This course is for absolute beginners who have no previous experience and...

Beginning GUI programming with JavaFX

Coursera Project Network

By the end of this project, you will learn to draw and customize simple shapes in JavaFX. You will also learn about how colors are managed in JavaFX. Finally, you...

Best Practices for Mobile Development With Java

Coursera Project Network

By the end of this project, you will be able to implement the following validation techniques: Presence checks, length checks, type checks, email validation, credit...

Big Data Analysis with Scala and Spark

École Polytechnique Fédérale de Lausanne

Manipulating big data distributed over a cluster using functional concepts is rampant in industry, and is arguably one of the first widespread industrial uses of...

Big-O Time Complexity in Python Code

Coursera Project Network

In the field of data science, the volumes of data can be enormous, hence the term Big Data. It is essential that algorithms operating on these data sets operate...

BigQuery Fundamentals for Snowflake Professionals

Google Cloud

This course covers BigQuery fundamentals for professionals who are familiar with SQL-based cloud data warehouses in Snowflake and want to begin working in BigQuery....

BioData Processing

Coursera Project Network

Can we communicate with other living beings besides animals? For example, it is well known that plants and fungi are sentient creatures, but modern societies/humans...

Blazor and JavaScript Interoperability

Coursera Project Network

In this short project-based course, you will learn how to extend your Blazor applications to communicate with JavaScript - the browser's first class language. You'll...

Block.one: Creating a Multi Node EOSIO Blockchain

Google Cloud

This is a self-paced lab that takes place in the Google Cloud console. In this lab, you will extend the single node EOSIO blockchain to use multiple nodes. You will...

BlockApps STRATO: Spin Up A Blockchain Node in 3 minutes

Google Cloud

This is a self-paced lab that takes place in the Google Cloud console. Discover how easy it is to spin up a private blockchain network and create user accounts within...