cs1000
play

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


  1. 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.

  2. Getting into computing. . . 2 Software History 11/16/2015

  3. Experience Overview 3 KW Tracy - 2015

  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 4 KW Tracy - 2015

  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 5 KW Tracy - 2015

  6. Teaching Experience  Taught in a wide variety of institutions and modalities  NEIU, North Central College, IIT, DePaul, Lewis, and online  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. . . 6 KW Tracy - 2015

  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 See: http://books.acm.org/subjects/forthcoming-titles for abstract. 7 Software History 11/16/2015

  8. Outline – Software History  Issues to address  How did we get to the point where a history is needed?  Historiographical approach  Examples 8 Software History 11/16/2015

  9. “Programming” the ENIAC Corbis Photo as in Forbes 9 Software History 11/16/2015

  10. Issues Addressed  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 10 Software History 11/16/2015

  11. What has happened to make a software history necessary?  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 11 Software History 11/16/2015 From CACM, “The Tears of Donald Knuth,” Jan. 2015, p.40

  12. Historiographical method  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. 12 Software History 11/16/2015

  13. Software Taxonomy 13 Software History 11/16/2015

  14. Influences to Software Change 14 Software History 11/16/2015

  15. Book Structure  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 15 Software History 11/16/2015

  16. Programmers’ Toolsets 16 Software History 11/16/2015

  17. Influences on Toolset Evolution 17 Software History 11/16/2015

  18. IBM 704 NASA, public domain 18 Software History 11/16/2015

  19. Programmers’ Tools Over time 19 Software History 11/16/2015

  20. Operating Systems 20 Software History 11/16/2015

  21. High-level Evolution of Operating Systems 21 Software History 11/16/2015

  22. Evolution of OS Features to Smaller Devices* * From Silberschatz , Galvin, and Gagne, Operating Systems, Concepts, 9 th Edition, Wiley, 2012, Chapter 20, Figure 1. 22 Software History 11/16/2015

  23. Summary  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 23 Software History 11/16/2015

  24. Questions? 24 Software History 11/16/2015

  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.  25 Software History 11/16/2015

More recommend