What is Computer Science?
What is computer science?
- Better name: computing science
- Study of computation and problem-solving (by humans or by
computers)
- the organization and representation of ideas
- the development and
application of practical problem-solving techniques
- the modeling of complex systems
- the use of formal languages to
express ideas succinctly and unambiguously.
- Big questions:
- What are good approaches (algorithms)?
- How can it be done "reproducably" (repeatedly, getting
the same results)?
- How can it be done more quickly, more accurately,
more easily?
- Are there limits to what can be computed?
⇓
What is the role of computers?
- Computers are fast, reliable, and untiring.
- Computers have no intelligence, no creativity. They just
blindly follow instructions, step-by-step, top-to-bottom.
- The instructions must be detailed, precise, unambiguous.
⇓
What is programming?
- Performing computation by, or with the help of, a computer
- The art of designing a set of precise instructions
that a computer read, interpret, and act on
(programs, apps, software).
- Implementing them in some programming language.
- Humans must be able to read programs too!
⇓
What is the role of programming
in computer science?
- Many people think that computer science is synonomous with
programming. It's not.
- Programming is, however, a fundamental, widely-used tool within
computer science.
⇓
What is programming similar to?
Programming is like …
- Writing
- time-consuming
- takes practice
- requires planning, structure
- has idioms
- there are different languages, different "genres"
- Solving Puzzles
- intellectually challenging
- sometimes get stumped
often the "aha" clears away many barriers
- knowing the logic and structure of the problem helps
- frequent practice helps