Categories
Artificial Intelligence AWS Azure Bibliography C# .NET Cloud Data Science - Big Data DevOps DevSecOps-Security-Privacy GCP Go Programming Language Java JavaScript Kotlin Kubernetes Linux Networking Operating Systems PowerShell Python React Software Engineering Spring Framework Swift TypeScript Vue.js Framework

Manning Publications

See also Java Bibliography, JavaScript Bibliography, Python Bibliography

Manning publishes the best quality IT books in the industry.

Manning is an independent publisher, providing computer books for software developers, engineers, architects, system administrators, and managers. Our books also cover topics for young programmers, students, and occasionally children.

summary

Manning is an independent publisher of computer books and video courses for software developers, engineers, architects, system administrators, managers and all who are professionally involved with the computer business. We also publish for students and young programmers, including occasionally for children. We are an entirely virtual organization based on Shelter Island, New York, with many staff working from far-flung places like Manila and Zagreb.

company character

“Independent” means we are not owned by a large corporate entity and are free to make decisions without bureaucratic overhead. That has allowed us to innovate and be flexible and to quickly adjust what we do as we go. We were the first by several years to sell our books as unprotected PDFs, something that later became commonplace. We were the first to start selling books before they were finished, in the Manning Early Access Program. This gave our readers access to our content as soon as it was readable, and this too has become common in the industry. And it means we are thinking every day about new ways to satisfy our customers, some of which we hope you will be pleased to discover in the not-too-distant future.

how we improve

We published our first book in 1993 and have been learning from our successes, and even more from our mistakes, ever since. Every new book teaches us something that helps us improve:

  • How to choose the topics we publish on
  • How to find the right authors for each book
  • How to help authors write the best books they can
  • How to ensure the content is valuable and easy to learn
  • How to let readers know about our content

book series

We publish standalone titles as well as the following book series:

  • Hello!
  • In Action
  • In Practice
  • In Depth
  • In a Month of Lunches

availability

Readers can access our books through the Manning Early Access Program, O’Reilly Learning (formerly Safari Books Online), and iBooks. Print copies, wherever they are bought, come with free electronic versions in PDF, ePub and Kindle formats. With your print copy in hand, register it on the Manning site and you can download the digital versions from your account.

At this time, our eBooks are available only from Manning.com and Apple’s iBookstore.

https://www.manning.com/manning

Sources:

Fair Use Sources:

Categories
Bibliography Cloud Data Science - Big Data DevOps Software Engineering

Building Event-Driven Microservices: Leveraging Organizational Data at Scale

See also: Event-driven architecture (EDA), Microservices, API, API Bibliography – Application Programming Interface Books and References

Building Event-Driven Microservices: Leveraging Organizational Data at Scale, 1st Edition, by Adam Bellemare, 2020, B08C9V1FC9 (BEDM)

Fair Use Source: B08C9V1FC9 (BEDM)

About This Book:

Organizations today often struggle to balance business requirements with ever-increasing volumes of data. Additionally, the demand for leveraging large-scale, real-time data is growing rapidly among the most competitive digital industries. Conventional system architectures may not be up to the task. With this practical guide, you’ll learn how to leverage large-scale data usage across the business units in your organization using the principles of event-driven microservices.

Author Adam Bellemare takes you through the process of building an event-driven microservice-powered organization. You’ll reconsider how data is produced, accessed, and propagated across your organization. Learn powerful yet simple patterns for unlocking the value of this data. Incorporate event-driven design and architectural principles into your own systems. And completely rethink how your organization delivers value by unlocking near-real-time access to data at scale.

You’ll learn:

  • How to leverage event-driven architectures to deliver exceptional business value
  • The role of microservices in supporting event-driven designs
  • Architectural patterns to ensure success both within and between teams in your organization
  • Application patterns for developing powerful event-driven microservices
  • Components and tooling required to get your microservice ecosystem off the ground

About the Author:

Adam Bellemare is a Staff Engineer, Data Platform at Flipp. He’s held this position since 2017. He joined Flipp in 2014 as a senior developer at Flipp. Prior to that, he held positions in embedded software development and quality assurance. His expertise includes: Devops (Kafka, Spark, Mesos, Zookeeper Clusters. Programmatic Building, scaling, destroying); Technical Leadership (Bringing Avro formatting to our data end-to-end, championing Kafka as the event-driven microservice bus, prototyping JRuby, Scala and Java Kafka clients and focusing on removing technical impediments to allow for product delivery); Software Development (Building microservices in Java and Scala using Spark and Kafka libraries); and Data Engineering (Reshaping the way that behavioral data is collected from user devices and shared with our Machine Learning, Billing and Analytics teams).

Book Details:

  • ASIN : B08C9V1FC9
  • Publisher : O’Reilly Media; 1st edition (July 2, 2020)
  • Publication date : July 2, 2020
  • Print length : 511 pages

