1 option
Software : a technical history / Kim W. Tracey.
- Format:
- Book
- Author/Creator:
- Tracy, Kim W., author.
- Language:
- English
- Subjects (All):
- Operating systems (Computers)--History.
- Operating systems (Computers).
- Programming languages (Electronic computers)--History.
- Programming languages (Electronic computers).
- History.
- Computer programming--History.
- Computer programming.
- Programming languages (Computers)--History.
- Programming languages (Computers).
- Programming (Computers)--History.
- Programming (Computers).
- Physical Description:
- xxxii, 325 pages : illustrations ; 24 cm
- Place of Publication:
- New York, NY : ACM Books, ©2021.
- Summary:
- Software history has a deep impact on current software designers, computer scientists, and technologists. System constraints imposed in the past and the designs that responded to them are often unknown or poorly understood by students and practitioners, yet modern software systems often include "old" software and "historical" programming techniques. This work looks at software history through specific software areas to develop student-consumable practices, design principles, lessons learned, and trends useful in current and future software design. It also exposes key areas that are widely used in modern software, yet infrequently aught in computing programs. Written as a textbook, this book uses specific cases from the past and present to explore the impact of software trends and techniques.
- Building on concepts from the history of science and technology, software history examines such areas as fundamentals, operating systems, programming languages, programming environments, networking, and databases. These topics are covered from their earliest beginnings to their modern variants. There are focused case studies on UNIX, APL, SAGE, GNU Emacs, Autoflow, internet protocols, System R, and others. Extensive problems and suggested projects enable readers to deeply delve into the history of software in areas that interest them most. -- back cover
- Contents:
- Machine generated contents note: ch. 1 Introduction to Software History
- 1.1. What is "Software"?
- 1.2. Challenges of Software History
- 1.3. Modeling Software Technology Evolution
- 1.4. Computer Hardware History
- 1.5. Computer Hardware Trends and "Laws"
- 1.6. Lessons Learned from Hardware Evolution Affecting Software
- 1.7. Summary
- 1.8. Exercises and Projects
- 1.9. Further Readings and Online Resources
- ch. 2 Software History Fundamentals
- 2.1. Overview of Software History
- 2.2. Types of Software
- 2.3. Cultures and Communities of Software
- 2.4. Environment
- 2.5. Influences on Software History
- 2.6. Summary
- 2.7. Exercises and Projects
- 2.8. Further Readings and Online Resources
- ch. 3 Operating Systems S3
- 3.1. Operating Systems and Their Evolution 8.5 Operating Systems Scope
- 3.3. Operating Systems Case Study: Pipes in the UNIX System
- 3.4. Lessons Learned from Operating System Software
- Summary
- 3.6. Exercises and Projects
- 3.7. Further Readings and Online Resources
- ch. 4 Programming Languages
- 4.1. Definitions
- 4.2. Types of Programming Languages
- 4.3. Prehistory of Programming Languages and Compilers
- 4.4. Influences on Programming Language Change
- 4.5. Case Study: APL
- 4.6. Lessons Learned from Programming Languages
- 4.7. Exercises and Projects
- 4.8. Further Readings and Online Resources
- ch. 5 Programming Environments, Tools, and Methodologies
- 5.1. Early Programming Environments and Tools
- 5.2. Evolution of Programmer Tools Over Time
- 5.3. Large Projects and the Software "Crisis"
- 5.4. Reflections on Programming Tools and Environments
- 5.5. Case Study: SAGE
- 5.6. Case Study: GNU Emacs
- 5.7. Case Study: AUTOFLOW
- 5.8. Lessons Learned from Programming Tools and Environments
- 5.9. Exercises and Projects
- 5.10. Further Readings and Online Resources
- ch. 6 Networking Software
- 6.1. Overview of the Evolution of Data Networking
- 6.2. Networking Protocols
- 6.3. Getting to TCP/IP
- 6.4. Network Software and Applications
- 6.5. Case Study: Minitel
- 6.6. NCSA httpd and Apache Web Server
- 6.7. Networking Influences
- 6.8. Lessons Learned from Networking Software
- 6.9. Exercises and Projects
- 6.10. Further Readings and Online Resources
- ch. 7 Database Management Systems
- 7.1. Overview of Database Systems and Their Evolution
- 7.2. Early Database History
- 7.3. Types and Evolution of Database Systems
- 7.4. Relational DBMSs
- 7.5. System R: Sample Code
- 7.6. Factors Affecting Change of Database Software
- 7.7. Lessons Learned from Database Software
- 7.8. Exercises and Projects
- 7.9. Further Readings and Online Resources
- ch. 8 Software Futures and Overall Trends
- 8.1. Overview of Software History
- 8.2. Trends
- 8.3. Perpetual Challenges of Software Development
- 8.4. Emerging Software Trends
- 8.5. Other Areas of Software
- 8.6. Software History's Relevance
- 8.7. Exercises and Projects
- 8.8. Further Readings and Online Resources
- Appendix A Appendix
- Source Code
- A.1. UNIX Pipe. C
- A.2. System R Where Clause Code.
- Notes:
- Includes bibliographical references and index.
- Local Notes:
- Acquired for the Penn Libraries with assistance from the Edward Potts Cheyney Memorial Fund.
- ISBN:
- 1450387241
- 9781450387248
- 145038725X
- 9781450387255
- OCLC:
- 1269093103
- Publisher Number:
- 99989315283
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.