Computer Science Principles


Computer Science Principles: The Story

Computer Science Principles is designed to teach basic computer science and computational thinking to a general audience, not computer science majors. But, why would someone want to know this information? Speaking as the instructor, this is my answer.

I think, therefore, I am.
-- René Descartes

CS Principles and Why To Take It

You have used computers your whole life. Mostly you don’t even think about it. Your phone has several computers in it, your iPod, your Kindle, your TV, your car has several in it unless it is an antique, and on and on. Most devices with an on/off switch contain computers these days. And they continue to be more widely used – planes fly without pilots, vehicles can drive on highways autonomously, social media like Facebook and Twitter add features every month that allow new forms of interaction.

That list probably contains no surprises to you – it describes how the world is. You’re doing just fine with today’s technology. Luckily, this class isn’t about how the world is. The world will change. This class is about what you need to know for the world that hasn’t yet arrived, and which you will create.

I want to emphasize this point – the world changes and this class is about staying with it and contributing to it.

Who is this guy? Jack Dorsey photo

He’s Jack Dorsey and he changed your life. Everyone in this class can remember what life was like before Twitter. In 2006, Jack Dorsey invented Twitter. In 2005, maybe the year you entered high school, no one had thought of the idea of Twitter. But Dorsey saw an interesting way to use computers, and he created it. Of course, he could program and build it himself, which is good, but it’s not the goal of this class. We don’t produce programmers here. It's possible to have an idea like Twitter without building it. But you must understand computatonal principles and think computationally to do it.

The goal of this class is for you to understand enough about the principles of computing and computational thinking that you could

  1. come up with a new idea of how to use computation to solve your own problem, or
  2. understand someone else's new idea on how to use computation, and see its value, or
  3. be the first user of a new computational idea, when most of the features don’t work
If the world is changing because we are using more computers and using computation in new and exciting ways, you need to be thinking computationally. You need to use it and contribute to it. That’s what we teach in this class.

Now, you probably have another major in mind, not computer science. Terrific! (This class isn’t for computer scientists.) But, whatever your major and career plans are, it will certainly use computers much more than it does today. Is your major

  • Science? Computation has joined theory and experiment, as the third pillar of science, and sciences progress when a new computing idea can reveal more secrets of nature.
  • Engineering? Engineering is all computers all the time.
  • Medicine? Research is all computers; clinical practice is, too, except for changing the sheets.
  • Humanities? Research in archeology, history, linguistics and many other humanistic fields use computation imaginatively so they can better understand their subject.
  • Business? Business gets most of its productivity gains through using computation better.

So, when I say, you need to understand computing principles and computational thinking deeply enough to come up with new ways to apply computers, I don’t actually mean something like Twitter. I mean use computation to solve a problem in your field that interests you.

You will know that this class was right for you when, for example, having majored in archeology, you figure out how to use computation cleverly to track the spread of STDs by Roman tourists around the Mediterranean in the second century AD.
It's your problem, and your solution. And probably a solution others can use to trace the movement of other diseases.

So, this class is computer science for everyone who will be living and working in the 21st century. That would be you.

-- Larry Snyder, Professor

     Contact: snyder at cs dot washington dot edu