## CSE 131 (Fall 2009) A Generation of Computation

Quick picks: [ Introduction ] [ Course Info ]

### Introduction

 Property DigiComp (Given to me by my grandmother when I was 7 years old) Furby (Given to my daughter by her grandmother when my daughter was 7 years old) Cost (today's dollars) \$60.00 \$35.00 Input 3 Flip/Flops Ears (audio) Eyes (light/dark) Touch (pressure sensors on front, back) Middle ear (Gravity switch for orientation) Output 3 binary digits (0/1) Eyes move Ears move Two spoken langauges (Furbish and English) Brain -- storage 3 bits 128 Megabits Brain -- speed 1 cycle/second (.000001 MIPS) 16 MIPS Reliability Breaks every 10 seconds Breaks every 5 years

The transition from digicomp to Furby shows the movement of interest from programming computers to using them.

If you were given a computer in 1980, you would see how much computers have improved since then.

Property 1980 PC 2000 PC
Cost
(today's dollars)
\$10,000 \$2,000
Input Keyboard, Serial Port
• Keyboard
• Mouse
• Microphone
Output ASCII screen
• Bitmapped screen
• Sound
Brain -- potential storage 1 Mbyte 18446744073709 Mbytes
Brain -- actual storage 64 Kbytes 128 Mbytes
Bran -- speed 0.4 MIPS 400 MIPS
Reliability Breaks every 6 months Breaks every 6 years
Magnetic disk storage 5 Megabytes 6 Gigabytes

Suppose a car experienced the same improvements over the years. A car bought ~2000 would have the following properties.

 Cost \$4,000 Speed 60,000 mph Seating 10,000 people, with room to hold every molecule in the universe Fuel efficiency 20,000 mpg Reliability Breaks every 70 years

So computers are faster, cheaper, and more reliable. What do they do?
• Analyze/visualize stuff
• Predict the weather (the need for a supercomputer)
• Search for oil
• Explain the universe
• Control stuff
• Automated surgery
• Robots to clean up nuclear spills
• Human heart
• Organize stuff
• Legal databases
• GenBank
• Web crawlers
• Compute stuff
• Trig tables
• Drug dosing
• Launch trajectories

The real power of computers became known when they were interconnected.

 In the beginning Each computer unto itself Usenet Computers call each other up occasionally to exchange mail Internet Computers constantly in contact with each other The WWW Documents, pictures, movies, sound available. No real attempt to organize or editorialize. Wikipedia, etc. Organization Electronic commerce Buy, sell, trade on the WWW Entertainment Content delivery on demand

Year Interconnected
computers
1969 1
1971 15
1973 35
1977 111
1983 4,000
1991 617,000
1993 1,776,000
1994 3,212,000

More computers were sold last year than TVs. (HD broadcast may change that in the upcoming years.) Why is this happening? Where is this heading? The computer can become your
• TV
• Telephone
• Mail service
• Shopping mall
• Stock broker
• Agent

The web has become a reliable place to exchange information.

Year Articles
per day
1979 2
1980 10
1988 1800
1993 26,000

The amount of information posted per day in 1993 is equivalent to 20,000 pages of text.

Bottom line:

• The consumer needs a computer. The commodity nature of comptuers is driving the price ever lower.
• The market needs more people to program computers. The need for advanced software technologies is driving salaries ever higher.

### Course Information

This is CSE 131. What does a computer scientist do?
Theory Practice
• What can be computed?
• What is an approach (algorithm) for computing something?
• Is the answer exact or approximate?
• How long does an algorithm take to compute an answer?
• Is there a best algorithm for computing something?
• If not, how do the various algorithms compare?
• How do we know the answers to the above questions are correct? (proofs)
• What is a good model for understanding the behavior of a program or a computer?
• How should an application be organized?
• How should an application be programmed?
• How do we test an application to see if it works?
• How do we design software so that it works well the first time?
• How do we design software so that it can be extended in the future?
• How do we design software so that it is easy to understand?
• What is a good instruction set for a computer?
• How should the computer's hardware be organized?
There are many open problems. Theoreticians find problems of interest and try to solve them. A famous example is the P=NP question. There are many ways to solve a given problem. A practitioner examines these and chooses one that not only works well now, but can be extended in the future.

Why take this course?

What is this course like?
CSE 131 is CSE 131 is not
• A course in computer science
• Meant to be fun
• Meant to be challenging
• For majors and minors in CS
• For anybody interested in CS
• A course with collaboration elements
• A course only about programming
• Meant to be easy
• Meant to be frustrating
• Requiring prior CS knowledge
• Passable without effort
• A course that tolerates cheating

 Rhythm of this course Wednesday: Module introduced and quiz given Thursdays: Studios Mondays: CSE131R Tuesdays: Labs Information about this course Attendance policy for lectures and labs Grading Late policy Collaboration The course calendar provides the details. The web pages provide the details.