DEV Community

Cover image for Definition of Computer Science
Dima
Dima

Posted on

1

Definition of Computer Science

"Computer Science" is a very vague term. But a word with at least some definition removes the aura of mystery. This article is my attempt to define what Computer science is.

I define computer science as a field of knowledge that incorporates:

  • Programming craftsmanship. Code writing and knowing your tools to facilitate the programming activity and deployment of the result.
  • A few sections of mathematics which help to stay rigorous:
  • Proof by induction and by contradiction. It helps to convince yourself and others of the correctness of your thought process;
  • Discrete math: graph theory. It provides multiple beautiful graph-like and tree-like high-utility structures and algorithms on top of them;
  • Number theory. Prime numbers as building blocks specifically. It helps with the understanding of the basics of information security.
  • Algorithms and data structures. Asymptotic analysis of their time and space complexity. It answers why one algorithm is faster or better and why one data structure works better for a given task than the other.
  • Theory of computation. It answers, on a fundamental level, what is computable—for example, a halting problem.
  • Computer architecture. It is helpful to know some basics of the architecture of the computer: Random-Access Memory vs. hard drives, memory registers, CPU cache, etc.

These are the generic parts one will find helpful during their Computer Scientific or Computer Engineering career. I think these are useful for any skilled programmer. However, the discussion about the deepness of each part can last forever.

Speedy emails, satisfied customers

Postmark Image

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more