The Beauty and Joy of Computing (BJC) is an introductory computer
science curriculum developed at the University of California, Berkeley,
intended for non-CS majors at the high school junior through undergraduate
freshman level. It was one of the five initial pilot programs for the
AP CS Principles course being
developed by the College Board and the National Science Foundation.
We offer it as CS 10
at Berkeley.
This web site is the repository for materials to help teachers who have
adopted or are considering adopting the BJC curriculum.
"AP CS Principles and the 'Beauty and Joy of Computing' Curriculum" BOF, rm. 302A
Fri 2 Mar, 12:10–1:35pm
—
Free SNAP! lunch, rm. 301AB
Fri 2 Mar, 3–4:30pm
—
FRABJOUS CS: Framing a Rigorous Approach to Beauty and Joy for Outreach to Underrepresented
Students in Computing at Scale, CNS-CE21C, NSF showcase, Exhibit Hall A
Fri 2 Mar, 7–10pm
—
Workshop 20: "AP CS Principles and The Beauty and Joy of Computing Curriculum," rm. 302B
(free for high school teachers)
Sat 3 Mar, 3–6pm
—
Workshop 28: "Snap! (Build Your Own Blocks)," rm. 301A
Computing has changed the world in profound ways. It
has opened 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 some of the "Big Ideas" of computing, such as abstraction,
design, recursion, concurrency, simulations, and the limits of computation.
We show some beautiful applications of computing that have changed the
world, talk about the history of computing, and where it will go in the
future. Throughout the course, relevance is emphasized: relevance to the
student and to society. As an example, the final project is completely of
the students' choosing, on a topic most interesting to them. The
overarching theme is to expose students to the beauty and joy of computing.
We are especially excited
about bringing computing (through this course) to traditionally
under-represented groups in computing, i.e., women and ethnic minorities.
(click on the image of the flyer below to download the pdf that can be printed nicely onto a single, double-sided 11x17 handout)
Colleen Lewis's middle school Scratch
curriculum
as a Moodle backup (big download). Please email colleenlewis at Google's mail service
if you plan to teach using these materials.
Videos of Dan going meta about CS Principles in the big scheme of
things, and Brian trying to teach recursion and higher order functions but
actually mostly fighting with really really bad teleconferencing software.
(Try the video lectures above instead.)
Our "FRABJOUS CS" (Framing a
Rigorous Approach to Beauty and Joy for Outreach to Underrepresented Students
in Computing at Scale) NSF-funded project:
one-page summary and
full proposal.