The goal of this focus group is to advance the elementary patterns
literature in the form of a textbook suitable for an introductory
computer science course.
a group of seven pattern writers, including university educators and
industry consultants, began work on a new textbook for the first course
in computing. This book uses patterns as a vehicle for teaching
object-oriented programming to students learning to program for the
first time. We produced a rough outline for the book, identified
programs that students could read and extend in order to learn how to
program, developed first drafts of each new program, and outlined the
sections of the book based on these programs. We are now in the process
of writing the chapters.
The Elementary Patterns focus group will workshop our drafts and,
through this process, help us to improve our work -- and even
contribute to the book through new examples and ideas.
For a number of years, software educators and practitioners have been
documenting patterns that all beginning programmers need to know, dubbed
The result has a been a number of papers
addressing different elements of novice programming, including repetition,
selection, recursion, code layout, and basic OO concepts such as
substitution and delegation. Groups have gathered at four ChiliPLoPs
to explore this domain, and most recent PLoPs have seen birds-of-a-feather
sessions on elementary patterns.
Still, patterns have not made a significant difference in how most
students learn to program. We attribute this lack of effect on at
least two causes. One, the materials developed by the elementary
patterns community have often been exploratory, more a proof of
concept than a complete literature. Two, the materials have been
presented as papers at varying levels of sophistication and with
little direct support for instruction. Some papers are written
for professors, while others are aimed at students. In both cases,
the papers lack supporting expository text, complete programming
examples, exercises, and the like.
Our current textbook effort attempts to remedy these weaknesses
in the elementary patterns literature.
We invite participation from two different groups. First, we seek
authors of material suitable for incorporation into the textbook.
We expect that most authors will have been a part of the ChiliPLoP
Hot Topic that began work on the book, or others in the elementary
patterns community interested in joining efforts on the current outline.
We do invite submissions from any pattern authors with an interest
in this project, but we encourage prospective submitters of this
sort to contact the organizer first to see if we can integrate the
work into the larger textbook project prior to PLoP.
Second, we seek participants who are university educators and others
with experience in teaching CS1 and other introductory programming
courses. These participants both have a vested interest in the
quality of CS1 instruction materials and have the ability to offer
pointed evaluation of our work. This group also includes authors
of existing CS1 textbooks, as they bring a unique perspective on
We hope that participants who come primarily as reviewers are diverse
in their views on patterns in education. We seek those sympathetic
to patterns, those neutral on patterns, and those who may be suspicious
of the hype surrounding patterns. Such a diverse audience will give
us more complete and objective evaluation of our work. These participants
have an opportunity to review a draft of a book that we hope will be
much different from the usual CS1 text and to help us set the direction
for the use of patterns in a CS1 course.
This focus group will consist primarily of
workshops of the
writers workshops of submitted material, with authors and
reviewers participating. These workshops will be in the broader spirit of
writers workshops, with discussion perhaps ranging beyond the
specific content of a paper to its role in the larger context of
instruction. All papers will be provided to focus group participants
before the conference, so that we can all read and prepare for the
We will also lead an afternoon session on elementary patterns for
all PLoP attendees. This session will encourage interactions with
conference attendees in other domains, and we will work with the
conference organizers to identify other opportunities for
cross-pollination of ideas and discussions between focus groups.
Potential participants should send e-mail to
Prospective authors may submit papers in PDF, HTML, text, or
PostScript. Any authors who have not been a part of previous
elementary patterns writing projects, in particular the ChiliPLoP
2003 Hot Topic, should contact us prior to submitting a paper,
to see how we can coordinate the paper with the larger projects.
Prospective reviewers should submit a short statement of their
interest in the focus group and their background in computer
We also welcome any questions regarding submission, pre-conference
preparation, focus group activities, or any other topics related
to this focus group.
Eugene Wallingford is an associate professor in the Department of
Computer Science at the University of Northern Iowa. He has been
instrumental in organizing many elementary patterns events, including
the ChiliPLoP 1998 Hot Topic that launched the community and subsequent
workshops at ChiliPLoP and PLoP. He has also organized and presented
tutorials on elementary patterns at the annual SIGCSE conference and
its regional conferences. His writings about elementary patterns
include papers about recursive programming and loops, papers about
the use of patterns in evaluating student work, and talks and short
papers on using patterns to organize instruction. He has also
published patterns in the domain of intelligent systems and has begun
to write patterns in the areas of functional programming and language
Ralph Johnson is coordinator of design activities in the Department of
Computer Science at the University of Illinois. He has been studying
how object-oriented programming changes the way software is developed.
His projects include frameworks for operating systems (Choices), drawing
editors (HotDraw), music synthesis (Kyma), and business transaction
processing (Accounts). He is co-author of the book Design Patterns:
Elements of Reusable Object-Oriented Design, winner of the 1994
Software Productivity Award.