ITiCSE '99 Workgroup

Cracow, Poland


This page is a place holder for the results of a workgroup to be held at ITiCSE '99 in Cracow in July. The topic of the group is:

Resources for the Next Generation CS 1 Course

The workgroup leaders are Joseph Bergin of Pace University, and Viera Proulx of Northeastern University

Members of the working group wll create, collect, evaluate, and attempt to improve course modules that might be used in a newly conceptualized CS1 course.

Call for Participation for this group: Group 2

Resources for the next generation Computer Science I course Joseph Bergin, Pace University, USA ( Viera K. Proulx, Northeastern University, USA ( This working group will collect, evaluate, and foster the development of resources that might be used in a new first course in computer science using Java. Such a course will integrate object-oriented programming and design, program design patterns, concurrency, and event driven programming. It is intended to provide a focus for rethinking the first course in computer science, by providing resources and techniques that might be used in such a course. The focus of the workgroup will be on tools and techniques, including demonstrations, projects, syllabi, and pedagogical patterns. Participants before, during, and after the working group will participate in the development of a web site devoted to sharing such tools and techniques among educators. Working group participants are sought who have some background in at least one or two areas relevant to such courses. Prior to the conference, participants will be asked to contribute one course module that might be used in such a course. A module will consist of a preliminary document to be examined by students, an in-class exercise, an outline of a lecture on the topic (html document) and an open lab exercise to be completed by students. The preliminary document can be a design or a program, together with some explanation. It should require study prior to the introduction of the topic in class. Group study would be preferable to individual study. The in-class exercise will consist, perhaps, of a team interaction creating a design of something similar to the preliminary document. The open lab is intended to provide depth in the topic through student design and programming. Team projects are especially encouraged. The design of these modules broadly follow the pedagogical patterns expressed in, and Especially important pedagogical patterns here are Lay of the Land, Student Design Sprint, and Tool Box.


For our purposes here, a course module is a set of resources for teaching a single small topic within a course. It is intended for a lecture or small set of lectures for work covering a week or less. This isn't a strict definition, and will be relaxed as needed, but is normally not intended to imply a term-long set of lectures.

This site will also soon be extended to include other resources as well. Contributions and comments are welcome.

Working Group Report

Sample Course Modules
(some of these are under construction)

Simple CPU
Joseph Bergin

Joseph Bergin

CPU Simulator
Joseph Bergin

Bank Loans
Stephen J.

Logic Gates and Circuits(Java)
Joseph Bergin

Logic Gates and Circuits (C++)
Owen Astrachan

Sorting, Interfaces, and Polymorphism
Charles F. Kelemen

Rethinking CS101 Project
Concurrency and Event Programming
Lynn Andrea Stein

Model View Controller Pattern
Amruth Kumar

Simon: An Introduction to Event-Driven Programming
David Mutchler

Poster Session

Hard at work.