Definition
Platform Extensibility is a product design approach that allows developers and users to expand, customize, or build on top of the system (e.g., app stores, plugins).
Why It Matters
It fosters ecosystems and compounding value through developer contributions.
Core Concepts
- The Appliance Vision (Jobs): Computers should be like household appliances—beautifully designed, self-contained, closed, and working perfectly out of the box with zero user modification required.
- The Extensible Vision (Wozniak): Computers should be platforms that empower other creators. By adding expansion “slots” (as in the Apple II), third-party developers can invent new hardware capabilities and software applications.
- The Timing Factor: In the nascent stages of an industry (like the 1970s PC market), extensibility is often critical for survival because the primary manufacturer cannot anticipate every use case (e.g., the unforeseen invention of the VisiCalc spreadsheet, which required expansion).
- The Apple II Resolution: Wozniak won the argument to include expansion slots in the Apple II, which proved to be the correct decision for that era and led to the machine’s massive, enduring success.