Enduring design

Software that endures helps both people and the planet. When systems are designed to last, they reduce exclusion, limit waste, and remain usable across devices and contexts. Efficiency ensures that resources, like energy and attention, are not squandered.

Enduring design comes to life when we:

  • Support older devices and systems. Designing for backwards compatibility extends the usefulness of hardware, reduces e-waste, and keeps access open to those who cannot upgrade frequently.
  • Keep dependencies lean and maintained. Each dependency adds weight and fragility. Using only what is necessary, and choosing libraries with active stewardship, makes software more resilient over time.
  • Resist unnecessary complexity. Extra features, visual clutter, or hidden processes often increase costs and energy use while confusing users. Simplicity keeps both the system and the experience sustainable.
  • Optimize resource use. Efficient code reduces energy demand and makes software faster and more responsive. Efficiency should go hand in hand with accessibility, ensuring that performance gains do not exclude people.
  • Document for continuity. Clear, living documentation allows others to understand, maintain, and adapt the work long after the original team has moved on. This is what allows longevity to become real, not just intended.