Table of Contents:

  1. Preface
    1. Conventions Used in This Book
    2. O’Reilly Online Learning
    3. How to Contact Us
    4. Acknowledgments
  2. 1. Why Event-Driven Microservices
    1. What Are Event-Driven Microservices?
    2. Introduction to Domain-Driven Design and Bounded Contexts
      1. Leveraging Domain Models and Bounded Contexts
      2. Aligning Bounded Contexts with Business Requirements
    3. Communication Structures
      1. Business Communication Structures
      2. Implementation Communication Structures
      3. Data Communication Structures
      4. Conway’s Law and Communication Structures
    4. Communication Structures in Traditional Computing
      1. Option 1: Make a New Service
      2. Option 2: Add It to the Existing Service
      3. Pros and Cons of Each Option
      4. The Team Scenario, Continued
      5. Conflicting Pressures
    5. Event-Driven Communication Structures
      1. Events Are the Basis of Communication
      2. Event Streams Provide the Single Source of Truth
      3. Consumers Perform Their Own Modeling and Querying
      4. Data Communication Is Improved Across the Organization
      5. Accessible Data Supports Business Communication Changes
    6. Asynchronous Event-Driven Microservices
      1. Example Team Using Event-Driven Microservices
    7. Synchronous Microservices
      1. Drawbacks of Synchronous Microservices
      2. Benefits of Synchronous Microservices
    8. Summary
  3. 2. Event-Driven Microservice Fundamentals
    1. Building Topologies
      1. Microservice Topology
      2. Business Topology
    2. The Contents of an Event
    3. The Structure of an Event
      1. Unkeyed Event
      2. Entity Event
      3. Keyed Event
    4. Materializing State from Entity Events
    5. Event Data Definitions and Schemas
    6. Microservice Single Writer Principle
    7. Powering Microservices with the Event Broker
      1. Event Storage and Serving
      2. Additional Factors to Consider
    8. Event Brokers Versus Message Brokers
      1. Consuming from the Immutable Log
      2. Providing a Single Source of Truth
    9. Managing Microservices at Scale
      1. Putting Microservices into Containers
      2. Putting Microservices into Virtual Machines
      3. Managing Containers and Virtual Machines
    10. Paying the Microservice Tax
    11. Summary
  4. 3. Communication and Data Contracts
    1. Event-Driven Data Contracts
      1. Using Explicit Schemas as Contracts
      2. Schema Definition Comments
      3. Full-Featured Schema Evolution
      4. Code Generator Support
      5. Breaking Schema Changes
    2. Selecting an Event Format
    3. Designing Events
      1. Tell the Truth, the Whole Truth, and Nothing but the Truth
      2. Use a Singular Event Definition per Stream
      3. Use the Narrowest Data Types
      4. Keep Events Single-Purpose
      5. Minimize the Size of Events
      6. Involve Prospective Consumers in the Event Design
      7. Avoid Events as Semaphores or Signals
    4. Summary
  5. 4. Integrating Event-Driven Architectures with Existing Systems
    1. What Is Data Liberation?
      1. Compromises for Data Liberation
      2. Converting Liberated Data to Events
    2. Data Liberation Patterns
    3. Data Liberation Frameworks
    4. Liberating Data by Query
      1. Bulk Loading
      2. Incremental Timestamp Loading
      3. Autoincrementing ID Loading
      4. Custom Querying
      5. Incremental Updating
      6. Benefits of Query-Based Updating
      7. Drawbacks of Query-Based Updating
    5. Liberating Data Using Change-Data Capture Logs
      1. Benefits of Using Data Store Logs
      2. Drawbacks of Using Data Base Logs
    6. Liberating Data Using Outbox Tables
      1. Performance Considerations
      2. Isolating Internal Data Models
      3. Ensuring Schema Compatibility
      4. Capturing Change-Data Using Triggers
    7. Making Data Definition Changes to Data Sets Under Capture
      1. Handling After-the-Fact Data Definition Changes for the Query and CDC Log Patterns
      2. Handling Data Definition Changes for Change-Data Table Capture Patterns
    8. Sinking Event Data to Data Stores
    9. The Impacts of Sinking and Sourcing on a Business
    10. Summary
  6. 5. Event-Driven Processing Basics
    1. Composing Stateless Topologies
      1. Transformations
      2. Branching and Merging Streams
    2. Repartitioning Event Streams
      1. Example: Repartitioning an Event Stream
    3. Copartitioning Event Streams
      1. Example: Copartitioning an Event Stream
    4. Assigning Partitions to a Consumer Instance
      1. Assigning Partitions with the Partition Assignor
      2. Assigning Copartitioned Partitions
      3. Partition Assignment Strategies
    5. Recovering from Stateless Processing Instance Failures
    6. Summary
  7. 6. Deterministic Stream Processing
    1. Determinism with Event-Driven Workflows
    2. Timestamps
      1. Synchronizing Distributed Timestamps
      2. Processing with Timestamped Events
    3. Event Scheduling and Deterministic Processing
      1. Custom Event Schedulers
      2. Processing Based on Event Time, Processing Time, and Ingestion Time
      3. Timestamp Extraction by the Consumer
      4. Request-Response Calls to External Systems
    4. Watermarks
      1. Watermarks in Parallel Processing
    5. Stream Time
      1. Stream Time in Parallel Processing
    6. Out-of-Order and Late-Arriving Events
      1. Late Events with Watermarks and Stream Time
      2. Causes and Impacts of Out-of-Order Events
      3. Time-Sensitive Functions and Windowing
    7. Handling Late Events
    8. Reprocessing Versus Processing in Near-Real Time
    9. Intermittent Failures and Late Events
    10. Producer/Event Broker Connectivity Issues
    11. Summary and Further Reading
  8. 7. Stateful Streaming
    1. State Stores and Materializing State from an Event Stream
    2. Recording State to a Changelog Event Stream
    3. Materializing State to an Internal State Store
      1. Materializing Global State
      2. Advantages of Using Internal State
      3. Disadvantages of Using Internal State
      4. Scaling and Recovery of Internal State
    4. Materializing State to an External State Store
      1. Advantages of External State
      2. Drawbacks of External State
      3. Scaling and Recovery with External State Stores
    5. Rebuilding Versus Migrating State Stores
      1. Rebuilding
      2. Migrating
    6. Transactions and Effectively Once Processing
      1. Example: Stock Accounting Service
      2. Effectively Once Processing with Client-Broker Transactions
      3. Effectively Once Processing Without Client-Broker Transactions
    7. Summary
  9. 8. Building Workflows with Microservices
    1. The Choreography Pattern
      1. A Simple Event-Driven Choreography Example
      2. Creating and Modifying a Choreographed Workflow
      3. Monitoring a Choreographed Workflow
    2. The Orchestration Pattern
      1. A Simple Event-Driven Orchestration Example
      2. A Simple Direct-Call Orchestration Example
      3. Comparing Direct-Call and Event-Driven Orchestration
      4. Creating and Modifying an Orchestration Workflow
      5. Monitoring the Orchestration Workflow
    3. Distributed Transactions
      1. Choreographed Transactions: The Saga Pattern
      2. Orchestrated Transactions
    4. Compensation Workflows
    5. Summary
  10. 9. Microservices Using Function-as-a-Service
    1. Designing Function-Based Solutions as Microservices
      1. Ensure Strict Membership to a Bounded Context
      2. Commit Offsets Only After Processing Has Completed
      3. Less Is More
    2. Choosing a FaaS Provider
    3. Building Microservices Out of Functions
    4. Cold Start and Warm Starts
    5. Starting Functions with Triggers
      1. Triggering Based on New Events: The Event-Stream Listener
      2. Triggering Based on Consumer Group Lag
      3. Triggering on a Schedule
      4. Triggering Using Webhooks
      5. Triggering on Resource Events
    6. Performing Business Work with Functions
    7. Maintaining State
    8. Functions Calling Other Functions
      1. Event-Driven Communication Pattern
      2. Direct-Call Pattern
    9. Termination and Shutdown
    10. Tuning Your Functions
      1. Allocating Sufficient Resources
      2. Batch Event-Processing Parameters
    11. Scaling Your FaaS Solutions
    12. Summary
  11. 10. Basic Producer and Consumer Microservices
    1. Where Do BPCs Work Well?
      1. Integration with Existing and Legacy Systems
      2. Stateful Business Logic That Isn’t Reliant Upon Event Order
      3. When the Data Layer Does Much of the Work
      4. Independent Scaling of the Processing and Data Layer
    2. Hybrid BPC Applications with External Stream Processing
      1. Example: Using an External Stream-Processing Framework to Join Event Streams
    3. Summary
  12. 11. Heavyweight Framework Microservices
    1. A Brief History of Heavyweight Frameworks
    2. The Inner Workings of Heavyweight Frameworks
    3. Benefits and Limitations
    4. Cluster Setup Options and Execution Modes
      1. Use a Hosted Service
      2. Build Your Own Full Cluster
      3. Create Clusters with CMS Integration
    5. Application Submission Modes
      1. Driver Mode
      2. Cluster Mode
    6. Handling State and Using Checkpoints
    7. Scaling Applications and Handling Event Stream Partitions
      1. Scaling an Application While It Is Running
      2. Scaling an Application by Restarting It
      3. Autoscaling Applications
    8. Recovering from Failures
    9. Multitenancy Considerations
    10. Languages and Syntax
    11. Choosing a Framework
    12. Example: Session Windowing of Clicks and Views
    13. Summary
  13. 12. Lightweight Framework Microservices
    1. Benefits and Limitations
    2. Lightweight Processing
    3. Handling State and Using Changelogs
    4. Scaling Applications and Recovering from Failures
      1. Event Shuffling
      2. State Assignment
      3. State Replication and Hot Replicas
    5. Choosing a Lightweight Framework
      1. Apache Kafka Streams
      2. Apache Samza: Embedded Mode
    6. Languages and Syntax
    7. Stream-Table-Table Join: Enrichment Pattern
    8. Summary
  14. 13. Integrating Event-Driven and Request-Response Microservices
    1. Handling External Events
      1. Autonomously Generated Events
      2. Reactively Generated Events
    2. Handling Autonomously Generated Analytical Events
    3. Integrating with Third-Party Request-Response APIs
    4. Processing and Serving Stateful Data
      1. Serving Real-Time Requests with Internal State Stores
      2. Serving Real-Time Requests with External State Stores
    5. Handling Requests Within an Event-Driven Workflow
      1. Processing Events for User Interfaces
    6. Micro-Frontends in Request-Response Applications
    7. The Benefits of Microfrontends
      1. Composition-Based Microservices
      2. Easy Alignment to Business Requirements
    8. Drawbacks of Microfrontends
      1. Potentially Inconsistent UI Elements and Styling
      2. Varying Microfrontend Performance
      3. Example: Experience Search and Review Application
    9. Summary
  15. 14. Supportive Tooling
    1. Microservice-to-Team Assignment System
    2. Event Stream Creation and Modification
    3. Event Stream Metadata Tagging
    4. Quotas
    5. Schema Registry
    6. Schema Creation and Modification Notifications
    7. Offset Management
    8. Permissions and Access Control Lists for Event Streams
    9. State Management and Application Reset
    10. Consumer Offset Lag Monitoring
    11. Streamlined Microservice Creation Process
    12. Container Management Controls
    13. Cluster Creation and Management
      1. Programmatic Bringup of Event Brokers
      2. Programmatic Bringup of Compute Resources
      3. Cross-Cluster Event Data Replication
      4. Programmatic Bringup of Tooling
    14. Dependency Tracking and Topology Visualization
      1. Topology Example
    15. Summary
  16. 15. Testing Event-Driven Microservices
    1. General Testing Principles
    2. Unit-Testing Topology Functions
      1. Stateless Functions
      2. Stateful Functions
    3. Testing the Topology
    4. Testing Schema Evolution and Compatibility
    5. Integration Testing of Event-Driven Microservices
    6. Local Integration Testing
      1. Create a Temporary Environment Within the Runtime of Your Test Code
      2. Create a Temporary Environment External to Your Test Code
      3. Integrate Hosted Services Using Mocking and Simulator Options
      4. Integrate Remote Services That Have No Local Options
    7. Full Remote Integration Testing
      1. Programmatically Create a Temporary Integration Testing Environment
      2. Testing Using a Shared Environment
      3. Testing Using the Production Environment
    8. Choosing Your Full-Remote Integration Testing Strategy
    9. Summary
  17. 16. Deploying Event-Driven Microservices
    1. Principles of Microservice Deployment
    2. Architectural Components of Microservice Deployment
      1. Continuous Integration, Delivery, and Deployment Systems
      2. Container Management Systems and Commodity Hardware
    3. The Basic Full-Stop Deployment Pattern
    4. The Rolling Update Pattern
    5. The Breaking Schema Change Pattern
      1. Eventual Migration via Two Event Streams
      2. Synchronized Migration to the New Event Stream
    6. The Blue-Green Deployment Pattern
    7. Summary
  18. 17. Conclusion
    1. Communication Layers
    2. Business Domains and Bounded Contexts
    3. Shareable Tools and Infrastructure
    4. Schematized Events
    5. Data Liberation and the Single Source of Truth
    6. Microservices
    7. Microservice Implementation Options
    8. Testing
    9. Deploying
    10. Final Words
  19. Index

Preface
    Conventions Used in This Book
    O’Reilly Online Learning
    How to Contact Us
    Acknowledgments
1. Why Event-Driven Microservices
    What Are Event-Driven Microservices?
    Introduction to Domain-Driven Design and Bounded Contexts
        Leveraging Domain Models and Bounded Contexts
        Aligning Bounded Contexts with Business Requirements
    Communication Structures
        Business Communication Structures
        Implementation Communication Structures
        Data Communication Structures
        Conway’s Law and Communication Structures
    Communication Structures in Traditional Computing
        Option 1: Make a New Service
        Option 2: Add It to the Existing Service
        Pros and Cons of Each Option
        The Team Scenario, Continued
        Conflicting Pressures
    Event-Driven Communication Structures
        Events Are the Basis of Communication
        Event Streams Provide the Single Source of Truth
        Consumers Perform Their Own Modeling and Querying
        Data Communication Is Improved Across the Organization
        Accessible Data Supports Business Communication Changes
    Asynchronous Event-Driven Microservices
        Example Team Using Event-Driven Microservices
    Synchronous Microservices
        Drawbacks of Synchronous Microservices
        Benefits of Synchronous Microservices
    Summary
