Skip to main content

Computer Science

What is Computer Science

Computer Science (abbreviated as CS) is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (including the design and implementation of [[hardware]] and [[software]]). Computer science is generally considered an area of academic research and distinct from [[computer programming]].1

Get Started

I loved reading Nand2Tetris and CS:APP book. It explains computing very well from ground up. What else? What CS books should I read?

Here's my personal selections:

If you're self-studying, check out: Teach Yourself Computer Science by Bradfield School of CS.

The CS field is never short of good open university classes and courses. There are many CS curriculum, both informal (opinionated) and formal. One of them is Path to a free self-taught education in Computer Science by OSSU (Open Source Society University). Formal or not, everyone has a different path to their CS education. More education stuffs here.

Beyond that, continue reading papers (or paper summaries) and implement CS ideas. Here's a few good starting points:

  • Get "a paper each week" from The Morning Paper by Adrian Colyer.
  • BaseCS - Exploring the basics of computer science, every Monday, for a year.

Articles are also good source for CS readings.

Many students and learners have written notes about things they learned.

What about videos? I got you covered.

If you are into specific CS topics such as programming language theory or Turing, check other topics. Data structures and algorithms is a larger topic separated from this.

Lastly, keep learning by staying connected to the world-wide CS communities.


This section will cover the following topics:

Lists of Lists