EdX

The Beauty and Joy of Computing - AP® CS Principles Part 2 (edX)

The Beauty and Joy of Computing - AP® CS Principles Part 2 (edX)

A computer science principles course for anyone who wants to learn how to translate ideas into code. Discover the big ideas and thinking practices in computer science plus learn how to code using one of the friendliest programming languages, Snap! (based on Scratch).

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

Computing has profoundly changed the world, opening up wonderful new ways for people to connect, design, research, play, create, and express themselves. However, just using a computer is only a small part of the picture. The real transformative and empowering experience comes when one learns how to program the computer, to translate ideas into code.

This course teaches students how to do exactly that, using Snap! (based on Scratch), one of the friendliest programming languages ever invented. It's purely graphical, which means programming involves simply dragging blocks around, and building bigger blocks out of smaller blocks. But this course is far more than just learning to program. We focus on seven big ideas (creativity, abstraction, data and information, algorithms, programming, the Internet, and global impact), and six computational thinking practices (connecting computing, creating computational artifacts, abstracting, analyzing problems and artifacts, communicating, and collaborating). Throughout the course, relevance is emphasized: relevance to the student and to society.
Topics include:

  • Data and Information
  • Complexity Theory
  • Recursion, Lambda and Higher Order Functions
  • Artificial Intelligence
  • Human Computer Interaction
  • Lab-based Topics: Algorithms and Data, Trees and Fractals, Recursion and Higher Order Functions

This fun, introductory course is not just for computer science majors, it’s for everyone… join us!

What you'll learn

  • The basics of computer programming using Snap! (based on Scratch)
  • How to apply the "seven big ideas" of creativity, abstraction, data and information, algorithms, programming, the Internet, and global impact
  • How to master the six computational thinking practices of connecting computing, creating computational artifacts, abstracting, analyzing problems and artifacts, communicating, and collaborating
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Trustworthy AI for Healthcare Management (Coursera) EdX
Politecnico di Milano

Trustworthy AI for Healthcare Management (Coursera)

This MOOC gives an introduction to trustworthy artificial intelligence and its application in healthcare. This includes modules on basics of artificial intelligence and an introduction to trustworthy and ethical applications of artificial intelligence. A dedicated lesson will present the Z-Inspection® process for assessing trustworthy AI, and real-world case studies will illustrate how to apply the knowledge.

Jun 15th 2026
3 Weeks
Recommender Systems: Behind the Screen (edX) EdX
Université de Montréal,UMontrealX

Recommender Systems: Behind the Screen (edX)

How are items recommended when you’re browsing for movies, jobs or clothing online? Register here and you’ll discover the fundamental concepts and methods allowing the most relevant item suggestions to users from e-commerce to online advertisement. In this course, you will explore and learn the best methods and practices in recommender systems, which are an essential component of the online ecosystem. This course was developed by IVADO and HEC Montréal as part of a workshop that took place in Montreal.

Sep 26th 2023
5-12 Weeks
Autonomous Mobile Robots (edX) EdX
ETH Zurich,ETHx

Autonomous Mobile Robots (edX)

Basic concepts and algorithms for locomotion, perception, and intelligent navigation. Robots are rapidly evolving from factory workhorses, which are physically bound to their work-cells, to increasingly complex machines capable of performing challenging tasks in our daily environment. The objective of this course is to provide the basic concepts and algorithms required to develop mobile robots that act autonomously in complex environments.

Self Paced
Self-Paced
Introduction to Java Programming - Part 2 (edX) EdX
The Hong Kong University of Science and Technology - HKUST,HKUSTx

Introduction to Java Programming - Part 2 (edX)

The first MOOC to teach the fundamental elements of Java programming and data abstraction. Do you want to become a better problem solver? This Java course will provide you with a strong understanding of basic Java programming elements and data abstraction using problem representation and the object-oriented framework.

Self Paced
Self-Paced
Applied Quantum Computing III: Algorithm and Software (edX) EdX
Purdue University,PurdueX

Applied Quantum Computing III: Algorithm and Software (edX)

Learn domain-specific quantum algorithms and how to run them on present-day quantum hardware. This course is part III of the series of Quantum computing courses, which covers aspects from fundamentals to present-day hardware platforms to quantum software and programming. The goal of part III is to discuss some of the key domain-specific algorithms that are developed by exploiting the fundamental quantum phenomena (e.g. entanglement)and computing models discussed in part I.

Mar 25th 2024
5-12 Weeks
Quantum Mechanics and Quantum Computation (edX) EdX
University of California, Berkeley,BerkeleyX

Quantum Mechanics and Quantum Computation (edX)

A simple conceptual introduction to quantum mechanics and quantum computation. Quantum computation is a remarkable subject building on the great computational discovery that computers based on quantum mechanics are exponentially powerful. This course aims to make this cutting-edge material broadly accessible to undergraduate students, including computer science majors who do not have any prior exposure to quantum mechanics.

No sessions available
5-12 Weeks
Introduction to Java Programming - Part 1 (edX) EdX
The Hong Kong University of Science and Technology - HKUST,HKUSTx

Introduction to Java Programming - Part 1 (edX)

Learn the fundamental elements of Java programming and data abstraction. Do you want to become a better problem solver? This Java course will provide you with a strong understanding of basic Java programming elements and data abstraction using problem representation and the object-oriented framework.

Self Paced
Self-Paced
Computing: Art, Magic, Science (edX) EdX
ETH Zurich,ETHx

Computing: Art, Magic, Science (edX)

Learn the basics of Information Technology and how to write quality programs in this introductory computer science course. Information Technology (IT) is everywhere. Every aspect of human activity depends on it. All IT processes, whether they drive mobile phones, the Internet, transportation systems, enterprise systems, publishing, social networks or any other application, rely on software.

No sessions available
4 Weeks