The Beauty and Joy of Computing!

bjc.pngA collaboration between the University of California-Berkeley and North Carolina State University

Below are resources for the Beauty and Joy of Computing curriculum for the Computer Science Principles course.

Big Ideas:
1. Computing is a creative activity. Click for Resources
2. Abstraction reduces information and detail to facilitate focus on relevant concepts. Click for Resources
3. Data and information facilitate the creation of knowledge. Click for Resources
4. Algorithms are used to develop and express solutions to computational problems. Click for Resources
5. Programming enables problem solving, human expression, and creation of knowledge. Click for Resources
6. The Internet pervades modern computing. Click for Resources
7. Computing has global impacts. Click for Resources






snap-logo-256.pngProgramming Language

Snap! (formerly BYOB) is a visual, drag-and-drop programming language. It is an extended reimplementation of Scratch (a project of the Lifelong Kindergarten Group at the MIT Media Lab) that allows you to Build Your Own Blocks. It also features first class lists, first class procedures, and continuations. These added capabilities make it suitable for a serious introduction to computer science for high school or college students.


logo nsf1.jpg

NSF Award #CNS-113858

FRABJOUS CS — Framing a Rigorous Approach to Beauty and Joy for Outreach to Underrepresented Students in Computing at Scale

CE21 Grant

National Science Foundation