The Beauty and Joy of Computing Curriculum and the AP CS: Principles project Brian Harvey, UC Berkeley Dan Garcia, UC Berkeley Jens Mönig, MioSoft
Agenda AP CS: Principles, CS10K, and the Beauty and Joy of Computing Scratch, BYOB, and Snap! Four big computer science ideas: –Procedures –Recursion –Procedure as data –Object oriented programming
AP CS: Principles and CS10K Jan Cuny talked about these in today’s keynote. We were one of the initial five pilot sites for APCS:P; another site, UNC Charlotte, used a modified version of our curriculum. CS: Principles is a big tent—many approaches are possible. The BJC vision: Kids don’t need us to tell them that computers can achieve cool effects; we want them to see that computer programs themselves can be beautiful, and this means (at least!) teaching them to use recursion.
Beauty and Joy of Computing Half lab-based programming Half social context of computing
Big Ideas of Programming –Abstraction –Algorithms –Recursion –Functions-as-data –Programming Paradigms –Concurrency –Distributed Computing Beauty and Joy –“CS Unplugged” activities –All lab work in pairs –Two 3-week projects in pairs Of their own choice!! –One 3-page paper Of their own choice!! Big Ideas of Computing –How Stuff Works 3D Graphics Video Games (expanded at UNCC) Computational Game Theory –Research Summaries AI HCI –Apps that Changed the World –Social Implications of Computing –Saving the World with Computing –How Twitter Works (guest lecture) –Cloud Computing –Limits of Computing –Future of Computing BJC in one slide
Summer Teacher Workshops FRABJOUS CS: NSF-funded project (grants , ) pays our expenses and teacher stipends for five six- week summer workshops on teaching BJC in high schools. Three of the five are happening this summer! More than two groups are already interested for next summer! So… We’ll come to you if you have high school teachers whose schools will let them teach BJC, and you raise funds for teacher stipends. We can pay our travel expenses.
Summer Teacher Workshops Each workshop includes One face-to-face week. Four weeks taking the BJC course online, with one half- day discussion each week (participants face to face, Berkeley TA videoconferencing). A final face-to-face three days. This is pretty much a full-time commitment for six weeks. Our stipend budget ($2000 per participant) isn’t enough to justify anyone doing this for the money!
Procedures (Make a Block) Now in Scratch 2.0!
Recursion
Procedure as Data
Object Oriented Programming
The course: The software: Run the alpha version now: