What is Computer Science?
By Bo (back to homepage)


Short Answer

Computer Science is the study of algorithms: step-by-step procedures for solving problems or accomplishing tasks.

We can think of algorithms just as computer programs, but CS is far broader than writing programs! It encompasses the scientific study of algorithms: What are their fundamental capabilities and limitations? It also deals with the algorithmic study of science: What can we learn in, say, Biology, or Microeconomics, or Physics or Mathematics or more, by taking an algorithmic perspective?

Brief list of topics:



Medium Answer

For fun and for the sake of argument, let's divide what we call science into three branches:


By "Maths", I essentially mean deductive reasoning: formal definitions, theorems, and proofs. Engineering, of course, consists of building things to accomplish tasks; and the natural sciences seek to understand, explain, and predict phenomena in the real world. Of course, the branches all overlap and interact to different extents.

When we add the algorithmic perspective, we get computer science:


Each aspect of science plays two roles in computer science: Looking in and looking out. Looking inwards at the nature of computation itself, we can: seek to prove things about algorithms; design or construct algorithms; and examine algorithmic phenomena in the real world. Looking outwards at other fields through the lens of computation, we can seek an algorithmic perspective on questions already studied in other fields.

Some examples:



Long Answer

Do not ask: How high is the mountain? Climb the mountain. Then you will know.