

Our Courses
Django Features and Libraries
This third course in Django for Everybody explores building Django-based web applications through the use of cookies, sessions, and the authentication processes in Django. You will develop a simple web application and learn how an application moves from development to production.
-
Course by
-
Self Paced
-
English
Data Science Ethics
Learn how to think through the ethics surrounding privacy, data sharing, and algorithmic decision-making.
-
Course by
-
English
Database Design and Basic SQL in PostgreSQL
This first course in PostgreSQL for Everybody explores the use of SQL in the PostgreSQL environment and introduces SQL techniques and commands. This course also explores data modeling and database relationships, while introducing hands-on assignments to work within PostgreSQL.
-
Course by
-
Self Paced
-
English
Intermediate PostgreSQL
This second course in PostgreSQL for Everybody explores a wide range of SQL techniques to aggregate and transact data in PostgreSQL.This course also explores handling, reading, and parsing data with PostgreSQL and working with text in databases with regular expressions.
-
Course by
-
Self Paced
-
English
JSON and Natural Language Processing in PostgreSQL
In this third course in PostgreSQL for Everybody, learners will learn how PostgreSQL creates and uses JSON and natural language content. Learners will explore using multiple sources of data and how text is structured within PostgreSQL.
-
Course by
-
English
Database Architecture, Scale, and NoSQL with Elasticsearch
In this fourth and final course in PostgreSQL for Everybody, learners will explore database architectures, CRUD operations and how ACID requirements are implemented in PostgreSQL. Learners will compare how to scale SQL and NoSQL database services and build NoSQL applications using ElasticSearch.
-
Course by
-
Self Paced
-
English
Programming for Everybody (Getting Started with Python)
This course is a "no prerequisite" introduction to Python Programming. You will learn about variables, conditional execution, repeated execution and how we use functions. The homework is done in a web browser so you can do all of the programming assignments on a phone or public computer.
-
Course by
-
Self Paced
-
English
Azure ML: Deploying, Managing, and Experimenting with Models
This course is designed to provide a comprehensive foundation in Azure Machine Learning, equipping learners with essential skills for managing ML workflows within the Azure ML workspace. Participants will begin by understanding core workspace fundamentals, including environment setup, resource management, and key components for ML experimentation.
-
Course by
-
Self Paced
-
7 hours
Introduction to Computer Science and Programming Using Python
An introduction to computer science as a tool to solve real-world analytical problems using Python 3.5.
-
Course by
-
English
Introduction to Computational Thinking and Data Science
6.00.2x is an introduction to using computation to understand real-world phenomena.
-
Course by
-
English
Collaborative Data Science for Healthcare
Data and learning should be at the front and center of healthcare delivery. In this course, we bring together computer scientists, health providers and social scientists collaborating to improve population health by analyzing and mining data routinely collected in the process of patient care.
-
Course by
-
English
Unlocking Information Security I: From Cryptography to Buffer Overflows
Learn how systems are hacked and defended.
-
Course by
-
English
Introduction to Computer Science and Programming
The term “Computation” refers to the action performed by a computer. A computation can be a basic operation and it can also be a sophisticated computer simulation requiring a large amount of data and substantial resources. This course aims at introducing learners with no prior knowledge to the basic key concepts of computer science. By following the lectures and exercises of this course, you will gain an understanding of algorithms by programming using the language Ruby.
-
Course by
-
English
Introduction to Software Side Channels and Mitigations
Side channels exist in the real world, but they also exist in computers and can be exploited directly from software. This is a substantial computer security problem today, that we need to learn about to be able to stop attacks. In this course, you will learn and practice basic software-based side channels and understand the thought process to utilize a side channel. You will then learn how to mitigate or avoid side channels in software.
-
Course by
-
Self Paced
-
English
Cache Side-Channel Attacks and Mitigations
Software-based side-channel attacks can pose a severe security threat in practice. In this course, we focus on a particularly prominent case: caches and cache side-channel attacks and we will go beyond the basic Flush+Reload attack. You will work with different cache side channels and understand where timing differences in architectures originate. You will learn which mechanisms can mitigate specific side-channel techniques in practice.
-
Course by
-
Self Paced
-
English
Physical and Advanced Side-Channel Attacks
Software-based and physical side-channel attacks have similar techniques. But physical attacks can observe properties and side effects that are usually not visible on the software layer. Thus, they are often considered the most dangerous side-channel attacks. In this course, we learn both about physical side-channel attacks but also about more advanced software-based side channels using prefetching and branch prediction. You will work with these attacks and understand how to mitigate them.
-
Course by
-
Self Paced
-
English
Transient-Execution Attacks: Understanding Meltdown and Spectre
Beyond software-based side-channel attacks there is a new class of attacks called transient-execution attacks. These attacks go beyond leaking meta-data and directly retrieve secret data but they use side channels as an data exfiltration mechanism to transmit the secret data to an attacker-controlled application. We will look at the most prominent of these attacks: Meltdown, Spectre, Foreshadow, and ZombieLoad. You will implement some of these attacks yourself and learn how to mitigate them.
-
Course by
-
Self Paced
-
English
Excel for Everyone: Core Foundations
Learn Excel fundamentals including data wrangling, spreadsheet management, and basic data analysis.
-
Course by
-
Self Paced
-
English
Excel for Everyone: Data Management
Further your Excel skills to manage larger datasets and more complex data wrangling, management and modelling.
-
Course by
-
Self Paced
-
English
Excel for Everyone: Data Analysis Fundamentals
Perform advanced data wrangling, analysis and dashboard visualization to help drive strategic decision-making.
-
Course by
-
Self Paced
-
English
How to Code: Simple Data
Learn the secret to writing well-tested and easy to improve programs, that will set you up to master any programming language
-
Course by
-
English
How to Code: Complex Data
Learn how to design more complex programs, using new data structures, abstraction, and generative recursion.
-
Course by
-
English
Policy Analysis Using Interrupted Time Series
A comprehensive course on conducting and presenting policy evaluations using interrupted time series analysis.
-
Course by
-
Self Paced
-
English
Software Construction: Data Abstraction
Learn powerful data abstraction and decomposition techniques to build large, complex programs.
-
Course by
-
English
Software Construction: Object-Oriented Design
Learn how to design large software systems that solve real-world problems using object-oriented design techniques.
-
Course by
-
English