Colleges and universities often divide faculty activities into three categories: teaching, scholarship, and service. My work, however, includes numerous projects that integrate these three areas. For example, this spring (2018), I will complete my 41st external review of a computer science and/or mathematics program on another campus. Elements of each visit fit squarely under teaching, under scholarship, and/or under service; and reports and recommendations require bringing all perspectives together into a cohesive and constructive result.
My integrative work not withstanding, this document focuses on scholarship, although the nature of my projects requires that elements of teaching and service also are mentioned. A companion Statement on Teaching describes more practical elements of my teaching philosophy, practice, and publication. Regarding service, the Special Interest Group on Computer Science Education (SIGCSE) of the Association for Computing Machinery (ACM) presented me with the 2013 SIGCSE Award for Lifetime Service to Computer Science Education, mentioning several of my on-going activities. Previously, in 2009, ACM identified me as a Distinguished Educator.
In keeping with my wide-ranging involvement with computing education, I take a broad view of scholarship and have diverse professional interests. A helpful framework comes from Boyer's categorization of scholarship into the areas of the scholarship of integration, the scholarship of teaching, the scholarship of discovery, and the scholarship of application . Although others, such as the American Association for Higher Education, have reorganized and refined some of these categories , I find Boyer's original categorization provides a useful context. Some of my activities over the years fit in each of these categories.
I believe one of my greatest strengths involves organizing disparate material into a logical framework, and then presenting that material in a coherent and clear way. Such synthesis is a vital part of both my writing and teaching. For example, in each of my nine textbooks, I have tried to provide a fresh and natural approach to material covered within an undergraduate course. Thus, An Introduction to Computing and Computer Science with Pascal was one of the first Pascal-based textbooks to cover a full, year-long, CS1-CS2 sequence — including all topics identified in the original Course Description for Advanced Placement (AP) Computer Science (CS). Abstract Data Types, written with Nell Dale, broke new ground by taking a top-down approach to ADTs, combining elements of specification, implementation, and application, using axiomatic specification and correctness as an integrative theme, and introducing both sequential and parallel algorithms. The Limits of Computing was one of the only books for the general public which considers in some depth both theoretical and practical constraints on what computers can do. The Tao of Computing and particularly its Second Edition use a question-and-answer format to provide thoughtful answers to the many practical questions that students have about computing.
On a smaller scale, over the years, I have developed several example-based introductions to languages or constructs for courses. For example, my introductions through annotated examples provide guidance for general programmers to the C language, the C++ language, and concurrency in C. (Under my guidance, a student of mine, Peter Broadwell, developed a similar guide to introduce sockets in C.)
Most recently, I have been working to develop a C-based infrastructure to allow students to control Scribbler 2 robots in introductory computing. Although much Python-based work had been done, Grinnell's environment requires a focus on imperative problem solving and data structures, using C as a supporting language. My first steps involved utilizing a C++-based library from the University of Tennessee at Knoxville within a Linux environment, but that turned out not to port well to Macintosh computers using Mac OS X. My new efforts integrate standard C, elements of Bluetooth communication, OpenGL (for graphics display), and libjpeg (for manipulating jpeg images) — all within a framework appropriate for introductory students. Currently, a refined and integrated system is available for both Linux and Mac OS X, and the infrastructure is being used in classes by Grinnell students.
Over the years, I believe that my ability to listen, organize, integrate, and interact has been useful in various roles outside Grinnell, including work as member of the AP CS A Development Committee (2009-2013), SIGCSE Chair (2001-2007), SIGCSE Secretary/Treasurer (1993-2001), SIGCSE 2000 Program Chair, SIGCSE 2001 Symposium Chair, member of two AP CS advisory committees, member of the MAA Committee on the Profession, and group member for curricular development for ACM/IEEE-CS Curricula 2001 and 2013 and for the MAA CUPM 2015 recommendations. Each of these roles has a clear service component, but each also requires a broad perspective and background on computing education.
Teaching computer science within a small college requires a faculty member to learn and remain current in the many areas which one is called upon to teach. Over the years, I have needed to teach such courses as imperative problem solving (first with Pascal, now C), functional problem solving (with Scheme), object-oriented problem solving (with Java), discrete mathematics, architecture, artificial intelligence, operating systems, programming language concepts, program verification, sequential and parallel algorithms, elements of databases, software development/engineering, and the theory of computation.
Beyond on-going professional development, I devote considerable time and effort to matters of pedagogy and curricular development. For example, since 1992, my approach for CS1 has involved lab-based collaborative learning, and I have documented the success of this approach in several peer-reviewed papers. More generally, I am constantly experimenting with different classroom formats and approaches, trying new combinations of team and small-group work, Web-based materials, oral presentations, and written assignments. This activity forms the basis for many of my 56+ columns on curricula and classroom teaching, first appearing in the SIGCSE Bulletin in 1997 and now in ACM Inroads. Over the past year, I have worked to collect, update, and expand these columns into a book on the teaching of computing. Based on my columns, refined by my extensive experience and informed by computing-education research, is expected to be published by Taylor and Francis in about March 2018. In addition, my work in computing education informs my activities as an Associate Editor for ACM Inroads — a role I have filled since the magazine was established by ACM in 2010.
As part of my strong interest in curricular issues, I am a long-standing member of the Liberal Arts Computer Science Consortium, originally funded by the Sloan Foundation. Over the years, this group has collaborated on a range of published papers, such as "A Revised Model Curriculum for a Liberal Arts Degree in Computer Science" [CACM, December 1996], which G. Michael Schneider and I facilitated, and the "2007 Model Curriculum for a Liberal Arts Degree in Computer Science" [JERIC, 2007]. Other curricular activities include reviewing Computing Curricula 1991 by the ACM/IEEE-CS, serving on groups contributing to the development of Curricula 2001 and 2013 by ACM/IEEE-CS, and chairing the Program Study Group on Computing and Computational Science for the Mathematical Association of America.
In a different area, I have spent considerable effort developing workshops for high school teachers to expand and refine computer science curricula at the secondary level. For example, since 1994, I have received grants from Texas Instruments, the Noyce Foundation, and the Roy J. Carver Charitable Trust for 11 two-day or week-long workshops in Iowa and Texas, attended by over 250 secondary school teachers. For many years, I served as a consultant for the College Board for AP CS, and since 1984 I have led over four dozen one-day workshops for AP CS teachers throughout the upper Midwest. Such workshops focused on a combination of technical subjects and pedagogical approaches. In addition, I have served as a reader or leader for the grading of AP CS exams for 31 years and as a member of the AP CS A Development Committee 2009-2013.
Many of my activities span several categories of scholarship, making it difficult to determine just which projects to list under the scholarship of discovery. This section describes some obvious research activities. My Ph.D. thesis, Equivariant CW Complexes and Cohomology, within the mathematical field of algebraic topology demonstrated one mechanism for extending the machinery of cohomology to a context where groups were acting on topological spaces. This work required the synthesis of many traditional topics from algebraic topology (e.g., topological spaces, simplicial complexes, CW complexes, groups, rings, functors, and homomorphisms) to a more general setting and discovered how to frame various details so they would exhibit specific, desired properties.
Similarly, my study of system administration for distributed database systems (1980-1981) provided a unified framework for considering issues which commonly arise.
During my 1988-1989 sabbatical leave, my collaboration with Nell Dale led to a new categorization of abstract data types from a user's perspective.
In 2000-2002, when I served as Program Chair for SIGCSE 2000, I worked with two students to design and implement a statistical study to examine the natural variability of ratings of papers by referees. As part of the reviewing process for SIGCSE 2000, each of 10 papers was sent to about 100 referees. A statistical analysis provided some overall results concerning ratings variance, as well as the possible influence on scores of such factors as referee gender, subject familiarity, country of residence, role as both referee and author, and involvement in a group of referees. Additional analysis indicated the relative importance of such factors as technical content, writing, originality, and significance in the overall ratings. The students presented several conclusions at a poster at the ACM International Student Poster Contest at SIGCSE 2000, and a published paper followed in June 2002.
Most recently, my on-going experiments with collaborative pedagogies have demonstrated that such approaches allow the coverage of more material in a semester while maintaining or reducing drop-out rates from CS1 to CS2. Also, I have developed new models, involving student-faculty collaboration, for on-going course-development work. Traditionally, faculty develop courses with students as targets. In this new model, course development follows from a true collaboration between faculty and students, in which each team member provides vital perspectives and insights. Four papers, written by students and myself, have appeared on this approach, following a peer-review publishing process.
In addition to applying computer science principles, algorithms, and methodologies to solve a variety of problems, I am quite proud that I have been able to include students in fundamental ways in several of my activities. Three large projects illustrate this work.
The placement of incoming students into mathematics and computer science courses: The placement problem is one faced by virtually every college and university, and my interest has been to use techniques of artificial intelligence to help automate the problem. Thus, in 1994, two students and I developed an effective expert system for this task, leading to a joint publication. That system rivaled the faculty in making appropriate placements, and subsequent refinements to the system perform better than most faculty. A revised and re-written program is now accessible at http://www.cs.grinnell.edu/~walker/cs-math-stat-placement/submissionForm.php for use by prospective students.
Conference Software for the on-line submission and review of papers: When I became Program Chair for SIGCSE 2000, the Symposium Co-chairs asked me to develop a Web-based process for the on-line submission and reviewing of papers. While existing systems provided some capabilities, a new system was needed to handle papers in html and to interface with the SIGCSE database of referees. Working with several collaborators, including students, a system evolved that was to serve the SIGCSE organization and other conferences for over a decade — at one point, supporting 8 national and regional conferences over a single academic year.
Development of a C-based course to introduce imperative problem solving with robots: Since 1997, Grinnell has instituted a 3-course introductory sequence highlighting functional, imperative, and object-oriented problem solving, supported by Scheme, C, and Java, respectively. For many years, the first course has utilized image processing/media scripting, so in 2011 I began development of the second course (imperative problem solving with C) to incorporate the control of Scribbler 2 robots as an application theme. The goal was to rethink the old course without omitting material. Work required development of a C-based infrastructure, organization of material into about 8 modules, creation of examples using the robots, and development of readings, labs, and projects. Collaborating with 3 student teams over the years, the development of the current course draws upon algorithms and data structures from C, lab-based pedagogy that I had developed previously, elements of C and C++ from several sources, several libraries and widely-available packages, and student classroom experiences. With careful planning and technical sophistication, the course allows introductory students to focus upon course goals and objectives, while handling distracting issues behind the scenes within the created infrastructure.
Details of each of these projects are described in several peer-reviewed papers published by myself and several student collaborators.
To summarize, the ACM Digital Library currently lists 146 of my articles and books. This material represents various combinations of teaching, scholarship, and service, covering a wide range of topics — often related to computing education.
Boyer, Ernest L., Scholarship Reconsidered: Priorities of the Professoriate, The Carnegie Foundation for the Advancement of Teaching and Jossey-Bass, Inc. Publishers, 1990.
Eighth AAHE Conference on Faculty Roles and Rewards, February 3-6, 2000, American Association for Higher Education, Call for Proposals and Participation.
Henry M. Walker, Teaching Computing: A Practitioner's Perspective, Taylor and Francis, in production Winter 2018; planned publication March 2018.
This document is available on the World Wide Web as
created 29 February 2000|
revised 23 March 2009
updated 1 February 2016
last revised 22 January 2018
|For more information, please contact Henry M. Walker at firstname.lastname@example.org.|