CS1000 Software History Kim Tracy kwtracy@mtu.edu 1 Software - - PowerPoint PPT Presentation

cs1000
SMART_READER_LITE
LIVE PREVIEW

CS1000 Software History Kim Tracy kwtracy@mtu.edu 1 Software - - PowerPoint PPT Presentation

CS1000 Software History Kim Tracy kwtracy@mtu.edu 1 Software History 11/16/2015 Mark I, Grace Hopper Tape for Problem L, Smithsonian NMAH, taken by author, 7/2014. Getting into computing. . . 2 Software History 11/16/2015


slide-1
SLIDE 1

CS1000 Software History

Kim Tracy kwtracy@mtu.edu 11/16/2015 Software History 1

Mark I, Grace Hopper Tape for Problem “L”, Smithsonian NMAH, taken by author, 7/2014.

slide-2
SLIDE 2

Getting into computing. . .

11/16/2015 Software History 2

slide-3
SLIDE 3

Experience Overview

KW Tracy - 2015 3

slide-4
SLIDE 4

Software and Engineering Experience

 Broad experience

 Telecommunications software (5ESS, ISDN, etc.)  Operating Systems development (R&D Unix)  DBMS development (C RDBMS)  Database application experience (Monsanto, Bell Labs)  Information architecture  Consulting  Security Software  System Tester  Development methodologies, SW Quality  AI Software  Productization (Visualization, mapping, etc.)  Consulting (Enterprise Architecture/Information Architecture)  Network design and architecture  Systems engineering

KW Tracy - 2015 4

slide-5
SLIDE 5

IT Experience

 Across all IT areas (as CIO of NEIU)  ERP (Enterprise Resource Planning) deployment  IT Management  ITIL – IT organization and processes  Security  IT Strategy, Applications, Operations and Infrastructure  IT Roadmapping  IT Consulting (reviewing other orgs, employment exam

writing, security audit)

 Mobility application (3g/4g)  Strategic application of IT – impact to business/organization

KW Tracy - 2015 5

slide-6
SLIDE 6

Teaching Experience

 Taught in a wide variety of institutions and modalities  NEIU, North Central College, IIT, DePaul, Lewis, and

  • nline

 Wide variety of courses taught (DBMS, A&D, Networking,

OS, AI, Discrete Math, ToC, Prog. Langs & Compilers, eBusiness, Security, Open Source, MS Projects, etc.)

 Now at MTU, teaching SW Engineering and Systems

courses

 Teaching Software History this summer (CS3090)

 Sidenote: the IBM 3090 was a popular mainframe. . .

KW Tracy - 2015 6

slide-7
SLIDE 7

Software History-Why

 Book on software history

 Many current students have little knowledge of SW history  Get dribs and drabs in some courses and textbooks  Missing the big picture on software’s evolution  There’s a need to know

 The focus is on what technology students need to know

11/16/2015 Software History 7

See: http://books.acm.org/subjects/forthcoming-titles for abstract.

slide-8
SLIDE 8

Outline – Software History

 Issues to address  How did we get to the point where a history is needed?  Historiographical approach  Examples

11/16/2015 Software History 8

slide-9
SLIDE 9

“Programming” the ENIAC

11/16/2015 Software History 9

Corbis Photo as in Forbes

slide-10
SLIDE 10

Issues Addressed

11/16/2015 Software History 10

 No existing textbook on software technical history

 Students are left with a sea of bits and pieces

 My foci:

 Understanding software base and its evolution  Applying learnings to future systems

slide-11
SLIDE 11

What has happened to make a software history necessary?

11/16/2015 Software History 11

 To manage complexity, we’ve increased the levels of

abstraction

 Students often learn and use only the highest levels

 We’re rarely teaching a lot of the lower levels (file

systems, DBMS internals, OS internals, Assembler, etc.)

 We’ve rapidly specialized  We’ve got over 60 years of history

From CACM, “The Tears of Donald Knuth,” Jan. 2015, p.40

slide-12
SLIDE 12

Historiographical method

11/16/2015 Software History 12

 Software is a technology  Using a “domain” and “sub-domain” approach*

 Focus on core domains: operating systems, programming

environments, databases, networking, etc.

 Other concepts: significant events, communities of practice,

standard engineering

 Importance of primary sources  Software is an unusual technology

 Very loosely based on physical phenomena  More like mathematics in building on previous

abstractions/results

 Why haven’t historians of technology done this?

* As per a combined approach of Basalla, Arthur and Constant.

slide-13
SLIDE 13

Software Taxonomy

11/16/2015 Software History 13

slide-14
SLIDE 14

Influences to Software Change

11/16/2015 Software History 14

slide-15
SLIDE 15

Book Structure

11/16/2015 Software History 15

 Use a broad technical evolution with significant events

and then include deep dives into:

 Chapters by software technology domain  Important examples of source code  Failures and learnings  Other case studies

slide-16
SLIDE 16

Programmers’ Toolsets

11/16/2015 Software History 16

slide-17
SLIDE 17

Influences on Toolset Evolution

11/16/2015 Software History 17

slide-18
SLIDE 18

IBM 704

11/16/2015 Software History 18

NASA, public domain

slide-19
SLIDE 19

Programmers’ Tools Over time

11/16/2015 Software History 19

slide-20
SLIDE 20

Operating Systems

11/16/2015 Software History 20

slide-21
SLIDE 21

High-level Evolution of Operating Systems

11/16/2015 Software History 21

slide-22
SLIDE 22

Evolution of OS Features to Smaller Devices*

11/16/2015 Software History 22

* From Silberschatz , Galvin, and Gagne, Operating Systems, Concepts, 9th Edition, Wiley, 2012, Chapter 20, Figure 1.

slide-23
SLIDE 23

Summary

11/16/2015 Software History 23

 Software history’s time has come  Student’s have a need to know

 No cohesive, digestible view

 Losing software pioneers  Gives students a picture of the overall evolution of SW

 ability to reason about trends and future possibilities

slide-24
SLIDE 24

Questions?

11/16/2015 Software History 24

slide-25
SLIDE 25

References

Arthur, W. Brian, The Nature of Technology: What It Is and How It Evolves, Free Press, 2009.

Basalla, George, The Evolution of Technology, Cambridge University Press, 1988.

Constant II, Edward, The Origins of the Turbojet Revolution,The Johns Hopkins University Press, 1980.

Mahoney, Michael, The Histories of Computing, Harvard University Press, 2011.

Charles Babbage Institute (CBI), www.cbi.org.

Computer History Museum, www.computerhistory.org

Computer History Museum scanned manuals, http://www.bitsavers.org/

Various Oral histories

CBI: http://www.cbi.umn.edu/oh/

CHM: http://www.computerhistory.org/collections/oralhistories/

Smithsonian Computer Oral History Collection, 1969-1973, 1977

http://dl.acm.org/citation.cfm?id=1234040

http://invention.smithsonian.org/downloads/fa_cohc_abstracts_a-d.pdf

http://invention.smithsonian.org/downloads/fa_cohc_abstracts_e-g.pdf

http://invention.smithsonian.org/downloads/fa_cohc_abstracts_h.pdf

http://invention.smithsonian.org/downloads/fa_cohc_abstracts_i-m.pdf

http://invention.smithsonian.org/downloads/fa_cohc_abstracts_n-r.pdf

http://invention.smithsonian.org/downloads/fa_cohc_abstracts_s-z.pdf 

SIAM: The History of Numerical Analysis and Scientific Computing

http://history.siam.org/oralhistories.htm

History of Programming Languages I, II, and III conference proceedings, ACM.

11/16/2015 Software History 25