Search the site

Site Map

Sections
Front Page

Today's News

Information Technology

Distance Education

Publishing

Money

Government & Politics

Community Colleges

Campus Life

International

People & Events

Opinion & Arts

Jobs

Features
Colloquy

Magazines & Journals

New Grant Competitions

Internet Resources

Facts & Figures

Issues in Depth

Online Market

Site Sampler

The Chronicle in Print
This Week's Issue

Back Issues

Related Documents

Services
About The Chronicle

How to Register

How to Subscribe

Subscriber Services

Change Your User Name
Change Your Password

Forgot Your Password?

How to Advertise

Corrections

Privacy Policy

Feedback

Help


The Chronicle of Higher Education
Wednesday, March 22, 2000

LOGGING IN WITH . . .
Lawrence Snyder

Computer Scientist Says All Students Should Learn to Think 'Algorithmically'

By FLORENCE OLSEN

"Every day I think, Well, does my mom need to know this stuff?" In this case, the "stuff" is information technology, and, on many days, Lawrence Snyder's answer to that question is yes.

A professor of computer science at the University of Washington, Mr. Snyder was chairman of the committee that produced "Being Fluent With Information Technology," a report published in June 1999 by the National Research Council. It says college students need more than computer literacy to succeed in their educational, professional, social, and personal lives. Teaching fluency, it says -- a deeper understanding of information technology -- should be the goal of all colleges as they prepare students for graduation.

Mr. Snyder says he tries to practice what the report preaches. His "CSE 100" is a semester-length course that creates opportunities for students to learn to use information technology as a language they speak fluently.

Q. If fluency in information technology is not computer literacy, what is it?

A. Think of fluency as having three kinds of knowledge -- skills, concepts, and logical reasoning. Skills are knowing how to use e-mail, browse the Web, and so forth. The basic concepts that students need to know for fluency are such things as how does a computer work, what is a network, how do we represent information digitally, algorithmic thinking, things like that. The intellectual capabilities needed for fluency include logical reasoning, the ability to manage complexity, to troubleshoot and debug information systems.

The report proposed teaching fluency in the context of projects that require students to use those three kinds of knowledge. So let me give you an example: formulating an H.I.V.-tracking system for a hospital or doctor's office. It's a great project. It is a database project, because you need to record clients coming into the clinic, to keep track of the specimens they give, and where the specimens are sent out for testing. A project gives you a chance to learn and practice three or four skills, three or four concepts, and three or four capabilities.

Q. What is algorithmic thinking, and why is that important for English and history majors?

A. For those of us who teach it, this is the 500-pound gorilla. It's the kind of thinking we refer to many times when we talk about problem-solving in mathematics and science. It is thinking in a procedural way to solve a problem by following a step-by-step process. You should begin with this, then do that, and so forth.

Q. Isn't that an updated version of logical thinking?

A. Yes. In fact, the reason it shows up in computer science all the time, though it's not restricted to computer science, is that you have to direct a computer scrupulously -- do this, do this, do this. Everything we do in computer science is algorithmic, because we're trying to get the computer to do our bidding.

Q. I suppose it's because you can make assumptions when you're talking to people, but not when you're talking to a computer.

A. That's right. A human listener might save your bacon when you've left something out. When you're using algorithmic thinking, you're attentive to being specific. So, to get back to the question, what about English majors? If they're going to develop a system that analyzes texts to determine which ones did Chaucer write and which one's are somebody else's, the process for doing that analysis is algorithmic.

Q. In addition to having students learn what it means to think algorithmically, why did the committee conclude that basic programming experience is important for all college graduates?

A. It's hard to understand the concept of algorithmic thinking until you've actually sat down and tried doing it. The actual process of algorithmic thinking and of writing an algorithm is programming. So programming is algorithmic thinking in a tangible form.

Q. Teaching fluency as you propose sounds like an expensive addition to the college curriculum.

A. There is an expense. When I teach it, every student sits in a lab for an hour after each lecture. That lab has to be filled with PC's connected to the Internet, and they have to be maintained by a staff that sees to it that they are always up and running. In addition to a lab, you really need only a lecture room with a video display into which you can plug laptop PC so you are able to "walk through" the software during a lecture.

But I would say that most colleges and universities have a significant amount of computer infrastructure already, probably enough to teach this class -- though maybe not if you required it and every one of your students took it.


Print this article
Easy-to-print version
 e-mail this article
E-mail this article



Headlines

Presidents urge colleges and government to collaborate in educating Americans

Researchers create new material that proves backward physics

Report questions colleges' methods for detecting athletes' heart problems

Freeman J. Dyson to receive Templeton Prize for Progress in Religion

Computer scientist says all students should learn to think 'algorithmically'

Survey produces a list of "benchmarks" for quality distance programs


Copyright © 2000 by The Chronicle of Higher Education