2. Event-Driven Microservice Fundamentals
    Building Topologies
        Microservice Topology
        Business Topology
    The Contents of an Event
    The Structure of an Event
        Unkeyed Event
        Entity Event
        Keyed Event
    Materializing State from Entity Events
    Event Data Definitions and Schemas
    Microservice Single Writer Principle
    Powering Microservices with the Event Broker
        Event Storage and Serving
        Additional Factors to Consider
    Event Brokers Versus Message Brokers
        Consuming from the Immutable Log
        Providing a Single Source of Truth
    Managing Microservices at Scale
        Putting Microservices into Containers
        Putting Microservices into Virtual Machines
        Managing Containers and Virtual Machines
    Paying the Microservice Tax
    Summary
3. Communication and Data Contracts
    Event-Driven Data Contracts
        Using Explicit Schemas as Contracts
        Schema Definition Comments
        Full-Featured Schema Evolution
        Code Generator Support
        Breaking Schema Changes
    Selecting an Event Format
    Designing Events
        Tell the Truth, the Whole Truth, and Nothing but the Truth
        Use a Singular Event Definition per Stream
        Use the Narrowest Data Types
        Keep Events Single-Purpose
        Minimize the Size of Events
        Involve Prospective Consumers in the Event Design
        Avoid Events as Semaphores or Signals
    Summary
4. Integrating Event-Driven Architectures with Existing Systems
    What Is Data Liberation?
        Compromises for Data Liberation
        Converting Liberated Data to Events
    Data Liberation Patterns
    Data Liberation Frameworks
    Liberating Data by Query
        Bulk Loading
        Incremental Timestamp Loading
        Autoincrementing ID Loading
        Custom Querying
        Incremental Updating
        Benefits of Query-Based Updating
        Drawbacks of Query-Based Updating
    Liberating Data Using Change-Data Capture Logs
        Benefits of Using Data Store Logs
        Drawbacks of Using Data Base Logs
    Liberating Data Using Outbox Tables
        Performance Considerations
        Isolating Internal Data Models
        Ensuring Schema Compatibility
        Capturing Change-Data Using Triggers
    Making Data Definition Changes to Data Sets Under Capture
        Handling After-the-Fact Data Definition Changes for the Query and CDC Log Patterns
        Handling Data Definition Changes for Change-Data Table Capture Patterns
    Sinking Event Data to Data Stores
    The Impacts of Sinking and Sourcing on a Business
    Summary
5. Event-Driven Processing Basics
    Composing Stateless Topologies
        Transformations
        Branching and Merging Streams
    Repartitioning Event Streams
        Example: Repartitioning an Event Stream
    Copartitioning Event Streams
        Example: Copartitioning an Event Stream
    Assigning Partitions to a Consumer Instance
        Assigning Partitions with the Partition Assignor
        Assigning Copartitioned Partitions
        Partition Assignment Strategies
    Recovering from Stateless Processing Instance Failures
    Summary
6. Deterministic Stream Processing
    Determinism with Event-Driven Workflows
    Timestamps
        Synchronizing Distributed Timestamps
        Processing with Timestamped Events
    Event Scheduling and Deterministic Processing
        Custom Event Schedulers
        Processing Based on Event Time, Processing Time, and Ingestion Time
        Timestamp Extraction by the Consumer
        Request-Response Calls to External Systems
    Watermarks
        Watermarks in Parallel Processing
    Stream Time
        Stream Time in Parallel Processing
    Out-of-Order and Late-Arriving Events
        Late Events with Watermarks and Stream Time
        Causes and Impacts of Out-of-Order Events
        Time-Sensitive Functions and Windowing
    Handling Late Events
    Reprocessing Versus Processing in Near-Real Time
    Intermittent Failures and Late Events
    Producer/Event Broker Connectivity Issues
    Summary and Further Reading
7. Stateful Streaming
    State Stores and Materializing State from an Event Stream
    Recording State to a Changelog Event Stream
    Materializing State to an Internal State Store
        Materializing Global State
        Advantages of Using Internal State
        Disadvantages of Using Internal State
        Scaling and Recovery of Internal State
    Materializing State to an External State Store
        Advantages of External State
        Drawbacks of External State
        Scaling and Recovery with External State Stores
    Rebuilding Versus Migrating State Stores
        Rebuilding
        Migrating
    Transactions and Effectively Once Processing
        Example: Stock Accounting Service
        Effectively Once Processing with Client-Broker Transactions
        Effectively Once Processing Without Client-Broker Transactions
    Summary
8. Building Workflows with Microservices
    The Choreography Pattern
        A Simple Event-Driven Choreography Example
        Creating and Modifying a Choreographed Workflow
        Monitoring a Choreographed Workflow
    The Orchestration Pattern
        A Simple Event-Driven Orchestration Example
        A Simple Direct-Call Orchestration Example
        Comparing Direct-Call and Event-Driven Orchestration
        Creating and Modifying an Orchestration Workflow
        Monitoring the Orchestration Workflow
    Distributed Transactions
        Choreographed Transactions: The Saga Pattern
        Orchestrated Transactions
    Compensation Workflows
    Summary
9. Microservices Using Function-as-a-Service
    Designing Function-Based Solutions as Microservices
        Ensure Strict Membership to a Bounded Context
        Commit Offsets Only After Processing Has Completed
        Less Is More
    Choosing a FaaS Provider
    Building Microservices Out of Functions
    Cold Start and Warm Starts
    Starting Functions with Triggers
        Triggering Based on New Events: The Event-Stream Listener
        Triggering Based on Consumer Group Lag
        Triggering on a Schedule
        Triggering Using Webhooks
        Triggering on Resource Events
    Performing Business Work with Functions
    Maintaining State
    Functions Calling Other Functions
        Event-Driven Communication Pattern
        Direct-Call Pattern
    Termination and Shutdown
    Tuning Your Functions
        Allocating Sufficient Resources
        Batch Event-Processing Parameters
    Scaling Your FaaS Solutions
    Summary
10. Basic Producer and Consumer Microservices
    Where Do BPCs Work Well?
        Integration with Existing and Legacy Systems
        Stateful Business Logic That Isn’t Reliant Upon Event Order
        When the Data Layer Does Much of the Work
        Independent Scaling of the Processing and Data Layer
    Hybrid BPC Applications with External Stream Processing
        Example: Using an External Stream-Processing Framework to Join Event Streams
    Summary
11. Heavyweight Framework Microservices
    A Brief History of Heavyweight Frameworks
    The Inner Workings of Heavyweight Frameworks
    Benefits and Limitations
    Cluster Setup Options and Execution Modes
        Use a Hosted Service
        Build Your Own Full Cluster
        Create Clusters with CMS Integration
    Application Submission Modes
        Driver Mode
        Cluster Mode
    Handling State and Using Checkpoints
    Scaling Applications and Handling Event Stream Partitions
        Scaling an Application While It Is Running
        Scaling an Application by Restarting It
        Autoscaling Applications
    Recovering from Failures
    Multitenancy Considerations
    Languages and Syntax
    Choosing a Framework
    Example: Session Windowing of Clicks and Views
    Summary
12. Lightweight Framework Microservices
    Benefits and Limitations
    Lightweight Processing
    Handling State and Using Changelogs
    Scaling Applications and Recovering from Failures
        Event Shuffling
        State Assignment
        State Replication and Hot Replicas
    Choosing a Lightweight Framework
        Apache Kafka Streams
        Apache Samza: Embedded Mode
    Languages and Syntax
    Stream-Table-Table Join: Enrichment Pattern
    Summary
13. Integrating Event-Driven and Request-Response Microservices
    Handling External Events
        Autonomously Generated Events
        Reactively Generated Events
    Handling Autonomously Generated Analytical Events
    Integrating with Third-Party Request-Response APIs
    Processing and Serving Stateful Data
        Serving Real-Time Requests with Internal State Stores
        Serving Real-Time Requests with External State Stores
    Handling Requests Within an Event-Driven Workflow
        Processing Events for User Interfaces
    Micro-Frontends in Request-Response Applications
    The Benefits of Microfrontends
        Composition-Based Microservices
        Easy Alignment to Business Requirements
    Drawbacks of Microfrontends
        Potentially Inconsistent UI Elements and Styling
        Varying Microfrontend Performance
        Example: Experience Search and Review Application
    Summary
14. Supportive Tooling
    Microservice-to-Team Assignment System
    Event Stream Creation and Modification
    Event Stream Metadata Tagging
    Quotas
    Schema Registry
    Schema Creation and Modification Notifications
    Offset Management
    Permissions and Access Control Lists for Event Streams
    State Management and Application Reset
    Consumer Offset Lag Monitoring
    Streamlined Microservice Creation Process
    Container Management Controls
    Cluster Creation and Management
        Programmatic Bringup of Event Brokers
        Programmatic Bringup of Compute Resources
        Cross-Cluster Event Data Replication
        Programmatic Bringup of Tooling
    Dependency Tracking and Topology Visualization
        Topology Example
    Summary
