

What are the basic principles of computer science? - musiic703


======
stevenameyer
Computer science ultimately boils down to the study of how to efficiently
compute a solution to a given problem.

From here the field has a bunch of different areas that investigate aspects of
this including things such as how difficult a problem is to solve, what kind
of hardware is required to be able to compute a solution, the efficiency of an
algorithm to solve the problem, data structures which make solving the problem
more efficient, etc.

But ultimately the field is the study of efficiently in computing a solution
to problems.

~~~
siddboots
I disagree with this. Studying computational efficiency is only one part of
computer science.

What about the study of code generation and parsers? What about state
machines? Or formalisms like relational algebra, algebraic type theory,
distributed protocols, or lambda calculus? None of these things are "about"
efficiency.

------
MichaelMoser123
I (mis)understand that the question is about unifying principles of computer
science

by studying the subject one is supposed to learn how to think about layered
computer systems; However upon closer study each layer turns out to be of very
different nature; what has the network in common with the sql database?

Well, there here are several basic fields such as algorithms / data structures
/ some understanding of complexity, without them one can't really understand
much of anything. So these are the bricks and mortar used in the field.

------
clockwork_189
This is too abstract of a question. Universities/colleges/schools have courses
dedicated to the topic. Assuming that is what you are asking, check this
course:
[https://www.coursera.org/course/cs101](https://www.coursera.org/course/cs101)

------
attatae
Wikipedia. Google.

------
skadamat
Principles _

------
dqdoanh
recursion & abstraction

------
AsymetricCom
logic, math and linguistics.

