Chapter 9 Explore the Ecosystem

Software never exists in isolation. It runs on an operating system. It depends on libraries of reusable code or external services. It uses system resources like memory, the file system, databases, and network connections. It interoperates or integrates with other applications.

When you’re focused on the internals of your software, it’s easy to forget all these dependencies that make up the larger system. You’re thinking about algorithms and business rules and user flows, not what happens if the network goes down. Yet all those external dependencies represent a wide range of places that you cannot control directly and where things can go horribly wrong. Network connectivity can be flaky. Files can be locked ...

Get Explore It! now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.