15. Testing Event-Driven Microservices
    General Testing Principles
    Unit-Testing Topology Functions
        Stateless Functions
        Stateful Functions
    Testing the Topology
    Testing Schema Evolution and Compatibility
    Integration Testing of Event-Driven Microservices
    Local Integration Testing
        Create a Temporary Environment Within the Runtime of Your Test Code
        Create a Temporary Environment External to Your Test Code
        Integrate Hosted Services Using Mocking and Simulator Options
        Integrate Remote Services That Have No Local Options
    Full Remote Integration Testing
        Programmatically Create a Temporary Integration Testing Environment
        Testing Using a Shared Environment
        Testing Using the Production Environment
    Choosing Your Full-Remote Integration Testing Strategy
    Summary
16. Deploying Event-Driven Microservices
    Principles of Microservice Deployment
    Architectural Components of Microservice Deployment
        Continuous Integration, Delivery, and Deployment Systems
        Container Management Systems and Commodity Hardware
    The Basic Full-Stop Deployment Pattern
    The Rolling Update Pattern
    The Breaking Schema Change Pattern
        Eventual Migration via Two Event Streams
        Synchronized Migration to the New Event Stream
    The Blue-Green Deployment Pattern
    Summary
17. Conclusion
    Communication Layers
    Business Domains and Bounded Contexts
    Shareable Tools and Infrastructure
    Schematized Events
    Data Liberation and the Single Source of Truth
    Microservices
    Microservice Implementation Options
    Testing
    Deploying
    Final Words
Index

Sources:

Fair Use Sources:

  • B08C9V1FC9 (BEDM)
  • https://learning.oreilly.com/library/view/building-event-driven-microservices/9781492057888
Categories
Artificial Intelligence AWS Azure Bibliography C Language C# .NET C++ Cloud Data Science - Big Data DevOps DevSecOps-Security-Privacy Django Web Framework Flask Web Framework GCP Go Programming Language Java JavaScript Kotlin Kubernetes Linux Networking Operating Systems PowerShell Python Ruby Software Engineering Spring Framework Swift TypeScript Windows Server

Udemy

See Dr. Angela Yu, Udemy’s best instructor: 100 Days of Code – The Complete Python Pro Bootcamp

Udemy, Inc. is an American massive open online course (MOOC) provider aimed at professional adults and students. It was founded in May 2010 by Eren Bali, Gagan Biyani, and Oktay Caglar.

As of February 2021, the platform has more than 40 million students, 155,000 courses and 70,000 instructors teaching courses in over 65 languages. There have been over 480 million course enrollments. Students and instructors come from 180+ countries and 2/3 of the students are located outside of the U.S.[3]

Students take courses largely as a means of improving job-related skills.[4] Some courses generate credit toward technical certification. Udemy has made a special effort to attract corporate trainers seeking to create coursework for employees of their company.[5] As of 2021, there are more than 155,000 courses on the website.[6][3]

The headquarters of Udemy is located in San Francisco, California, with offices in Denver, Colorado; Dublin, Ireland; Ankara, Turkey; Sao Paulo, Brazil; and Gurugram, India.[7]

(WP)

Sources:

Fair Use Sources:

Categories
Bibliography Data Science - Big Data DevOps Python Software Engineering

Python Bibliography

See also: Python and Bibliography of Python Libraries and Web Frameworks, Python Programming Courses

  1. Python Software Foundation Documentation (PSFDoc)
  2. GitHub (GH)
  3. Wikipedia (WP)
  4. 100 Days of Code – The Complete Python Pro Bootcamp, by Dr. Angela Yu (100PyAYu)
  5. The Python 3 Standard Library by Example, by Doug Hellmann, B072QZZDV7 (P3SLbE)
  6. Python Pocket Reference: Python In Your Pocket, by Mark Lutz, B00HZ41PGC (PPR)
  7. Head First Python: A Brain-Friendly Guide, by Paul Barry, B01N0GU0OC (HFPy)
  8. The Well-Grounded Python Developer, by Doug Farrell, 2021, 1617297441 (WlGrPD)
  9. Learning Python: Powerful Object-Oriented Programming, by Mark Lutz, B00DDZPC9S (LPMkLz)
  10. Programming Python: Powerful Object-Oriented Programming, by Mark Lutz, B004GTLFJ6 (PPMkLz)
  11. Python Crash Course: A Hands-On, Project-Based Introduction to Programming, by Eric Matthes, B07J4521M3 (PyCrCs)
  12. Introducing Python: Modern Computing in Simple Packages, by Bill Lubanovic, 2020, B0815R5543 (IPyBLub)
  13. Practices of the Python Pro, by Dane Hillard, 2020, 1617296082 (PrPyPro)
  14. Think Python: How to Think Like a Computer Scientist, by Allen B. Downey, B018UXJ9EQ (ThnkPy)
  15. Python in a Nutshell: A Desktop Quick Reference, 3rd Edition, by Alex Martelli, Anna Ravenscroft, and Steve Holden, 2017, B06Y4DVSBM (PyNutSh)
  16. The Quick Python Book, by N. Ceder, 1617294039 (QPB)

Categories
Artificial Intelligence Cloud Data Science - Big Data Hardware and Electronics History Software Engineering

Computing Philosophy: Logic, Order, Rules, and Clarity

“We think we are creating the system for our own purposes. We believe we are making it in our own image . . . But the computer is not really like us. It is a projection of a very slim part of ourselves: that portion devoted to logic, order, rule, and clarity.”

— Ellen Ullman, Close to the Machine: Technophilia and its Discontents

Sources:

Fair Use Sources:

Categories
C Language C# .NET C++ Cloud Data Science - Big Data DevOps Django Web Framework Flask Web Framework Go Programming Language Java JavaScript Kotlin PowerShell Python Ruby Software Engineering Spring Framework Swift TypeScript

Integrated Development Environment (IDE)

“An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editorbuild automation tools and a debugger. Some IDEs, such as Visual Studio, NetBeans and Eclipse, contain the necessary compilerinterpreter, or both; others, such as SharpDevelop and Lazarus, do not.” (WP)

“The boundary between an IDE and other parts of the broader software development environment is not well-defined; sometimes a version control system or various tools to simplify the construction of a graphical user interface (GUI) are integrated. Many modern IDEs also have a class browser, an object browser, and a class hierarchy diagram for use in object-oriented software development.” (WP)

Categories
C# .NET Cloud Data Science - Big Data History Software Engineering

Microsoft SQL Server

“” (CS9PR)

Previous: — Next:

Sources:

Fair Use Sources:

Categories
Artificial Intelligence AWS Azure Cloud Data Science - Big Data DevOps DevSecOps-Security-Privacy GCP Kubernetes Networking Operating Systems Software Engineering

DevOps

“DevOps is the buzzword these days in both software and business circles. Why? Because it has revolutionized the way modern businesses do business and, in the process, achieved milestones that weren’t possible before.” On this site, “you’ll learn what DevOps is, how it evolved, how your business can benefit from implementing it, and success stories of some of the world’s biggest and most popular companies that have embraced DevOps as part of their business.” (DMH)

“DevOps – or Development and Operations – is a term used in enterprise software development that refers to a kind of agile relationship between information technologies (IT) operations and development. The primary objective of DevOps is to optimize this relationship through fostering better collaboration and communication between development and IT operations. In particular, it seeks to integrate and activate important modifications into an enterprise’s production processes as well as to strictly monitor problems and issues as they occur so these can be addressed as soon as possible without having to disrupt other aspects of the enterprise’s operations. By doing so, DevOps can help enterprises register faster turnaround times, increase frequency of deployment of crucial new software or programs, achieve faster average recovery times, increase success rate for newly released programs, and minimize the lead time needed in between modifications or fixes to programs.” (DMH)

“DevOps is crucial for the success of any enterprise because, by nature, enterprises need to segregate business units as individually operating entities for a more efficient system of operations. However, part of such segregation is the tendency to tightly control and guard access to information, processes and management. And this can be a challenge, particularly for the IT operations unit that needs access to key information from all business units in order to provide the best IT service possible for the whole enterprise. Simply put, part of the challenge in segregating business units into individually operating ones that are independent of each other is the relatively slow flow of information to and from such units because of bureaucracy.” (DMH)

“Moving towards an organizational culture based on DevOps – one where the enterprise’s operations units and IT developers are considered as “partners” instead of unrelated units – is an effective way to break down the barriers between them. This is because an enterprise whose culture is based on DevOps is one that can help IT personnel provide organization with the best possible software with the least risk for glitches, hitches, or problems. Therefore, a DevOps-based organizational culture is one that can foster an environment where segregated business units can remain independent but, at the same time, work very well with others in order to optimize the organization’s efficiency and productivity.” (DMH)

“” (OADS)

Sources:

Fair Use Sources:

Categories
Cloud Data Science - Big Data DevOps Software Engineering

ACID (Atomicity, Consistency, Isolation, Durability)

“ACID (Atomicity, Consistency, Isolation, Durability) – These are the essential qualities of a *transaction in database processing: either all or none of the subtasks composing the transaction must be performed (atomicity); the database satisfy all its *constraints both at the beginning and at the end of the transaction (consistency); no other database user can access the data being manipulated by the transaction while it is an intermediate, and possibly inconsistent, state (isolation); and, once completed, the effect of the transaction will not be reversed, for example by a system crash and subsequent recovery (durability). See also BASE, CAP theorem.” (ODCS)

Fair Use Source: B019GXM8X8 (ODCS)

Sources:

Fair Use Sources:

Categories
Artificial Intelligence AWS Azure Bibliography Cloud Data Science - Big Data DevOps Hardware and Electronics History Networking Operating Systems Software Engineering

TTG – TechTarget Glossaries from WhatIs.com

Fair Use Source: https://whatis.techtarget.com/glossaries

