CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University...
-
Upload
paulina-terry -
Category
Documents
-
view
215 -
download
0
description
Transcript of CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University...
![Page 1: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/1.jpg)
CS154A History of Computation
Thaddeus AidDepartment of Computer Science
San Jose State UniversitySpring 2016
Creative Commons Attribution-ShareAlike 4.0 International License 1
![Page 2: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/2.jpg)
Why Study Computer Science?
•The point is not to understand the world, but to transform it. ~ Karl Marx
Creative Commons Attribution-ShareAlike 4.0 International License 2
![Page 3: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/3.jpg)
Before History….• Before numbers…..
Creative Commons Attribution-ShareAlike 4.0 International License 3
Source Wikipedia Commons
![Page 4: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/4.jpg)
Then comes…• The tally sticks led to numbers, and numbers lead to mathematics• The formalization of numbers allowed for the discovery of arithmetic• The Hindu-Arabic numbering system allowed for the further development of
math• There is quite a lot that you can figure out with some numbers, some
operators, a piece of paper, and a stick of charcoal
• The purpose of computing is insight, not numbers. ~ Richard Hamming
Creative Commons Attribution-ShareAlike 4.0 International License 4
![Page 5: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/5.jpg)
• [Computer science] is not really about computers -- and it's not about computers in the same sense that physics is not really about particle accelerators, and biology is not about microscopes and Petri dishes...and geometry isn't really about using surveying instruments. ~ Hal Abelson
• So what is Computer Science about?• Understanding problems in order to solve them.
• Is it a science? A math? An engineering discipline?• It is all of these, every computer built and every program engineered is an empirical
experiment into the realm of nature and mathematics. Does this experiment work?
Creative Commons Attribution-ShareAlike 4.0 International License 5
![Page 6: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/6.jpg)
2400 BCE – The Babylonian Abacus
Creative Commons Attribution-ShareAlike 4.0 International License 6
![Page 7: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/7.jpg)
100 CE - The Antikythera mechanism
Creative Commons Attribution-ShareAlike 4.0 International License 7
![Page 8: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/8.jpg)
200 CE – The Chinese Abacus
Creative Commons Attribution-ShareAlike 4.0 International License 8
![Page 9: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/9.jpg)
1000 CE – The Astrolabe
Creative Commons Attribution-ShareAlike 4.0 International License 9
![Page 10: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/10.jpg)
1100 CE - The Torquetum
Creative Commons Attribution-ShareAlike 4.0 International License 10
![Page 11: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/11.jpg)
Islamic Robots?• During this time, Islamic scholars also built analogue constructs that
could do a number of things like play flute.• Islamic Scholars also built the “Castle Clock” which could be
programmed to strike a gong/bell/noise maker in order to call Muslims to prayer at the right times of day.
Creative Commons Attribution-ShareAlike 4.0 International License 11
![Page 12: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/12.jpg)
1822 CE – Charles Babbage's Difference Engine
Creative Commons Attribution-ShareAlike 4.0 International License 12
![Page 13: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/13.jpg)
Babbage and Lovelace• Charles Babbage came up with the idea of a machine that could be
used to solve complex equations.• Ada Lovelace came up with the idea of using repeatable programs to
change the function of the machine. She is the mother of programming.
Creative Commons Attribution-ShareAlike 4.0 International License 13
![Page 14: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/14.jpg)
1837 CE – Babbage’s Analytical Engine
Creative Commons Attribution-ShareAlike 4.0 International License 14
![Page 15: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/15.jpg)
23 June 1912 – 7 June 1954 Alan Turing
Creative Commons Attribution-ShareAlike 4.0 International License 15
![Page 16: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/16.jpg)
Turing• Mathematician• Logician• Cryptanalyst• Computer Scientist• Theoretical Biologist• Formalized the Algorithm• Formalized Computability• Artificial Intelligence
Creative Commons Attribution-ShareAlike 4.0 International License 16
![Page 17: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/17.jpg)
The Enigma and Bletchley Park
Creative Commons Attribution-ShareAlike 4.0 International License 17
![Page 18: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/18.jpg)
1947 CE – The Transistor
Creative Commons Attribution-ShareAlike 4.0 International License 18
![Page 19: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/19.jpg)
1951 CE - UNIVAC
Creative Commons Attribution-ShareAlike 4.0 International License 19
![Page 20: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/20.jpg)
1955 CE – The Pilot ACE
Creative Commons Attribution-ShareAlike 4.0 International License 20
![Page 21: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/21.jpg)
1958 CE – The Integrated Circuit
Creative Commons Attribution-ShareAlike 4.0 International License 21
![Page 22: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/22.jpg)
Dec 9, 1906 – Jan 1, 1992 – Admiral “Amazing” Grace Hopper
Creative Commons Attribution-ShareAlike 4.0 International License 22
![Page 23: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/23.jpg)
Grace Hopper nee Murray• Early programmer• Invented the compiler• Lead the effort to build FORTRAN and COBOL• Coined the term “debugging”
Creative Commons Attribution-ShareAlike 4.0 International License 23
![Page 24: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/24.jpg)
1957 CE - Fortran• Formula Translation• First Compiled Language• Considered one of the fastest languages in the world• Imperetive
Creative Commons Attribution-ShareAlike 4.0 International License 24
![Page 25: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/25.jpg)
1958 - LISP• List Processor• Favored language for AI
Creative Commons Attribution-ShareAlike 4.0 International License 25
![Page 26: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/26.jpg)
1959 CE - COBOL• Targeted business needs• Procedural
Creative Commons Attribution-ShareAlike 4.0 International License 26
![Page 27: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/27.jpg)
1962 - Simula• The introduction of Object Oriented Programming
Creative Commons Attribution-ShareAlike 4.0 International License 27
![Page 28: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/28.jpg)
1964 - Speakeasy• Object Oriented Numerical package• Lead to modern languages like Matlab and Mathmatica
Creative Commons Attribution-ShareAlike 4.0 International License 28
![Page 29: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/29.jpg)
1969 - C• Dennis Ritchie and Ken Thompson developed this systems
programming language at Bell Labs.• It is hard to overestimate the influence that C has had on the world.
Creative Commons Attribution-ShareAlike 4.0 International License 29
![Page 30: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/30.jpg)
1972 - Prolog• Logic Programming
Creative Commons Attribution-ShareAlike 4.0 International License 30
![Page 31: CS154 A History of Computation Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.](https://reader036.fdocuments.net/reader036/viewer/2022062909/5a4d1b957f8b9ab0599c371c/html5/thumbnails/31.jpg)
More languages• 1980 C++• 1984 Matlab• 1986 Objective C• 1987 Perl• 1990 Haskell• 1991 Python• 1995 Java• 2007 Clojure
Creative Commons Attribution-ShareAlike 4.0 International License 31