A concepts-first introduction to computer science

We present a unique "concepts-first" curriculum that exposes students without programming experience to the intellectual depth and breadth of computer science through hands-on experience with software development. The curriculum is supported by JPie, a tightly integrated programming environment that enables live construction of Java applications through direct manipulation of graphical representations of programming abstractions. The curriculum, projects, and classroom experience are described.