Computer Science Education at Duke

Projects, Curricular Support, Courses, Software

Our mission in the Computer Science Education group at Duke is to
develop state-of-the-art educational practices and to ensure that these
practices and those of the Department's core research groups build on
each other.

The goal of our group to design and develop software tools and both traditional (paper) and web-based materials for the support of teaching and learning in computer science courses. Computer science education has two foci: developing effective practices for teaching the subdisciplines that comprise the field and developing materials that support learning in a wide variety of computer science courses. Principle concerns include incorporating new research and new technology into the subject and delivery of current courses, and the development of new courses to reflect rapid changes in research and technology. The Computer Science Education group has expertise and is highly regarded in three principle areas: research and development of materials for the first two years of courses in computer science; development of software tools supporting visualization and animation of topics from theoretical computer science; incorporation of current, core research into undergraduate computer science courses.

Current project activities in these areas include the development of material to support an apprentice style of learning of object-oriented programming and design that spans beginning to advanced courses in computer science. We are also implementing several tools that visually illustrate topics from the theory of computation, including finite automata and grammars, with animations and interactive programs. We are facilitating the development of tools to integrate and visualize performance metrics from several areas, including cache performance, in several undergraduate courses.


Projects, Curricular Support, Courses, Software

NSF supported CS Education projects

* Computer Science Principles

* Adventures in Alice Programming

* Peer Led Team Learning in CS

* Science of Networks

* Problem Based Learning

* Visual and interactive tools for exploring formal languages and theoretical computer science and main tool JFLAP

* Apprentice Learning in CS2

* Using and Developing Patterns

* CURIOUS and DROOL Incorporating departmental research into undergraduate courses.

Courses at Duke as Resources

In a SIGCSE 1998 paper, Profs. Susan Rodger and Owen Astrachan discuss the animation and visualization in the CS1. Labs, assignments and materials from these courses show how we use the materials described in the paper.


Faculty in the CSED Group

The faculty in the cs education group:
  • Owen Astrachan
  • Professor of the Practice of Computer Science
  • Robert Duvall
  • Lecturer in Computer Science
  • Jeff Forbes
  • Assistant Professor of the Practice of Computer Science
  • Susan Rodger
  • Professor of the Practice of Computer Science

  • Dee Ramm
  • Associate Professor of the Practice of Computer Science Emeritus