Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

University of California, Berkeley

The Beauty and Joy of Computing (CS Principles), Part 1

University of California, Berkeley via edX

This course may be unavailable.


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)

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. This fun, introductory course is not just for computer science majors, it’s for everyone… join us!

I am so grateful to have experienced BJC (Beauty and Joy of Computing). I took this course during my freshmen year at UC Berkeley, and it has actually changed my life. Because of it, I have switched to the computer science major and have even developed a passion for computer science education! This course showed me that computer science is creative, and it gave me the confidence to continue taking computer science courses. BJC's philosophy of inclusion, diversity, and collaboration is tangible and sets it apart from all other computer science courses that I have experienced. It is truly empowering!” -- Yifat Amir


Learn more about our High School and AP* Exam Preparation Courses



Start your review of The Beauty and Joy of Computing (CS Principles), Part 1

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.