Call For Participation

Elementary Patterns
and their Role in Instruction

A ChiliPLoP 2003 Hot Topic

What Are We About?

There are many ways to look at patterns. An especially useful way to think of patterns is as a tool for teaching. We don't use patterns blindly; we learn them. Patterns are all about learning new techniques, understanding when and how to use them.

For a number of years, software educators and practitioners have been documenting patterns that all beginning programmers need to know, dubbed elementary patterns. The result has a been a number of papers addressing different elements of novice programming, including repetition [1], selection [2], recursion [5], code layout [3], and basic OO concepts such as substitution and delegation [4]. These papers cover several areas, but they are not yet complete on their own, and they do not cover all of the areas that an introductory computer science text might cover. Among the missing areas are the use of collections such as arrays or vectors, parameters and return types, and class design.

This workshop will fill in the gaps in the current elementary patterns literature. Participants will write and workshop patterns that either complete an existing set of patterns or address a currently uncovered area of introductory computing instruction.

Our goal is to produce a much more complete text that a CS1 instructor could use in teaching an introductory CS course. If you would like to help us produce such a text, then you will want to consider attending the elementary patterns Hot Topic workshop at ChiliPLoP 2003. Read on for answers to these questions about the Hot Topic workshop:

What Will We Do?

Our goal is to produce a draft of a textbook that a CS1 instructor can use to teach novices to write object-oriented programs in Java. Some of us will work to complete small pattern languages currently in the elementary patterns literature, and others will draft pattern languages to cover gaps in the literature.

Prior to the beginning of the workshop, participants will prepare by:

In this way, we can begin the workshop with a rough outline for a book in hand as well as a list of what we have and what we need.

How Will We Do It?

We will work in small groups to write, revise, and refactor patterns. We will have access to at least one machine with a wiki on it, to support collaborative work and integration. Occasionally throughout the workshop, we will get back together as a group to workshop what we have written.

The result will be a draft of a book, still rough in many ways but more complete and coherent than the current literature. Participants in the workshop can take this draft to use in their courses, or arrange for others to do so, so that we can get feedback and improve the draft in the year that follows ChiliPLoP.

Who Should Participate?

We hope to attract 6-10 highly motivated and experienced teachers, pattern writers, and software developers to work on this hot topic at ChiliPLoP. To this end, we invite requests to participate from:

How Do I Apply?

Submit a request to participate by e-mail to Eugene Wallingford or Ralph Johnson by Friday, January 31, 2002. We may be able to accept requests after this date, on a space-available basis, but we would like to begin preparing for the workshop as soon as possible.

Your request should indicate your desire to participate, what you hope to achieve by participating, and your experience with patterns and instruction. For example, you might submit:

If you are invited to participate, you will be expected to:

What Are The Important Dates?

The dates to watch for are:

January 31, 2002

Submit your request to participate by this date. We will notify you if you have been selected to participate within a couple of days of your submission.

March 11-14, 2002

We gather in Carefree and accomplish our goals!

How Do I Find Out More?

For more on the ideas behind this workshop, see the Elementary Patterns home page, and feel free to contact the workshop organizers:

ZTT>!N[&nbs<$njsp; P&K1    

References r!8)>

    Hvef Astrachan Eugene Wallingford, Selection|t rnՕ '! hroc. Fourthranaurlamac of Programs Conference, JL~ Irsee, Germany, 1999. a4P. <--uJbb "> '" Joe Bergl .P: Code Layout, #}|`'"ȷrgo, OAM'3HN$ (>!, Proc. Fourth Patt Languages of Programs Cmldnc6BHAPark ! ( Illiny, 1997.

  1. Eugene WallingfoC Using a P rn Language to Evaluate ayo&N$3knER> FEDZESS> Eugene Wallingford

Eugene Wallingford            Ralph Johnson
Department of Computer Science            Department of Computer Science
University of Northern Iowa            University of Illinois johnso{.eiu#%Ѱ{ͣTD> '" (