CS Education and Teaching Page for Kim Bruce
Kim Bruce's recent courses.
Kim Bruce's papers on Computer Science education
Introductory CS Curriculum Efforts
With Tom Murtagh and Andrea Danyluk of Williams College, I have been
involved in the
creation of a new introductory course in computer
science (CSCI 134). Our innovative approach uses objectdraw,
a locally developed Java
library, to support an object-first approach using truly object-oriented
graphics, event-driven programming from the beginning, and featuring an
early introduction to concurrency.
The project web
page includes chapters of a text in progress, several papers, and files
containing lecture notes, our library, assignments, and sample programs.
We have developed these materials into a text with the support of a
CCLI grant from NSF. They have been tested at a wide variety of universities,
colleges, and high schools. The text was published by Prentice Hall in 2005.
Involvement in national Computer Science curricula
I've been involved in several different projects involving the design of
national Computer Science Curricula at the college level. These include
- Chairing the SIGPLAN Education Board, a group whose aims are to increase
the quality of undergraduate instruction in programming languages by providing
recommendations on course content and developing materials explaining the
importance of education in the area of programming languages (as opposed to
just learning lots of languages). The committee has a
blog which includes links to
- Chairing the Programming Languages Knowledge Area Focus Group for
Curricula 2001. After many of us complained about the omission of
Programming Languages as an area in the initial plans for Curricula 2001, a
group was eventually formed and I was put in charge (that will teach me to
complain!). Unfortunately, the strawman
version of the curriculum report still gives programming languages
short shrift compared with earlier national curriculum standards. A report
produced by the committee, Concerns about
the Programming Languages Subject Area in the Curriculum 2001 Draft
Report, is available on-line and appeared in the April, 2000, issue of
SIGPLAN Notices. The original committee recommendations on the programming
languages area is included in the same issue and is available via a link
from the on-line version of the report. Those who feel that programming
languages is an important core area of computer science are encouraged to
read the report and to write to the full curriculum committee.
- Creation of liberal arts college curriculum recommendations in "A
model curriculum for a liberal arts degree in Computer Science", by Gibbs
and Tucker, Communications of the ACM, 29(3), 1986, pp. 202-210. The new
updated version appeared in December: "A revised model curriculum for a
liberal arts degree in Computer Science", by Walker and Schneider,
Communications of the ACM, 39(12), 1996, pp. 85-95. Unfortunately it was
delayed in press long enough not to include mention of recent potential
languages for CS1 and 2 like Java and Ada 95. The most recent
version of the LACS curriculum, A 2007 Model Curriculum
for a Liberal Arts Degree
in Computer Science is now available.
- ACM / IEEE Computer Science Curricula '91 recommendations. A summary
can be found in "Computing Curricula 1991", Communications of the ACM,
34(6), 1991, pp. 68-84. A paper that I wrote on the report, Creating a new
model curriculum: A rationale for Computing Curricula '91 , which
appeared in Education and Computing, 7(1991), pp. 23-42, is
available on line.
General Computer Science Education
Computer Science Handbook, Allen Tucker, editor-in-chief, 1997
I served on the advisory board and as section advisor for Programming
Languages. This is intended to be a great source of material for
professionals, but should also be an extremely useful source of material
for upper-division students and courses in CS and E.
- I was a participant in the education group
of the ACM Workshop on
Strategic Directions in Computer Science. My position paper is available on-line
for comment. A compilation of the reports was published in the Computing
I was one of those unhappy about the change of the ETS Advanced Placement
exam in Computer Science to C++. I posted a letter
of protest on comp.edu and sent a copy to SIGCSE members. I was also a
co-signer of a letter published the summer of 1995
in the Communications of the ACM protesting both the change to the APCS
exam and the way the change was made.
I wanted to see ETS and its advisory committee to reconsider this change
and consider moving the course to Java. Happily, the ETS has recently decided to
change the language for the AP test to Java.
Advanced Programming Languages Education
I was presented the 2005
ACM SIGCSE Award for Outstanding Contributions to Computer Science
at the SIGCSE Symposium on Computer Science Education in Saint Louis in
- Information on a
computing course on web technologies for teenagers given by Duane Bailey,
Tom Murtagh, and me at Williams in the summer of 1998 is available.
- Here is some graduate school advice from
some Williams graduates.
Last updated 7/13/2005.