My team and I have spent the last ten years developing an alternative approach to teaching computing and programming in first-year courses. Unlike conventional approaches, ours focuses on program design in a systematic manner. The syntax of the underlying programming language (both Java and Scheme) is only discussed as needed.
Field tests with over 200 high schools and almost a dozen colleges have shown time and again that the approach produces students with a better understanding of computing and object-oriented programming than conventional approaches. In several controlled studies, we could also show that students find our curriculum more appealing than the AP curriculum.
In my talk, I will provide an overview of the project, especially its intellectual premises and principles, but I will also present some of the software that we have developed in support of the first-year courses. I will then briefly review our outreach effort and our experiences with field tests. My goal is to encourage all of you to think about the first year in a different way. The old ones have failed, and if we want our beautiful discipline to survive, we must find a good way of teaching it.
Felleisen's research career consists of two distinct 10-year periods. For the first ten years, he focused on the semantics of programming languages and its applications. His work on operational semantics has become one of the standard working methods in programming languages. For the second ten years, Felleisen and his research group (PLT) developed a novel method for teaching introductory programming, including a new approach to program design and a programming environment for novice programmers (DrScheme). This environment has become a popular alternative to the conventional set of teaching tools and is now used at a couple of hundred colleges and high schools around the world. For Felleisen and his team, the construction of a large, realistic software application has posed many interesting and challenging research problems in programming languages, component programming, software contracts, and software engineering.
Over the past 20 years, Felleisen has published several dozen research papers in scientific journals, conferences, and magazines. In addition, he has co-authored five books, including How to Design Programs and The Little LISPer (now called The Little Schemer), which, at the age of 30, is one of the oldest continuously published books in the field.
Colloquia Series page.