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 http://bjc.berkeley.edu BJC in one slide • Big Ideas of Programming • Big Ideas of Computing – – – – – – – 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!! – 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 Summer Teacher Workshops FRABJOUS CS: NSF-funded project (grants 1138596, 1143566) pays our expenses and teacher stipends for five sixweek 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 15-20 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 halfday 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: http://bjc.berkeley.edu The software: http://snap.berkeley.edu Run the alpha version now: http://snap.berkeley.edu/run