

Our Courses

Computing in Python III: Data Structures
Learn more complex ways of handling data, including files, lists, and dictionaries for building complex programs.
-
Course by
-
Self Paced
-
English

Computing in Python IV: Objects & Algorithms
Learn about recursion, search and sort algorithms, and object-oriented programming in Python.
-
Course by
-
Self Paced
-
English

Data Structures & Algorithms I: ArrayLists, LinkedLists, Stacks and Queues
Work with the principles of data storage in Arrays, ArrayLists & LinkedList nodes. Understand their operations and performance with visualizations. Implement low-level linear, linked data structures with recursive methods, and explore their edge cases. Extend these structures to the Abstract Data Types, Stacks, Queues and Deques.
-
Course by
-
Self Paced
-
English

Data Structures & Algorithms II: Binary Trees, Heaps, SkipLists and HashMaps
Become familiar with nonlinear and hierarchical data structures. Study various tree structures: Binary Trees, BSTs and Heaps. Understand tree operations and algorithms. Learn and implement HashMaps that utilize key-value pairs to store data. Explore probabilistic data structures like SkipLists. Course tools help visualize the structures and performance.
-
Course by
-
Self Paced
-
English

Data Structures & Algorithms III: AVL and 2-4 Trees, Divide and Conquer Algorithms
Learn more complex tree data structures, AVL and (2-4) trees. Investigate the balancing techniques found in both tree types. Implement these techniques in AVL operations. Explore sorting algorithms with simple iterative sorts, followed by Divide and Conquer algorithms. Use the course visualizations to understand the performance.
-
Course by
-
Self Paced
-
English

Human-Computer Interaction I: Fundamentals & Design Principles
Learn the principles of Human-Computer Interaction to create intuitive, usable interfaces, with established design principles like feedback cycles, direct manipulation, affordances, signifiers, and more.
-
Course by
-
Self Paced
-
English

Human-Computer Interaction II: Cognition, Context & Culture
Get into the user’s mind and understand the role of mental models and representations, then investigate how to design interfaces that integrate with and influence the world around us.
-
Course by
-
Self Paced
-
English

Human-Computer Interaction III: Ethics, Needfinding & Prototyping
Build on your knowledge of HCI’s core principles by learning to design interfaces in the real world. Begin with the ethics of human subjects research, then learn critical methods for requirements gathering and brainstorming design alternatives.
-
Course by
-
Self Paced
-
English

Human-Computer Interaction IV: Evaluation, Agile Methods & Beyond
Complete your understand of the design life cycle by learning to take interface ideas, prototype them quickly, and evaluate them with real users. Finally, tie principles and methods together and learn the next steps you could take in HCI.
-
Course by
-
English

Probability and Statistics IV: Confidence Intervals and Hypothesis Tests
This course covers two important methodologies in statistics – confidence intervals and hypothesis testing. Confidence intervals allow us to make probabilistic statements such as: “We are 95% sure that Candidate Smith’s popularity is 52% +/- 3%.” Hypothesis testing allows us to pose hypotheses and test their validity in a statistically rigorous way. For instance, “Does a new drug result in a higher cure rate than the old drug?"
-
Course by
-
Self Paced
-
English

Prescription Drug Regulation, Cost, and Access: Current Controversies in Context
Understand how the FDA regulates pharmaceuticals and explore debates on prescription drug costs, marketing, and testing.
-
Course by
-
Self Paced
-
6
-
English

Human Anatomy: Musculoskeletal Cases
Learn the anatomy basic to understanding five musculoskeletal injuries commonly seen in primary care medicine and orthopedic clinical specialty practice. Follow hypothetical patients from injury to operating room.
-
Course by
-
Self Paced
-
6
-
English

Innovating in Health Care
Find innovation opportunities in health care technology, management, consulting, or investing by examining health care cost, quality, and access.
-
Course by
-
Self Paced
-
18
-
English

Calculus Applied!
Apply tools of single-variable calculus to create and analyze mathematical models used by real practitioners in social, life, and physical sciences.
-
Course by
-
Self Paced
-
20
-
English

Strengthening Community Health Worker Programs
Learn to deliver high-quality primary health care at scale through national community health worker programs.
-
Course by
-
Self Paced
-
24
-
English

The Path to Happiness: What Chinese Philosophy Teaches us about the Good Life
Why should we care about Confucius? Explore ancient Chinese philosophy, ethics, and political theory to challenge your assumptions of what it means to be happy, live a meaningful life, and change the world.
-
Course by
-
Self Paced
-
8
-
English

China Humanities: The Individual in Chinese Culture
Explore Chinese history and culture from the perspective of the individual through philosophical texts, literary works, and art.
-
Course by
-
Self Paced
-
14
-
English

ChinaX Book Club: Five Authors, Five Books, Five Views of China
An exploration of the dynamics of contemporary China using the tools of close reading, discussion, and analysis.
-
Course by
-
Self Paced
-
18
-
English

We the People: Civic Engagement in a Constitutional Democracy
Gain a foundational knowledge of American constitutional democracy and understand how to encourage others to explore their own civic paths, while in parallel crafting your own civic voice and identity.
-
Course by
-
Self Paced
-
24
-
English

Leadership: Creating Public Value
In Leadership: Creating Public Value, learn how to face and meet today’s challenges and design a public value proposition that is both actionable and value creating.
-
Course by
-
Self Paced
-
12
-
English

CS50's Computer Science for Business Professionals
This is CS50’s introduction to computer science for business professionals.
-
Course by
-
Self Paced
-
32
-
English

CS50's Introduction to Programming with Scratch
A gentle introduction to programming that prepares you for subsequent courses in coding.
-
Course by
-
Self Paced
-
90
-
English

CS50's Introduction to Databases with SQL
An introduction to databases using a language called SQL.
-
Course by
-
Self Paced
-
144
-
English

CS50's Web Programming with Python and JavaScript
This course picks up where CS50 leaves off, diving more deeply into the design and implementation of web apps with Python, JavaScript, and SQL using frameworks like Django, React, and Bootstrap.
-
Course by
-
25
-
English

Digital Humanities in Practice: From Research Questions to Results
Combine literary research with data science to find answers in unexpected ways. Learn basic coding tools to help save time and draw insights from thousands of digital documents at once.
-
Course by
-
Self Paced
-
14
-
English