Our Courses
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
Basic Japanese Civil Law
Learn Japanese Civil Law, covering various contemporary issues faced in everyday life.
- Course by
- Self Paced
- English
Basic Japanese Civil Law 2
This course is in succession to the TokyoTechX "Basic Japanese Civil Law," which covered legal concepts common to many countries, such as sovereignty, constitution, separation of three powers, basic human rights, and personal safety. This course considers current issues in Japan, such as those faced in daily life from a legal perspective based upon laws and related methods. This course teaches Japanese civil law in more detail related to contemporary problems.
- Course by
- Self Paced
- English
Monozukuri: Making Things
Learn the Japanese concept of Monozukuri: the art of "making things" starting with the philosophy including lectures from Tokyo Tech faculty, various examples from Japanese Industry, and the Tokyo Tech student clubs. In addition, the principles of experiental learning are also introduced.
- Course by
- Self Paced
- 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
How to Start a Biotech Venture
Getting a business off the ground includes many challenges. Learn what key decisions need to be addressed when starting a biotech venture.
- Course by
- Self Paced
- English
Biospecimen Research Methods
Improve the quality of your research by learning and applying best practices to collect, store and use biospecimens in your laboratory.
- Course by
- Self Paced
- English
Business Foundations
This is business in a nutshell; learn key concepts and frameworks that underpin business.
- Course by
- Self Paced
- English
Business Communications
Learn how to communicate effectively in a business setting: understand diverse audiences and build sound arguments.
- 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