My team and I have developed an alternative approach to the first-year courses on programming and computing. Unlike conventional approaches, ours focuses on designing programs in a systematic manner. The syntax of the chosen programming languages (both Java and Scheme) is only discussed as needed to support design principles. Field tests with over 500 high schools and a dozen colleges have shown that the approach produces better students than conventional approaches that use a single language. 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. My goal is to encourage you to think about the first year in a different way. The old ones are of questionable value. If we want our beautiful discipline to survive, we must find a good way of teaching it.