See 809137 TTG-DvOp and 629581 TTG-CC

(TTG) – TechTarget Glossaries from WhatIs.com

Categories
Artificial Intelligence Bibliography Cloud Data Science - Big Data DevOps Hardware and Electronics History Networking Software Engineering

Oxford Dictionary of Computer Science

Fair Use Source: B019GXM8X8 (ODCS)

A Dictionary of Computer Science (Oxford Quick Reference) 7th Edition, by Editors Andrew Butterfield, Gerard Ngondi, Anne Kerr

Previously named A Dictionary of Computing, this bestselling dictionary has been renamed A Dictionary of Computer Science, and fully revised by a team of computer specialists, making it the most up-to-date and authoritative guide to computing available. Containing over 6,500 entries and with expanded coverage of multimedia, computer applications, networking, and personal computer science, it is a comprehensive reference work encompassing all aspects of the subject and is as valuable for home and office users as it is indispensable for students of computer science.

Terms are defined in a jargon-free and concise manner with helpful examples where relevant. The dictionary contains approximately 150 new entries including cloud computing, cross-site scripting, iPad, semantic attack, smartphone, and virtual learning environment. Recommended web links for many entries, accessible via the Dictionary of Computer Science companion website, provide valuable further information and the appendices include useful resources such as generic domain names, file extensions, and the Greek alphabet.

This dictionary is suitable for anyone who uses computers, and is ideal for students of computer science and the related fields of IT, maths, physics, media communications, electronic engineering, and natural sciences.

Book Details

  • ASIN : B019GXM8X8
  • Publisher : OUP Oxford; 7th edition (January 28, 2016)
  • Publication date : January 28, 2016
  • Print length : 641 pages
  • First edition 1983, Second edition 1986, Third edition 1990, Fourth edition 1996, Fifth edition 2004, Sixth edition 2008, Seventh edition 2016
  • ISBN 978–0–19–968897–5, ebook ISBN 978–0–19–100288–5

Preface

“The first edition of this dictionary was published in 1983 as a specialist reference work for computer professionals and for people interested in the underlying concepts and theories of computer science. Over successive editions, the work has been expanded and changed to reflect the technological and social changes that have occurred, especially the enormous growth in home computing and the Internet. In particular, the fourth edition (1996) included an additional 1700 entries catering for a wider readership. At the same time, the editors have retained the basic principles of the original book.”

“In the seventh edition of the dictionary we have followed the same line. The existing entries have been updated and over 120 new entries have been added. In particular, coverage of areas such as database management and social networking has been increased to reflect the growing importance of these areas. Some obsolete terms have been deleted, although some have been kept for their historical interest. Links to useful websites have been updated and more added. There are also six special feature spreads, giving information on selected topics.”

JL, ASK, 2015

Guide to the Dictionary

“Synonyms and generally used abbreviations are given either in brackets immediately after the relevant entry title, or occasionally in the text of the entry with some additional information or qualification.”

“A distinction is made between an acronym and an abbreviation: an acronym can be pronounced while an abbreviation cannot. The entry for an acronym usually appears at the acronym itself, whereas the entry for an abbreviation may appear either at the unabbreviated form or at the abbreviation—depending on which form is most commonly used. When a term is defined under an abbreviation, the entry for the unabbreviated form simply cross-refers the reader to the abbreviation.”

“Some terms listed in the dictionary are used both as nouns and verbs. This is usually indicated in the text of an entry if both forms are in common use. In many cases a noun is also used in an adjectival form to qualify another noun. This occurs too often to be noted.”

Fair Use Source: B019GXM8X8 (ODCS)

Categories
Artificial Intelligence Bibliography Cloud Data Science - Big Data Hardware and Electronics History Linux Networking Operating Systems Software Engineering

Bibliography of the History of Technology, Computing, IT, Internet and Programming

Return to Timeline of the History of Computers or History

Books

Alexander, Charles C. Holding the Line: The Eisenhower Era, 1952–1961. Bloomington: Indiana University Press, 1975.

Baran, Paul.“Packet Switching.” In Fundamentals of Digital Switching. 2d ed. Edited by John C. McDonald. New York: Plenum Press, 1990.

Barry, John A. Technobabble. Cambridge: MIT Press, 1991.

Bell, C. Gordon, Alan Kotok, Thomas N. Hastings, and Richard Hill. “The Evolution of the DEC System-10.” In Computer Engineering: A DEC View of Hardware Systems Design. Edited by C. Gordon Bell, J. Craig Mudge, and John E. McNamara. Bedford, Mass.: Digital Equipment Corporation, 1978.

Bell, C. Gordon, Gerald Butler, Robert Gray, John E. McNamara, Donald Vonada, and Ronald Wilson. “The PDP-1 and Other 18-Bit Computers.” In Computer Engineering: A DEC View of Hardware Systems Design. Edited by C. Gordon Bell, J. Craig Mudge, and John E. McNamara. Bedford, Mass.: Digital Equipment Corporation, 1978.

Bergaust, Erik. Wernher von Braun. Washington, D.C.: National Space Institute, 1976.

Blanc, Robert P., and Ira W. Cotton, eds. Computer Networking. New York: IEEE Press, 1976.

Brendon, Piers. Ike: His Life and Times. New York: Harper & Row, 1986.

Brooks, John. Telephone: The First HundredYears. New York: Harper & Row, 1976.

Brucker, Roger W., and Richard A. Watson. The Longest Cave. New York: Alfred A. Knopf, 1976.

Clarke, Arthur C., et al. The Telephone’s First Century—And Beyond: Essays on the Occasion of the 100th Anniversary of Telephone Communication. New York: Thomas Y. Crowell Company, 1977

Computer Science, Numerical Analysis and Computing. National Physical Laboratory, Engineering Sciences Group, Research 1971. London: Her Majesty’s Stationery Office, 1972.

Froehlich, Fritz E., Allen Kent, and Carolyn M. Hall, eds. “ARPANET, the Defense Data Network, and Internet.” In The Froehlich/Kent Encyclopedia of Telecommunications. New York: Marcel Dekker, Inc., 1991.

Goldstein, Jack S. A Different Sort of Time: The Life of Jerrold R. Zacharias. Cambridge MIT Press, 1992.

Halberstam, David. The Fifties. New York:Villard Books, 1993.

Hall, Mark, and John Barry. Sunburst: The Ascent of Sun Microsystems. Chicago: Contemporary Books, 1990.

Hammond, William M. Public Affairs: The Military and the Media, 1962–1968. Washington, D.C.: Center of Military History, U.S. Army, Superintendent of Documents, U.S. Government Printing Office, 1968.

Hamner, W. Clay. “The United States Postal Service: Will It Be Ready for the Year 2000?” In The Future of the Postal Service. Edited by Joel L. Fleishman. New York: Praeger, 1983.

Holzmann, Gerard J., and Björn Pehrson. The Early History of Data Network. Los Alamitos, Calif.: IEEE Computer Society Press, 1995.

Kidder, Tracy. The Soul of a New Machine. Boston: Little, Brown, 1981.

Killian, James R., Jr. Sputnik, Scientists, and Eisenhower: A Memoir of the First Special Assistant to the President for Science and Technology. Cambridge: MIT Press, 1977.

———. The Education of a College President: A Memoir. Cambridge: MIT Press, 1985.

Kleinrock, Leonard. Communication Nets: Stochastic Message Flow and Delay. New York: McGraw-Hill, 1964.

———. Queueing Systems. 2 vols. New York: John Wiley & Sons, 1974–1976.

Langdon-Davies, John. NPL: Jubilee Book of the National Physical Laboratory. London: His Majesty’s Stationery Office, 1951.

Lebow, Irwin. Information Highways & Byways: From the Telegraph to the 21st Century. New York: IEEE Press, 1995.

Licklider, J. C. R. “Computers and Government.” In The Computer Age: A Twenty-Year View, edited by Michael L. Dertouzos and Joel Moses. MIT Bicentennial Series. Cambridge: MIT Press, 1979.

———. Libraries of the Future. Cambridge: MIT Press, 1965.

Padlipsky, M. A. The Elements of Networking Style and Other Essays & Animadversions of the Art of Intercomputer Networking. Englewood Cliffs, N.J.: Prentice-Hall, Inc., 1985.

Proceedings of the Fifth Data Communications Symposium. IEEE Computer Society, Snowbird, Utah, September 27–29, 1977.

Pyatt, Edward. The National Physical Laboratory: A History. Bristol, England: Adam Hilger Ltd., 1983.

Redmond, Kent C., and Thomas M. Smith. The Whirlwind Project: The History of a Pioneer Computer. Bedford, Mass.: Digital Press, 1980.

Rheingold, Howard. The Virtual Community. New York: Harper Perennial, 1994.

———. Tools for Thought: The People and Ideas Behind the Next Computer Revolution. New York: Simon & Schuster, 1988.

Roberts, Lawrence G. “The ARPANET and Computer Networks.” In A History of Personal Workstations, edited by Adele Goldberg. Reading, Mass.: ACM Press (Addison-Wesley), 1988.

Rose, Marshall T. The Internet Message: Closing the Book with Electronic Mail. Englewood Cliffs, N.J.: PTR Prentice Hall, 1993.

Sherman, Kenneth. Data Communications: A User’s Guide. Reston,Virginia: Reston Publishing Company, 1981.

Smith, Douglas K., and Robert C. Alexander. Fumbling the Future: How Xerox Invented, then Ignored, the First Personal Computer. New York: William Morrow, 1988.

