23/6/12 – 7/6/54
Computability
The Church-Turing thesis states that “everything algorithmically computable is computable by a Turing machine.”
Copyright By PowCoder代写 加微信 powcoder
Cryptanalysis
Turing was instrumental in the British code breaking effort that cracked the code during WWII. The impact of this effort was so great that it is said to have changed the outcome of WWII.
TuringTestandAI
Turing was a pioneer of the problem of artificial intelligence, and posed the Turing Test.
Forthingsthatwe havetolearnto do,welearnbydoingthem. Aristotle
Structured Programming 1110/1140/6710 59
Margaret Hamilton
Lead Developer, Apollo Flight Software
Hamilton was Director o the Software Engineering Division of the MIT Instrumentation Laboratory, which developed on-board flight software for the Apollo space program. This is the software the controlled the spacecraft on their passage to the moon. Her team also worked on the flight software for Skylab.
Software Engineering
Credit as one of three to have coined the term ‘software engineering’, in order that software development be taken seriously (during the Apollo mission).
Presidential Medal of Freedom 2016 For things that we have to learn to do, we learn by doing them. Aristotle
Structured Programming COMP1110/6710
euro-coins.info
22/6/10 – 18/12/95
Zuse designed and built the world’s first Turing-complete computer, May 1941.
Plankalkül
Realizing how impractical it was to write programs at a low level, Zuse developed the world’s first high-level programming language (1941-1945). Unfortunately, the impact of this language was greatly reduced by the virtue of Zuse having made these developments in wartime Germany.
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/6710
9/12/06 – 1/1/92
First Compiler
Hopper developed the first compiler for a programming language (targeting the Harvard Mark I computer).
She led the development of COBOL through her ideas of machine- independent programming languages that were closer to human languages than to machine code.
Hopper is said to have coined the term ‘bug’ after finding a moth stuck in an electrical relay which had caused the computer to malfunction.
For things that we have to learn to do, we learn by doing them. Aristotle
Structured Programming 1110/1140/6710
For things that we have to learn to do, we learn by doing them. Aristotle
Structured Programming 1110/1140/6710
John von Neumann
28/12/03 – 8/2/57
In 1945 Neumann described the first computer in which the program and data were stored in the same address space, based on Eckert and Mauchly’s work on the EDVAC.
Random Numbers
co-developed the Monte Carlo method and pioneered the generation of pseudorandom numbers.
Merge Sort
Knuth credits von Neumann with developing the merge sort algorithm in 1945.
For things that we have to learn to do, we learn by doing them. Aristotle
Structured Programming 1110/1140/6710
University
Jeanette Wing
Professor, Columbia University
Director of Data Sciences Institute
Microsoft VP, MSR International
Since 2012, Wing has been vice president at Microsoft, head of Microsoft Research International.
CMU CSD Head
From 2010-2012, Wing was head of computer science at University. She was also head from 2004-2007.
NSF Assistant Director
From 2007-2010, Wing was at the NSF as Assistant Director, responsible for Computer Information Science and Engineering (CISE).
Famous for:
• Formal methods
• OO programming
• computational thinking
For things that we have to learn to do, we learn by doing them.
Structured Programming 1110/1140/6710
IEEE Computer Society
Robert Floyd
8/6/36 – 25/9/2001
Program correctness
Floyd was a pioneer of the idea of applying mathematics to the problem of program correctness. His work contributed significantly Hoare logic
Software Engineering
Floyd is said to have been one of the first advocates of refactoring and the rewriting of working programs from scratch.
Turing Award 1978
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/1510/6710
Wikimedia / Award 2006
4/8/32 – 4/8/2020
Optimizing Compilers
Allen pioneered the field of optimizing compilers. She introduced the application of graph theory to program optimization.
Parallelizing Compilers
Allen pioneered the development of automatic parallelizing compilers, with the development of PTRAN, a parallel compiler for FORTRAN.
For things that we have to learn to do, we learn by doing them. Aristotle
Structured Programming 1110/1140/6710
saildart.org/jcm2012.html
4/9/27 – 24/10/11
Artificial Intelligence
McCarthy was a pioneer of AI, and coined the term ‘artificial intelligence’.
ALGOL and Lisp
McCarthy worked on the committee that developed ALGOL. He then developed Lisp, the language of choice for AI.
Garbage Collection
McCarthy invented garbage collection (automatic memory management), published in CACM in 1960.
Turing Award 1971
Introduction to Software Systems 1110/1140/1510/6710
Introduction to Software Systems 1110/1140/1510/6710
Liskov B10
Barbara Liskov 8 7/11/39 –
Liskov and her students at MIT developed CLU in the 1970’s. CLU extended ALGOL with data types that had code that operated on them; an important step in the development of object-oriented languages.
Liskov lead the development of Argus in the 1980’s. Argus was the first high-level language to support distributed programs.
Turing Award 2008
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/1510/6710
Thompson B11
Multics and Unix
At Bell Labs, Thompson worked on Multics and upon leaving the project was instrumental in creating Unix with .
Thompson created the B programming language, a typeless imperative programming language which was the precursor to C.
Regular Expressions, UTF-8
Thompson created an editor which included regular expressions. He also developed the UTF-8 character set.
Turing Award 1983
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/6710
computerhistory.org
10/12/1815 – 27/11/1852
Analytical Engine
Lovelace is credited with writing the first algorithm designed for processing by a machine, and as such is often regarded as the first computer programmer. The algorithm allowed the Analytical Engine to calculate Bernoulli numbers. Lovelace corresponded with and was fascinated by his Difference Engine. One of her ambitions was to create a model for the brain “a calculus for the nervous system”.
For things that we have to learn to do, we learn by doing them. Aristotle
Structured Programming 1110/1140/6710 19
Brooks B13
www.sdm.de
The Mythical Man Month
Brooks’ reflections on the development of IBM’s OS/360, and the errors he made as manager of that large project. Brooks called the book “the Bible of Software Engineering”, because “everybody quotes it, some people read it, and a few people go by it.”
“Addingmanpowertoalatesoftware projectmakesitlater”
No Silver Bullet
The essential complexity of software suggests that there will be no once-and- for-all fix to the problem of efficient software construction.
“…thisirreducibleessenceofmodernsoftware systems: complexity, conformity, changeability, and invisibility.”
Turing Award 1999
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/6710 19
Source:Dake, https://en.wikipedia.org/wiki/Zero-knowledge_proof
Zero-knowledge Proofs
Used in cryptography to prove the correctness of a statement without revealing anything other than the correctness of the statement.
Other Cryptography
Goldwasser has made many other contributions to cryptography, was awarded the RSA Award in Mathematics, and has the RSA Professorship at MIT
Gödel Prize 1993, 2001
Turing Award, 2012
For things that we have to learn to do, we learn by doing them. Aristotle
Structured Programming 1110/1140/6710 5
Robin Milner
13/1/34 – 20/3/10
Automated Theorem Proving
Milner lead the development of LCF, one of the first human-assisted theorem provers.
Milner developed ML (metalanguage), an early non-pure functional programming language. ML included the first parametric polymorphisim (father of today’s generics).
Pi-Calculus
Milner was one of the developers of the pi-calculus, a mathematical formalism for describing the properties of concurrent computation.
Turing Award 1991
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/1510/6710 18
17/1/49 – 6/4/2003
Borg worked for DEC and XEROX PARC, PhD from NYU, focus on operating systems and memory performance.
Advocacy for Women in Technology
Borg founded the Institute for Women and Technology, the Celebration of Women in Computing, and the Systers email network. Strong legacy today, including multiple awards named in her honor.
For things that we have to learn to do, we learn by doing them. Aristotle
Structured Programming 1110/1140/6710 48
Turing Award 1983
For things that we have to learn to do, we learn by doing them. Aristotle
9/9/41 – 10/12/11
With , Ritchie was instrumental in the development of the Unix operating system.
“UNIX is very simple, it just needs a genius to understand its simplicity” –
Ritchie created the C programming language to use with the Unix operating system (it followed ’s B language).
“[C has] the power of assembly language and the convenience of … assembly language.” – DR
Introduction to Software Systems 1110/1140/1510/6710 30
17/1/49 – 6/4/2003
Borg worked for DEC and XEROX PARC, PhD from NYU, focus on operating systems and memory performance.
Advocacy for Women in Technology
Borg founded the Institute for Women and Technology, the Celebration of Women in Computing, and the Systers email network. Strong legacy today, including multiple awards named in her honor.
For things that we have to learn to do, we learn by doing them. Aristotle
Structured Programming 1110/1140/6710 33
Programming Languages
Chief designer of Euler, Algol W, Pascal, Modula, Modula-2, Oberon, Oberon-2 and Oberon-07
Wirth’s Law
‘Software is getting slower more rapidly than hardware becomes faster’ (Reiser)
Extended Backus-Naur Form Wirth developed the first EBNF. Now an ISO standard (ISO/IEC 14977).
‘Reliable and transparent programs are usually not in the interest of the designer.’
Turing Award 1984
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/1510/6710 1
CEO Autodesk
From 1992-2006 Bartz was CEO of Autodesk. Credited with transforming the company into the leading vendor of design software.
CEO Yahoo!
From 2009-2011 was CEO of Yahoo! She was tasked with turning around a failing company.
Computer Science degree from University of Wisconsin, Madison
“I have a belief that life isn’t about balance, because balance is perfection … Rather, it’s about catching the ball before it hits the floor.”
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/1510/6710 1
Kay lead the development of Smalltalk while at Xerox PARC. Smalltalk remains an important example of object oriented programming.
Kay’s work at Xerox PARC on networked workstations and graphical user interfaces were commercialized by and lead to the development of the Lisa and Macintosh computers.
“The best way to predict the future is to invent it.”
Turing Award 2003
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/1510/6710 1
mac-history.net
Smalltalk-80
Goldberg managed Xerox PARC’s System Concepts Laboratory, who developed Smalltalk-80 (lead by ). This introduced the key ideas of object-oriented programming. The system also had a user interface based on windows, which lead to mainstream modern user interface design.
Co-Founded ParcPlace
Goldberg co-founded ParcPlace, a company that sold Smalltalk systems.
For things that we have to learn to do, we learn by doing them. Aristotle
Introduction to Software Systems 1110/1140/1510/6710 1
程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com