The Armand V. and Donald S.
Feigenbaum Forum


Armand V. Feigenbaum, Roger H. Hull and Donald S. Feigenbaum


Converging Technologies at Union
The Ninth Annual Feigenbaum Forum
October 21, 2004
3:00 pm, Feigenbaum Hall
Union College, Schenectady, NY


Curricular Changes in Computer Science
Valerie B. Barr
Professor and Chair Department of Computer Science
Union College

Given the world in which we live today, and the world we are rapidly approaching, one would expect undergraduate computer science enrollments to be booming.  After all, we are living in an ever more technological world, a world in which we encounter more computing power by the time we've woken up in the morning, had breakfast, and driven to work than existed in the Eniac when it was fully assembled in the Fall of 1945.  

So why is it that computer science enrollments have fallen by about 40% nationwide in the last few years?  Why is it that, nationwide, only 5.8% of all bachelors degrees awarded to men and 1.6% of all bachelors degrees awarded to women are computer science degrees?

There are a number of factors motivating these trends.   Certainly computer science is suffering from the incorrect perception that, in the current economic climate, there are no jobs.  And that perception is incredibly short sighted anyway, since education is not for the marketplace of today, it is for the world 4 and 8 and 20 years from now.

Though I'm not a business person, I have tried to think of this situation in business terms.  We have a quality product.  We offer education, in a liberal arts context, in a field that can equip people to be players in the technological world of the future.  But we don't have a lot of takers, we don't have people breaking down the doors to get our product.  Why is this and what can  we do to change it?  Do we need to change our product?  Do we need to change how we present our product?  Do we need to review the assumptions we have made about our customer base?  And what shifts are happening in the computer science discipline itself upon which we should capitalize?  Instead of assuming that everyone will automatically see all the wonderful utility of computer science and all the connections it has to other disciplines, perhaps we need to make the utility and the connections more obvious in the ways that we teach computer science and structure our curriculum.

What I'd like to do this afternoon is discuss some of the shifts we see in computer science, and outline the changes we plan to make in computer science at Union, so that we'll be able to engage more students and make more obvious the richness of connections to other disciplines.  Of course, we believe that these are changes that should happen elsewhere as well, and we plan to track the impact of our changes in terms of numbers of students enrolled in computer science, and share what we learn with the larger computer science education community. 

Shifts in computer science

The first shift in computer science has to do with where computationally interesting problems arise.  The days are behind us when the majority of interesting problems came from within our own field.  In the early decades of computing a majority of computer science work focused on developing the theories, the tools, and the processes that would allow us, as computer scientists, to use computers, to use them efficiently and effectively.   That work led to the development of techniques and tools that today enable people in many different disciplines to solve many different kinds of problems on their own, without our help.

There are still plenty of interesting challenging unsolved problems in computer science, but now we can also reach beyond our own field and begin to identify the many many interesting computational questions that arise in other disciplines.

In addition, we are now seeing this push toward interdisciplinarity in the corporate and research sector, which provides external justification for the steps we are taking.  Job ads can be quite illuminating in this regard.  The Palo Alto Research Center is currently hiring for their Computer Science Laboratory.  They are trying to fill positions in a wide range of areas, some we might expect and some we might not expect:   ubiquitous computing, ethnography, distributed computing, social computing, software systems, security and privacy, and applications of wireless and sensor networks.  IBM is hiring economists, management experts, anthropologists, and biologists.  Academic institutions are hiring for positions like “Computer Science in Transportation”.  Increasingly corporations are looking for employees who have technical backgrounds but who can also work on problems from business, science, and social science, and work productively with people who are trained in those fields. 

Another shift for computer science is that global issues and concerns are now motivating a number of interesting and challenging problems.  The developing world demands affordable technology solutions to problems that are greatly exacerbated by scarce resources.  As Karen Banks, of the Association for Progressive Communications, put it in a recent conference presentation “Technology access is equally important as clean water.  It's not an either/or”.  So problems that might be easily solved in the developed world require new insights and approaches if we are to solve them elsewhere.

The changes we want to make to computer science at Union fall into three categories:  the computer science major, the computer science minor, and courses for students who might take just one or two courses with us.  Clearly students graduating with a computer science undergraduate degree must have a much more interdisciplinary perspective than did students in the past.  And many many more students must be exposed to computer science, regardless of their major field of study. 

The Major

For the computer science major, we have to be able to recruit from within the entering class, rather than count on students coming into college as computer science majors.  To this end, we will be developing an alternate pathway into the major that does not presume a student has already done programming in high school.  We also have to present programming as an important tool for computer scientists, but not let it stand in place of a proper introduction to the field.    Lastly, we will work with a number of other departments to construct minors for our students that will introduce them to the areas of other disciplines that pose computationally interesting problems.  We will  strongly encourage our majors to minor in other fields, and to develop projects, alone or in collaboration with other students, that will give them the opportunity to engage in interdisciplinary work before they graduate.  This will allow our students to demonstrate that they can think creatively, that they can tackle problems that are outside the “usual” range of computer science problems, and that they can work successfully with people from outside their discipline. 

The Minor

For the computer science minor, we are breaking with the tradition of a “one size fits all” minor.  We are in the early stages of developing a number of different computer science  minors targeted toward students who major in other fields.  For example, we will be working with faculty members from Art History, Visual Arts, Anthropology, Classics, English, and Modern Languages to develop a minor that will address topics in natural language processing, image processing, information retrieval, digital libraries, and 3-D rendering of images. 

For both our majors and minors, we want to expose students to problems, the solutions of which could advance multiple disciplines.  For example, what are the database issues that must be resolved so that ethnographic data can be stored in a useful, retrievable way, data which may include text, images, recordings, and video?   What are the methods used by anthropologists to model symbolic data, and can computer scientists help them develop a better way to do that with current programming languages, tools, and techniques?  How can computer based linguistic tools be used to record and preserve languages that have no written component?  Other areas that we are considering for the development of new minors are cognitive science, with the  psychology and philosophy departments; scientific computing, with the  physics and chemistry departments; and computational biology, with the biology department.  And this is just the beginning of our list. 

For the general student

For the student who takes just one or two courses in computer science, we plan to expand our offerings.  Our new courses will include a course on Human Computer Interaction, and an introduction to Artificial Intelligence for non-majors.  We also hope to develop some first year preceptorial courses, perhaps looking at issues of technology, privacy, and security.

The thrust of all the changes we are planning is that the future of our discipline and the success of our students depends on looking at computer science and technology in relationship to other disciplines, and creating programs that will increasingly engage students in the interesting intersections that arise.

Thank you.

Valerie B. Barr
Chair, Department of Computer Science
Union College

Return to the 2004 Feigenbaum Forum Program page
Posted by J. D. Klein.  Last modified 12/29/2005.