Udall, Stewart L. The Myths of August: A Personal Exploration of Our Tragic Cold War Affair with the Atom. New York: Pantheon, 1994.

Wildes, Karl L., and Nilo A. Lindgren. A Century of Electrical Engineering and Computer Science at MIT, 1882–1982. Cambridge, Mass.: MIT Press, 1985.

Winner, Langdon. The Whale and the Reactor: A Search for Limits in an Age of High Technology. Chicago: University of Chicago Press, 1986.Edit

Journal, Magazine, and Newspaper Articles

Abramson, Norman. “Development of the Alohanet.” IEEE Transactions on Information Theory, January 1985.

Anderson, Christopher. “The Accidental Superhighway.” The Economist, 1 July 1995.

Baran, Paul. “On Distributed Communications Networks.” IEEE Transactions on Communications Systems, 1 March 1964.

———.“Reliable Digital Communications Systems Using Unreliable Network Repeater Nodes.” RAND Corporation Mathematics Division Report No. P-1995, 27 May 1960.

Boggs, David R., John F. Shoch, Edward A. Taft, and Robert M. Metcalfe. “PUP: An Internetwork Architecture.” IEEE Transactions on Communications, April 1980.

“Bolt Beranek Accused by Government of Contract Overcharges.” Dow Jones News Service–Wall Street Journal combined stories, 27 October 1980.

“Bolt Beranek and Newman: Two Aides Plead Guilty to U.S. Charge.” Dow Jones News Service–Wall Street Journal combined stories, 12 November 1980.

“Bolt Beranek, Aides Accused of Cheating U.S. on Several Jobs.” The Wall Street Journal, 28 October 1980.

Bulkeley, William M. “Can He Turn Big Ideas into Big Sales?” The Wall Street Journal, 12 September 1994.

Bush,Vannevar. “As We May Think.” Atlantic Monthly, July 1945.

Campbell-Kelly, Martin. “Data Communications at the National Physical Laboratory: 1965–1975.” Annals of the History of Computing 9, no. 3/4, 1988.

Cerf,Vinton G., and Peter T. Kirstein. “Issues in Packet-Network Interconnection.” Proceedings of the IEEE, November 1979.

Cerf, Vinton G., and Robert E. Kahn. “A Protocol for Packet-Network Intercommunication.” IEEE Transactions on Communications, May 1974.

Cerf, Vinton. “PARRY Encounters the Doctor: Conversation Between a Simulated Paranoid and a Simulated Psychiatrist.” Datamation, July 1973.

Clark, David D. “The Design Philosophy of the DARPA Internet Protocols.” Proceedings of the Association for Computing Machinery Sigcomm Symposium on Data Communications, August 1988.

Clark, David D., Kenneth T. Pogran, and David P. Reed. “An Introduction to Local Area Networks.” Proceedings of the IEEE, November 1979.

Comer, Douglas. “The Computer Science Research Network CSNET: A History and Status Report.” Communications of the ACM, October 1983.

Crowther, W. R., F. E. Heart, A. A. McKenzie, J. M. McQuillan, and D. C. Walden.“Issues in Packet Switching Networking Design.” Proceedings of the 1975 National Computer Conference, 1975.

Denning, Peter J. “The Science of Computing: The ARPANET After Twenty Years.” American Scientist, November-December 1989.

Denning, Peter J., Anthony Hearn, and C. William Kern. “History and Overview of CSNET. “Proceedings of the Association for Computing Machinery Sigcomm Symposium on Data Communications, March 1983.

“Dr. J. C. R. Licklider Receives Biennial Award at State College Meeting.” The Journal of the Acoustical Society of America, November 1950.

Engelbart, Douglas C. “Coordinated Information Services for a Discipline-or Mission-Oriented Community.” Proceedings of the Second Annual Computer Communications Conference, January 1972.

———. “Intellectual Implications of Multi-Access Computer Networks.” Proceedings of the Interdisciplinary Conference on Multi-Access Computer Networks, Austin, Texas, April 1970.

Ericson, Raymond. “Philharmonic Hall Acoustics Start Rumors Flying.” The NewYork Times, 4 December 1962.

Finucane, Martin. “Creators of the Internet Forerunner Gather in Boston.” Reading (Mass.) Daily Times Herald, 12 September 1994.

Fisher, Sharon. “The Largest Computer Network: Internet Links UNIX Computers Worldwide.” InfoWorld, 25 April 1988.

Hines, William. “Mail.” Chicago Sun-Times, 29 March 1978.

Haughney, Joseph F. “Anatomy of a Packet-Switching Overhaul.” Data Communications, June 1982.

Holusha, John. “Computer Tied Carter, Mondale Campaigns: The Bethesda Connection.” Washington Star, 21 November 1976.

Jacobs, Irwin M., Richard Binder, and EstilV. Hoversten. “General Purpose Packet Satellite Networks.” Proceedings of the IEEE, November 1978.

Jennings, Dennis M., Lawrence H. Landweber, Ira H. Fuchs, David J. Farber, and W. Richards Adrion. “Computer Networking for Scientists.” Science, 22 February 1986.

Kahn, Robert E. “The Role of Government in the Evolution of the Internet.” Communications of the ACM, August 1994.

Kahn, Robert E., Steven A. Gronemeyer, Jerry Burchfiel, and Ronald C. Kunzelman. “Advances in Packet Radio Technology.” Proceedings of the IEEE, November 1978.

Kantrowitz, Barbara, and Adam Rogers. “The Birth of the Internet.” Newsweek, 8 August 1994.

Kleinrock, Leonard. “Principles and Lessons in Packet Communications.” Proceedings of the IEEE, November 1978.

Landweber, Lawrence H., Dennis M. Jennings, and Ira Fuchs. “Research Computer Networks and Their Interconnection.” IEEE Communications Magazine, June 1986.

Lee, J. A. N., and Robert F. Rosin.“The CTSS Interviews.” IEEE Annals of the History of Computing 14, no. 1, 1992.

———.“The Project MAC Interviews.” IEEE Annals of the History of Computing 14, no. 2, 1992.

Licklider, J. C. R. “A Gridless, Wireless Rat-Shocker.” Journal of Comparative and Physiological Psychology 44, 1951.

———. “Man-Computer Symbiosis.” Reprint. In Memoriam: J. C. R. Licklider. Digital Equipment Corporation Systems Research Center, 7 August 1990.

Licklider, J. C. R., and Albert Vezza. “Applications of Information Networks.” Proceedings of the IEEE, November 1978.

Licklider, J. C. R., and Robert W. Taylor. “The Computer as a Communication Device.” Reprint. In Memoriam: J. C. R. Licklider. Digital Equipment Corporation Systems Research Center, 7 August 1990.

Markoff, John. “Up from the Computer Underground.” The NewYork Times, 27 August 1993.

McKenzie, Alexander A., and B. P. Cosell, J. M. McQuillan, M. J. Thrope. “The Network Control Center for the ARPA Network.” Proceedings of the IEEE, 1972.

Mier, Edwin E. “Defense Department Readying Network Ramparts.” Data Communications, October 1983.

Mills, Jeffrey. “Electronic Mail.” Associated Press, 4 January 1976.

———.“Electronic Mail.” Associated Press, 19 June 1976.

———. “Postal Service Tests Electronic Message Service.” Associated Press, 28 March 1978.

Mills, Kay.“The Public Concern: Mail.” Newhouse News Service, 27 July 1976.

Mohl, Bruce A. “2 Bolt, Beranek Officials Collapse in Federal Court.” The Boston Globe, 31 October 1980.

Pallesen, Gayle. “Consultant Firm on PBIA Faces Criminal Charges.” Palm Beach (Florida) Post, 8 November 1980.

Pearse, Ben. “Defense Chief in the Sputnik Age.” The NewYork Times Magazine, 10 November 1957.

Pool, Bob. “Inventing the Future: UCLA Scientist Who Helped Create Internet Isn’t Done Yet.” Los Angeles Times, 11 August 1994.

Quarterman, John S., and Josiah C. Hoskins. “Notable Computer Networks.” Communications of the ACM, October 1986.

Roberts, Lawrence G. “ARPA Network Implications.” Educom, Bulletin of the Interuniversity Communications Council, fall 1971.

Salus, Peter. “Pioneers of the Internet.” Internet World, September 1994.

“Scanning the Issues,” IEEE Spectrum, August 1964.

Schonberg, Harold C. “4 Acoustics Experts to Urge Revisions in Auditorium.” The NewYork Times, 4 April 1963.

———.“Acoustics Again: Philharmonic Hall Has Some Defects, But Also Has a Poetry of Its Own.” The NewYork Times, 9 December 1962.

Selling It. Consumer Reports, June 1977.

Space Agencies. “ARPA Shapes Military Space Research.” Aviation Week, 16 June 1958.

Sterling, Bruce. “Internet.” Fantasy and Science Fiction, February 1993.

Swartzlander, Earl. “Time-Sharing at MIT.” IEEE Annals of the History of Computing 14, no. 1, 1992.

“Transforming BB&N: ARPANET’s Architect Targets Non-Military Networks.” Data Communications, April 1984.

Wilson, David McKay. “BBN Executives Collapse in Court.” Cambridge (Mass.) Chronicle, 6 November 1980.

———. “Consulting Co. Admits Overcharge.” Cambridge (Mass.) Chronicle, 30 October 1980.

Zitner, Aaron. “A Quiet Leap Forward in Cyberspace.” The Boston Globe, 11 September 1994.

Zuckerman, Laurence.“BBN Steps Out of the Shadows and into the Limelight.” The NewYork Times, 17 July 1995.Edit

