Media Computation Approach to Introductory CS
Computer science education is turning off more people to computing today, with all the power and media and usefulness of today's computers, than we did twenty years ago. To change this state, we need to consider the lessons of Margolis and Fischer's Unlocking the Clubhouse and the AAUW report Tech-Savvy: Computing education must be relevant, creative, and social.
To meet this challenge, we developed and are studying a set of courses using media as a context to motivate the study of introductory computer science topics. "Introduction to Media Computation" is an introductory course in computing whose focus is on learning to program to manipulate media. We reduce red eye, create ticker tape movies of CNN headlines, splice and reverse sounds, create synthesizers, and implement chromakey. "Representing Structure and Behavior" is the second course in the sequence that continues to use media as a context where students explore data structures, computational models, and simulations.
Introductory Computer Science Understanding
Computer science has long debated what to teach in the introductory course of the discipline, and leaders in our field have argued that the introductory course approach is critical to student development. We are beginning an investigation of the impact of alternative approaches to introductory computing by considering the questions of what students bring to their second class in computing and how the outcomes differ depending on the studentsí alternative first course. Our preliminary study showed significant differences in understanding of introductory concepts, such as iteration, conditionals, and arrays, at the beginning of the second course. However, by the end of the second course their understanding had converged.
Computer Science Education for End-User Programmers
Recent estimates for the number of end-user programmers indicate this population is over four times larger than the community of professional programmers. Web developers using active server pages, accountants using spreadsheets, and CAD designers using AutoCAD are just a few example domains where end-user programming has become commonplace. Recently, native scripting capabilities have become integrated with media manipulation tools like Photoshop, Final Cut Pro, and Blender. Such new support for end-user programming creates many opportunities for researchers. We are beginning a study to gain a deeper understanding of how and why media professionals, like graphic designers, learn to script. We are especially interested in what they know about Computer Science, how they learned it, and how we might support newcomers in learning Computer Science content informally.