CSC151 2003F, Class 1: Welcome to CSC151
* What is computer science?
* Exercise: PBJ Algorithm
* Reflection
* A little bit about the course
Challenge: Define Computer Science
The combination of operating system, language/methods, programs, and
hardware that computers use
Contrast with a "textbook definition": The application of Mathematical
and Scientific Concepts to create computer programs that solve real-life
problems.
What the science: The study of particular field.
A logical and objective approach to deducing answers: The scientific method.
* (Optional problem)
* Background research/observation
* Hypothesis
* Design an experiment that can be used to test the hypothesis.
* Run the experiment and analyze the data
* If the data seems to match the hypothesis, we "support" the hypothesis.
* If the data doesn't match, we decrease our confidence in the hypothesis.
Problem: Program doesn't work
Hypothesis: A virus infected my computer
Experiment: ???
Is most of our work "science"?
What is a computer?
* A complex network of electrical components made to crunch numbers
* A machine that takes input and gives output
* A complex machine that takes input and manipulates it to create things
* It must be told how to manipulate "information"
The focus of Computer Science is the instructions that tell how to
manipulate information
More formally, Compuer Science is the study of Algorithms and Data Structures
* An algorithm is like a plan for doing something: A set of instructions
* A data structure is a strategy for organizing information
We study these issues in a variety of ways:
* As scientists
* As mathematicians: Prove our algorithms "correct" in formal systems
* As humanists (or at least social scientists)
* As engineers: Once we have the instructions, we *implement* them (in hardware or in software)
The biggest problem we face: Either computers are
(a) really stupid or
(b) sentient and malicious
--
Goal: Write some instructions for a sentient and malicious and clueless
creature.