Unpublished Papers, Interviews from Secondary Sources, and Other Documents

”Act One.” Symposium on the history of the ARPANET held at the University of California at Los Angeles, 17 August 1989. Transcript.

ARPA Network Information Center, Stanford Research Institute, Menlo Park, Calif. “Scenarios for Using the ARPANET.” Booklet. Prepared for the International Conference on Computer Communication, Washington, D.C., October 1972.

Baran, Paul. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 5 March 1990.

Barlow, John Perry. “Crime and Puzzlement.” Pinedale, Wyo., June 1990.

BBN Systems and Technologies Corporation. “Annual Report of the Science Development Program.” Cambridge, Mass., 1988.

Bhushan, A. K. “Comments on the File Transfer Protocol.” Request for Comments 385. Stanford Research Institute, Menlo Park, Calif., August 1972.

———.“The File Transfer Protocol.” Request for Comments 354. Stanford Research Institute, Menlo Park, Calif., July 1972.

Bhushan, Abhay, Ken Pogran, Ray Tomlinson, and Jim White. “Standardizing Network Mail Headers.” Request for Comments 561. MIT, Cambridge, Mass., 5 September 1973.

Blue, Allan. Interview by William Aspray. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 12 June 1989.

Bolt Beranek and Newman Inc. “ARPANET Completion Report: Draft.” Cambridge, Mass., September 1977.

———.“BBN Proposal No. IMP P69-IST-5: Interface Message Processors for the ARPA Computer Network.” Design proposal. Submitted to the Department of the Army, Defense Supply Service, in response to RFQ No. DAHC15 69 Q 0002. Washington, D.C., 6 September 1968.

———. “BBN Report No. 1763: Initial Design for Interface Message Processors for the ARPA Computer Network.” Design proposal. Submitted to the Advanced Research Projects Agency under contract no. DAHC 15-69-C-0179. Washington, D.C., 6 January 1969.

———. “BBN Report No. 1822: Interface Message Processor.” Technical report. Cambridge, Mass., 1969.

———.“Interface Message Processors for the ARPA Computer Network.” Quarterly technical reports. Submitted to the Advanced Research Projects Agency under contract no. DAHC 15-69-C-0179 and contract no. F08606-73-C-0027. Washington, D.C., 1969–1973.

———. “Operating Manual for Interface Message Processors: 516 IMP, 316 IMP, TEP.” Revised. Submitted to the Advanced Research Projects Agency under ARPA order no. 1260, contract no. DAHC15-69-C-0179. Arlington,Va., April 1973.

———. “Report No. 4799: A History of the ARPANET: The First Decade.” Submitted to the Defense Advanced Research Projects Agency. Arlington,Va., April 1981.

———.“The Four Cities Plan.” Draft proposal and cost analysis for maintenance of IMPs and TIPs in Boston, Washington, Los Angeles, and San Francisco. Papers of BBN Division 6. Cambridge, Mass., April 1974.

———. Internal memoranda and papers relating to the work of Division 6. Cambridge, Mass., 1971–1972.

Carr, C. Stephen, Stephen D. Crocker, and Vinton G. Cerf. “HOST-HOST Communication Protocol in the ARPA Network.” Paper presented at the Spring Joint Computer Conference of the American Federation of Information Processing Societies, 1970.

Catton, Major General, USAF, Jack. Letter to F. R. Collbohm of RAND Corporation, 11 October 1965. Referring the preliminary technical development plan for message-block network to the Defense Communications Agency.

Cerf,Vinton G.“Confessions of a Hearing-Impaired Engineer.” Unpublished.

———.“PARRY Encounters the Doctor.” Request for Comments 439 (NIC 13771). Network Working Group, 21 January 1973.

Cerf, Vinton G., and Jonathan B. Postel. “Specification of Internetwork Transmission Control Protocol: TCP Version 3.” Information Sciences Institute, University of Southern California, January 1978.

Cerf, Vinton G. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/ IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 24 April 1990.

Cerf, Vinton G., and Robert Kahn. “HOST and PROCESS Level Protocols for Internetwork Communication.” Notes of the International Network Working Group 39, 13 September 1973.

Clark, Wesley. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 3 May 1990.

Crocker, David H. “Standard for the Format of ARPA Internet Text Messages.” Request for Comments 822. Department of Electrical Engineering, University of Delaware, 13 August 1982.

Crocker, David H., John J. Vittal, Kenneth T. Pogran, and D. Austin Henderson Jr. “Standard for the Format of ARPA Network Text Messages.” Request for Comments 733. The RAND Corporation, Santa Monica, Calif., 21 November 1977.

Crowther, William. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 12 March 1990.

Crowther, William, and David Walden. “CurrentViews of Timing.” Memorandum to Frank E. Heart, Cambridge, Mass., 8 July 1969.

Davies, Donald W. “Further Speculations on Data Transmission.” Private papers. London, 16 November 1965.

———.“Proposal for a Digital Communication Network.” Private papers, photocopied and widely circulated. London, June 1966.

———. “Proposal for the Development of a National Communications Service for On-Line Data Processing.” Private papers. London, 15 December 1965.

———. “Remote On-line Data Processing and Its Communication Needs.” Private papers. London, 10 November 1965.

Davies, Donald W. Interview by Martin Campbell-Kelly. National Physical Laboratory, U.K., 17 March 1986.

Davies, Donald W., Keith Bartlett, Roger Scantlebury, and Peter Wilkinson. “A Digital Communications Network for Computers Giving Rapid Response at Remote Terminals.” Paper presented at the Association for Computing Machinery Symposium on Operating System Principles, Gatlinburg, Tenn., October 1967.

Davis, Ruth M. “Comments and Recommendations Concerning the ARPA Network.” Center for Computer Sciences and Technology, U.S. National Bureau of Standards, 6 October 1971.

Digital Equipment Corporation. “Interface Message Processors for the ARPA Computer Network.” Design proposal. Submitted to the Department of the Army, Defense Supply Service, in RFQ no. DAHC15 69 Q 002, 5 September 1968.

Frank, Howard. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 30 March 1990.

Goldstein, Paul. “The Proposed ARPANET Divestiture: Legal Questions and Economic Issues.” Working Paper, Cabledata Associates, Inc., CAWP no. 101, 27 July 1973.

Hauben, Michael, and Ronda Hauben. The Netizens Netbook page can be found at http://www.columbia.edu/∼hauben/netbook/. The Haubens’ work has also appeared in the Amateur Computerist Newsletter, available from ftp://wuarchive.wustl.edu/doc/misc/acn/.

Heart, F. E., R. E. Kahn, S. M. Ornstein, W. R. Crowther, and D. C. Walden. “The Interface Message Processor for the ARPA Computer Network.” Paper presented at the Spring Joint Computer Conference of the American Federation of Information Processing Societies, 1970.

Heart, Frank E. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 13 March 1990.

Herzfeld, Charles. Interview by Arthur Norberg. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 6 August 1990.

Honeywell, Inc. “Honeywell at Bolt Beranek and Newman, Inc.” Brochure. Published for the ARPA Network demonstration at the International Conference on Computer Communication, Washington, D.C., October 1972.

Information Sciences Institute, University of Southern California. “DOD Standard Transmission Control Protocol.” Request for Comments 761. Prepared for the Defense Advanced Research Projects Agency, Information Processing Techniques Office, Arlington,Va., January 1980.

International Data Corporation. “ARPA Computer Network Provides Communications Technology for Computer/Computer Interaction Within Special Research Community.” Industry report and market review. Newtonville, Mass., 3 March 1972.

Kahn, Robert. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 24 April 1990.

Kahn, Robert. Interview by William Aspray. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 22 March 1989.

Kleinrock, Leonard. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 3 April 1990.

Kryter, Karl D. “Lick as a Psychoacoustician and Physioacoustician.” Presentation honoring J. C. R. Licklider at the Meeting of the Acoustical Society of America, Baltimore, Md., 30 April 1991.

———. Obituary of J. C. R. Licklider, Journal of the Acoustical Society of America, December 1990.

Licklider, J. C. R., and Welden E. Clark. “On-Line Man-Computer Communication.” Paper presented at the Spring Joint Computer Conference of the American Federation of Information Processing Societies, 1962.

Licklider, J. C. R. Interview by William Aspray. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 28 October 1988.

Lukasik, Stephen. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 17 October 1991.

Marill, Thomas, and Lawrence G. Roberts. “Toward a Cooperative Network of Time-Shared Computers.” Paper presented at the Fall Joint Computer Conference of the American Federation of Information Processing Societies, 1966.

McCarthy, J., S. Boilen, E. Fredkin, and J. C. R. Licklider. “A Time-Sharing Debugging System for a Small Computer.” Paper presented at the Spring Joint Computer Conference of the American Federation of Information Processing Societies, 1963.

McKenzie, Alexander A. “The ARPA Network Control Center.” Paper presented at the Fourth Data Communications Symposium of the Institute for Electrical and Electronics Engineers, October 1975.

McKenzie, Alexander A. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 13 March 1990.

Message Group. The full text of more than 2,600 e-mail messages sent by members of the Message Group (or MsgGroup), one of the first electronic mailing lists, relating to the development of e-mail. The Computer Museum, Boston, Mass., June 1975–June 1986. Electronic document. (http://www.tcm.org/msgroup)

Metcalfe, Robert. “Some Historic Moments in Networking.” Request for Comments 89. Network Working Group, 19 January 1971.

Myer, T. H., and D. A. Henderson. “Message Transmission Protocol.” Request for Comments 680. Stanford Research Institute, Menlo Park, Calif., 1975.

National Research Council, Commission on Engineering and Technical Systems. “Transport Protocols for Department of Defense Data Networks.” Report to the Department of Defense and the National Bureau of Standards, Board on Telecommunication and Computer Applications, 1985.

Neigus, N.J. “File Transfer Protocol.” Request for Comments 542. Bolt Beranek and Newman Inc., Cambridge, Mass., 12 July 1973.

Norberg, Arthur L., and Judy E. O’Neill. “A History of the Information Processing Techniques Office of the Defense Advanced Research Projects Agency.” Charles Babbage Institute, University of Minnesota, Minneapolis, Minn., 1992.

Ornstein, Severo M., F. E. Heart, W. R. Crowther, H. K. Rising, S. B. Russell, and A. Michel. “The Terminal IMP for the ARPA Network.” Paper presented at the Spring Joint Computer Conference of the American Federation of Information Processing Societies, Atlantic City, N.J., May 1972.

Ornstein, Severo. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 6 March 1990.

Pogran, Ken, John Vittal, Dave Crowther, and Austin Henderson. “Proposed Official Standard for the Format of ARPA Network Messages.” Request for Comments 724. MIT, Cambridge, Mass., 12 May 1977.

Postel, Jonathan B. “Simple Mail Transfer Protocol.” Request for Comments 821. Information Sciences Institute, University of Southern California, August 1982.

———. “Specification of Internetwork Transmission Control Protocol: TCP Version 4.” Information Sciences Institute, University of Southern California, September 1978.

———. “TCP and IP Bake Off.” Request for Comments 1025. Network Working Group, September 1987.

Pouzin, Louis. “Network Protocols.” Notes of the International Network Working Group 50, September 1973.

———.“Presentation and Major Design Aspects of the Cyclades Computer Network.” Paper presented at the IEEE Third Data Communications Symposium (Data Networks: Analysis and Design), November 1973.

———. “Experimental Communication Protocol: Basic Message Frame.” Notes of the International Network Working Group 48, January 1974.

———.“Interconnection of Packet Switching Networks.” Notes of the International Network Working Group 42, October 1973.

———. “Network Architecture and Components.” Notes of the International Network Working Group 49, August 1973.

RAND Corporation. “Development of the Distributed Adaptive Message-Block Network.” Recommendation to the Air Staff, 30 August 1965.

RCA Service Company, Government Services Division. “ARPANET Study Final Report.” Submitted under contract no. F08606-73-C-0018. 24 November 1972.

Richard J. Barber Associates, Inc. “The Advanced Research Projects Agency: 1958–1974.” A study for the Advanced Research Projects Agency under contract no. MDA-903-74-C-0096. Washington, D.C., December 1975. Photocopy.

Roberts, Lawrence G. “Extensions of Packet Communications Technology to a Hand-Held Personal Terminal.” Paper presented at the Spring Joint Computer Conference of the American Federation of Information Processing Societies, May 1972.

———. “Multiple Computer Networks and Intercomputer Communication.” Paper presented at the Association for Computing Machinery Symposium on Operating System Principles, October 1967.

Roberts, Lawrence G., and Barry D. Wessler. “Computer Network Development to Achieve Resource Sharing.” Paper presented at the Spring Joint Computer Conference of the American Federation of Information Processing Societies, 1970.

Roberts, Lawrence G. Interview by Arthur Norberg. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 4 April 1989.

Ruina, Jack. Interview by William Aspray. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 20 April 1989.

Sutherland, Ivan. Interview by William Aspray. Charles Babbage Institute DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 1 May 1989.

Taylor, Robert. Interview by William Aspray. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 28 February 1989.

U.S. Postal Service. “Electronic Message Systems for the U.S. Postal Service.” Report of the U.S.P.S. Support Panel, Committee on Telecommunications, Washington, D.C., January 1977.

Walden, David C. “Experiences in Building, Operating, and Using the ARPA Network.” Paper presented at the Second USA-Japan Computer Conference, Tokyo, Japan, August 1975.

Walden, David. Interview by Judy O’Neill. Charles Babbage Institute, DARPA/IPTO Oral History Collection, University of Minnesota Center for the History of Information Processing, Minneapolis, Minn., 6 February 1990.

Walker, Stephen T. “Completion Report: ARPA Network Development.” Defense Advanced Research Projects Agency, Information Processing Techniques Office, Washington, D.C., 4 January 1978.

Weik, Martin H. “A Third Survey of Domestic Electronic Digital Computing Systems.” Ballistic Research Laboratories, report no. 1115, March 1961.

White, Jim. “Proposed Mail Protocol.” Request for Comments 524. Stanford Research Institute, Menlo Park, Calif., 13 June 1973.

Zimmermann, H., and M. Elie. “Proposed Standard Host-Host Protocol for Heterogeneous Computer Networks: Transport Protocol.” Notes of the International Network Working Group 43, December 1973.Edit

Electronic Archives

Charles Babbage Institute, Center for the History of Information Processing, University of Minnesota. Large archival collection relating to the history of computing. More information can be obtained via the CBI Web site at http://cbi.itdean.umn.edu/cbi/welcome.html or via e-mail addressed to bruce@fs1.itdean.umn.edu.

Computer Museum, Boston, Massachusetts. Large collection relating to the history of computing, including the archives of the Message Group concerning the early development of e-mail. The archive is available via the homepage at http://www.tcm.org/msgroup.

Information Sciences Institute, University of Southern California. Collection includes up-to-date indexes and tests of Internet standards, protocols, Requests for Comments (RFCs), and various other technical notes available via the ISI Web site: http://www.isi.edu. Some of the earlier RFCs are not available electronically, but are archived off-line in meticulous fashion by RFC editor Jon Postel. A searchable archive is maintained at http://info.internet.isi.edu:80/in-notes/rfc.

Ohio State University, Department of Computer and Information Science. The CIS Web Server offers access to RFCs and various other technical and historical documents related to the Internet via http://www.cis. ohio-state.edu:80/hypertext/information/rfc.html.

Primary Fair Use Source: B000FC0WP6

Secondary Fair Use Sources:

Categories
Artificial Intelligence Bibliography Cloud Data Science - Big Data Hardware and Electronics History Linux Networking Operating Systems Software Engineering

Where Wizards Stay Up Late – The Origins Of The Internet

Return to Timeline of the History of Computers or History

Fair Use Source: B000FC0WP6

Where Wizards Stay Up Late – The Origins Of The Internet by Matthew Lyon and Katie Hafner

by Matthew Lyon and Katie Hafner

“Twenty five years ago, it didn’t exist. Today, twenty million people worldwide are surfing the Net. Where Wizards Stay Up Late is the exciting story of the pioneers responsible for creating the most talked about, most influential, and most far-reaching communications breakthrough since the invention of the telephone.”

“In the 1960’s, when computers where regarded as mere giant calculators, J.C.R. Licklider at MIT saw them as the ultimate communications devices. With Defense Department funds, he and a band of visionary computer whizzes began work on a nationwide, interlocking network of computers. Taking readers behind the scenes, Where Wizards Stay Up Late captures the hard work, genius, and happy accidents of their daring, stunningly successful venture.”Edit

Book Details

  • Print length: 304 pages
  • Publication date: August 19, 1999
  • ASIN: B000FC0WP6
  • Publisher: Simon & Schuster
  • ISBN: 0684832674

Table of Contents

  • Prologue
  • 1. The Fastest Million Dollars
  • 2. A Block Here, Some Stones There
  • 3. The Third University
  • 4. Head Down in the Bits
  • 5. Do It to It Truett
  • 6. Hacking Away and Hollering
  • 7. E-Mail
  • 8. A Rocket on Our Hands
  • Epilogue
  • Chapter Notes
  • Bibliography
  • Acknowledgments
  • Index

Dedication

To the memory of J. C. R. Licklider and to the memory of Cary Lu

Los Alamos’ lights where wizards stay up late, (Stay in the car, forget the gate), To save the world or end it, time will tell” — James Merrill, “Under Libra: Weights and Measures

Fair Use Sources:

Categories
Artificial Intelligence AWS Azure Cloud Data Science - Big Data DevOps DevSecOps-Security-Privacy GCP Hardware and Electronics Kubernetes Linux Networking Operating Systems PowerShell Python Software Engineering Windows Server

IaC Infrastructure as Code

Return to Timeline of the History of Computers, Networking

Infrastructure as code (IaC) is the process of managing and provisioning computer data centers through machine-readable definition files, rather than physical hardware configuration or interactive configuration tools.[1] The IT infrastructure managed by this process comprises both physical equipment, such as bare-metal servers, as well as virtual machines, and associated configuration resources. The definitions may be in a version control system. It can use either scripts or declarative definitions, rather than manual processes, but the term is more often used to promote declarative approaches.

Fair Use Sources:

Categories
Cloud Data Science - Big Data DevOps DevSecOps-Security-Privacy History Operating Systems Software Engineering

Software Design

Return to Timeline of the History of Computers, Networking

Software design is the process by which an agent creates a specification of a software artifact intended to accomplish goals, using a set of primitive components and subject to constraints.[1] Software design may refer to either “all the activity involved in conceptualizing, framing, implementing, commissioning, and ultimately modifying complex systems” or “the activity following requirements specification and before programming, as … [in] a stylized software engineering process.”[2]

Software design usually involves problem-solving and planning a software solution. This includes both a low-level component and algorithm design and a high-level, architecture design.

Fair Use Sources: