Designing Digital Products for the Long Term

Daniel Sauble
UX Collective
Published in
16 min readDec 2, 2015

--

Architecture is thousands of years old. Many buildings that were built hundreds of years ago are still functional, beautiful buildings today. The best buildings get even better over time, becoming something their original designers could not have anticipated.

Why isn’t modern software that way?

https://www.flickr.com/photos/amesis/

Most of the digital products we design have a useful life of months or years. How can we use lessons from architecture to create digital experiences that remain useful over decades, centuries, or millennia?

There are, I think, three fundamental shifts required to make this happen:

  1. Designers must be empowered to ship experiences that they’re proud of.
  2. Software must be heirloom quality. Something you would pass on to the next person. Not a disposable entity that only the purchaser will ever use.
  3. People must have the means to own and maintain their digital products.

We’ll go over each of these in detail. The first is a concept that’s very much in vogue today. The second is something that we don’t consider nearly as much. The third almost never happens in the real world.

Case Study: Enterprise IT Software

I’m a UX Developer for Sonatype, a leader in the software supply chain management industry. We design and build tools for large enterprise IT organizations. The nature of these tools plays very strongly to each point above.

Sonatype Nexus Repository Manager

First, the UX of enterprise software is notably behind the curve set by consumer software. We strive daily to bring quality to tools that have historically been hidden or seen as a non-essential part of the processes and people they support. Unfortunately, the IT industry hasn’t yet adopted UX the way other industries have.

Many designers working on enterprise tools are not empowered, and–as a result–do not have the impact on shipped product that they would like. This has a direct correlation with the end quality of the tools.

Second, enterprise software is not traditionally purchased by the person who uses it. Unlike consumer software, the purchase decision is made by management, people who will (likely) never use the software themselves. The people who actually use it daily have little to no say in the matter. When those people move on, they pass their tools and knowledge to the new batch of hires.

Enterprise software is very expensive and alternatives are harder to come by. Once an organization has adopted a piece of software, the high cost of switching means that they’re stuck with it, warts and all, sometimes for decades.

Third, enterprise software is often customized by the organizations that purchase it. I’m not talking about visual changes, like a skin for your media player. These are fundamental changes to how the software works. Many enterprise software companies have a team which works directly with customers to understand and meld the software to fit their needs more precisely.

This has severe implications for how software is developed and distributed. Since customizations are often irreconcilable with the base software, automatic updates are uncommon, and hacks and cult knowledge about how the system works are a cottage industry in and of themselves.

In short, enterprise IT software is a perfect catalyst for a conversation about how we can design better digital products for the long term.

Empowerment

If you look at any great building, it was driven by builders and architects with a singular vision of what could be. Many of these buildings were deemed technological impossibilities. Others were criticized as pointless, or worse. Regardless, they were built, and their enduring legacy speaks for them.

https://www.flickr.com/photos/nickimm/

We need more big thinkers in the software design community. People willing to promote new ideas and lead efforts to solve important design problems in an excellent way. People like Michelangelo, Brunelleschi, Ahmad Lahauri, or the unknown geniuses behind buildings such as the Pantheon in Rome, Notre-Dame of Paris, and the Great Pyramid of Egypt.

As we continue to integrate software into physical objects, we get a glimpse of what this looks like. Things like the first iPhone, the Nest thermostat, or even the Voyager I probe. They all have a legacy that speaks to the vision and ambition behind them.

The question is whether long term thinking can become the norm, and whether software can embrace the same sort of excellence as the older disciplines of architecture or industrial design. The medium of digital design is still so immature, it’s sometimes hard to tell what will endure, and what will fade away.

Consumerism and the digital realm

Software and digital hardware are produced and consumed in tight loops. Every couple of years, you need a new phone, a new operating system, a new laptop. When you update one thing, you discover that something else no longer works and needs to be replaced. We prioritize new experiences over supporting the old ones.

If software took the long view, we could free ourselves from this death spiral. Some software does this to an extent. Each release of Ubuntu LTS is supported for five years. The Linux kernel is maintained for even longer: version 2.0 is nearing its 20-year anniversary. TeX 3.0, the last major version of the typesetting program by Donald Knuth, has been maintained for over 26 years and no new major versions will ever be released.

As these examples show, long term software isn’t a myth. It’s just a rarity, due to the discipline and investment required.

Think like an architect

Many buildings have stood the test of time. But it’s not just about the materials used in construction. Durable materials can create a building that can withstand a beating, but isn’t necessarily loved. Skyscrapers made from concrete and steel are notorious for being horrible places to live, due to the difficulty associated with getting outdoors.

Contrast this with a humble timber-framed dwelling that has been well-loved and maintained for hundreds of years. Similarly, there are buildings made from stone, brick, or steel that are equally well-loved and lived in. The raw materials are a very small part of the equation.

In How Buildings Learn, Stewart Brand makes an excellent observation that buildings, like onions, have multiple layers. Each layer has its own lifespan. The shell of a building may last hundreds of years, the pipes and wiring in the walls may last a few decades, the arrangement of furniture inside may only last a year or so. To ensure that each layer can be maintained easily and cheaply, each layer must be independent from the others.

Put together, the essence of a quality building is that it is well-made, easy to modify and maintain, and designed in such a way that its occupants enjoy living in it. In software, we brush against these ideas with concepts like MVC, OOP, SOA, and versioned APIs, but these concepts are still ghosts of what software could be.

Outliers in the digital realm

It would be disingenous to say that nobody is striving for these ideals today. There are many companies who design products that embody a long term way of thinking.

NASA is known for space exploration. As part of these efforts, they manufacture and launch spacecraft that are amazingly resilient and exemplify good long term thinking. Voyager I was launched in 1977 and still communicates with the Deep Space Network today. It is expected to continue operating until sometime after 2025, over 48 years since launch.

Apple is known for computing products that place a heavy emphasis on industrial design. In 2007, they entered the mobile space with the iPhone. It has proven to be one of the more notable mobile computing devices in history. Durable construction, 3–4 years worth of OS updates, 7 years of hardware support, and almost infinite extensibility via the App Store. It’s not uncommon for an Apple device to be owned by multiple people over its useful life. In recent years, the UX of Apple products has slipped, but they remain a leader in many ways.

Nest Labs is a more recent company, founded in 2010 and known for their namesake thermostat, Nest. Like Apple, their industrial design is exemplary, and while they haven’t existed long enough for us to tell if their products will endure, the products that exist are well-built and well-loved. The odds are in their favor.

These are just a handful of examples. These companies are populated by people who are empowered to push the status quo. Even so, consider how much further they have to go to reach the quality seen in long-lived architecture. But that’s not a bad thing. It’s an exciting time to be a software designer.

Quality

Anyone who has read Zen and the Art of Motorcycle Maintenance knows how difficult it is to pin down the concept of “quality”. Christopher Alexander makes a compelling case in The Timeless Way of Building that merely describing why certain buildings are special is a non-trivial task. Reproducing those successes elsewhere is even more difficult.

https://www.flickr.com/photos/75487768@N04/

One way you can approach the problem is to examine digital experiences that are exceptional and understand the common patterns that make them so. We can then build our own digital experiences based on these patterns and–over time–raise the bar of our entire profession.

Patterns of a building

The quality of great architecture can be defined in terms of its patterns. As a building occupant, there are certain activities you perform on a regular basis. Cooking, sleeping, entertaining guests, reading, gardening, working. To the extent a building makes these activities enjoyable and eliminates unwanted distraction, the more quality it has.

Beyond your personal behavior, consider how a building integrates into its environment. Does it allow you to engage with your yard, your friends, your neighbors, your city, your part of the world? A building that is one with these things is a building of quality.

These are fuzzy concepts, vastly more complicated than the mere details of construction. Permanence in architecture doesn’t necessarily mean permanence in materials or design. A quality building seems to almost magically repair and maintain itself, as the people who love and cherish it are more than willing to invest in its upkeep.

The quality of digital things

Compared to architecture, things which are digital tend not to last as long. In the examples above, a piece of software with 26 years of useful life is seen as the rare exception, not the rule. Software is complex, hard to write, expensive to maintain, and malleable, resulting in continual reinvention of the wheel. If not planned obsolescence, incidental obsolescence.

Software archives such as CPAN and Maven Central have helped us take great strides towards creating a shared cannon of software that can be reused as needed. Basic patterns are easy to come by: sorting, data types, I/O, networking, and security. We even have frameworks like Bootstrap and Ext JS, which provide styling and backing logic for a wide variety of common UI controls. Responsive web design is a wonderful way to separate layout from the display technology we use.

These are all powerful innovations which bring us closer to an architectural sense of quality. What’s missing, however, are the holistic patterns around user behavior and interaction with other people and tools. These are difficult things to do well, and since they’re largely created from scratch today, the quality of software UX varies widely.

Also, digital design has traditionally occurred within the bounds of a pane of glass. This is not a particularly natural or delightful medium for people to use. As we meld industrial design with software, we begin to see bespoke interfaces in the wild, such as Nest, Apple Pencil, Oculus Rift, and Force Touch. These add richness to software and will, in time, provide an additional measure of quality that has been lacking in the experience.

Finally, due to the complexity of digital products, a certain amount of fragility is associated with them. Simple things, in general, are more robust than complex things. The following innovations have all contributed to making computers more robust:

  • Transistors (replacing vacuum tubes)
  • LCD displays (replacing CRT technology)
  • Solid state drives (replacing magnetic hard drives)
  • Unibody construction, using metal and carbon fiber instead of plastic
  • Lower voltages (resulting in less heat, eliminating fans in some cases)
  • Radiation hardening (especially in extreme environments, such as space)
  • Toughened glass or alternatives such as sapphire glass

These are all vital steps towards turning digital products into items of heirloom-like quality. There is much more work to be done, such as making interfaces impervious to the elements (interacting with a wet touchscreen is notoriously difficult and electronics are easily damaged by humidity, water penetration and heat) or increasing the useful life of internal components, such as batteries (which lose anywhere between 6% and 30% of their capacity per year).

Maturity of the medium

Unlike architecture, computing is a young discipline. Obsolescence is a common complaint of modern digital products. Technology continues to advance at a tremendous pace, and while we’ve come a long way, we’ve a long way to go in terms of getting our devices to provide a user experience that is indistinguishable from the real world.

This is important for a couple of reasons. First, the uncanny valley hypothesis posits that humans will never feel completely comfortable with technology that doesn’t behave exactly like natural beings. Robotics and 3D computer animation are two areas affected by this problem in particular. Eventually, this valley will be crossed, but we’re not there yet.

Second, long-lived systems that have digital components often find that the digital aspects of the system go obsolete long before the rest of the system. Car entertainment systems are a key example of this. A car has a 20 year useful life, while today’s digital devices have maybe a quarter of that longevity.

In both cases, a problem exists because we can distinguish a difference between the technology of today and the technology of a few years ago. Screen resolution, touchscreen responsiveness and frame rate are all symptoms of this.

When technology becomes sufficiently advanced, the problem resolves itself. A great example is the introduction of high density displays over the past few years. As displays achieve an angular resolution that exceeds what the human eye can resolve, future improvements to resolution won’t even be noticed. Another example is CPU speed. Apple doesn’t even talk about CPU frequency anymore. This is because modern CPUs are more than fast enough for the vast majority of applications.

Designing for the past

Humans adjust to new interaction paradigms slowly. When you update your operating system, you may find yourself struggling to find familiar features. This is an indication that things changed too quickly or that the designers didn’t think to transition people to the new way of working with their devices.

Donald Norman borrowed the term affordance to describe what a user expects to happen when they click or manipulate an interface element. If this expectation doesn’t map to reality, that indicates a problem with the design. Probably the designer didn’t perform adequate user testing.

Similarly, if an affordance is completely absent, a user is unlikely to realize that an interface element is even present. This situation is ironically referred to as a hidden affordance, and results in interfaces which are visually simpler, but rely on a certain amount of serendipity for people to make use of them.

Neither of these situations is ideal. In our lust for flat, simple interfaces, we’ve sacrificed many of the tenants of good design that make a user’s first-encounter with a digital product a pleasant one.

Designing for the future

UX design is still commonly thought of as the art of making things look “pretty”. This is a false perception, but more importantly, it strikes at the heart of long term design thinking. As we mentioned earlier, each layer of a building has its own lifespan. The innermost layer, the stuff, is most temporal. Visual design can be like this, requiring a fresh coat of paint every few years in an endless cycle of rework.

If we’re going to design products that carry a legacy far into the future, we have to look past the surface details. Craigslist.org is an incredibly ugly website, but the interface has remained practically unchanged over the years. It’s timeless in the same way an aesthetically ugly but functional building is timeless.

This doesn’t mean that visual design can’t move forward. However, it means we shouldn’t sacrifice the usability of a long-lived piece of software for the sake of remaining “fresh” or “recent”. I may remodel my kitchen, but I’m never at a loss about how to use it just because I replaced the cabinets and countertops.

Ownership

Last, and most importantly, software must have the capacity to be owned. You may be able to give your grandfather’s watch to your son or daughter, but it’s unlikely that you’ll do the same with your to-do app or MacBook.

People rarely own their software-based experiences. Increasingly, we rely on subscription services, or have to buy new software when we switch operating systems or the support subscription expires. This is renting, not ownership. We simply don’t possess the means or expertise to maintain the digital things we use on a daily basis. That’s a problem.

Beyond this, cracking the problems of security, privacy, and identity are fundamental to the concept of ownership. If you can’t protect your digital identity from hackers, or control what other people can see, you may as well live in a glass house surrounded by rocks. That’s a feudal society at best.

To build digital experiences which last, we must decentralize everything. Centralized things have a single point of failure and drain us of the ability to own and maintain our digital products. Bitcoin and PGP are two examples of decentralized experiences that do not require a central authority figure. Git is another. We must emulate these services if we are to move forward with long term design thinking.

Standing alone

Maintenance is a key piece of long term design. If something cannot be maintained, it dies. Simple things are easier and cheaper to maintain than complex things. One example I like to bring up is the Clock of the Long Now. It is a clock which will live in the middle of a granite mountain and keep time for 10,000 years.

Three of the clock’s key tenets are maintainability, transparency, and evolvability. It must be able to be maintained with nothing more than Bronze Age technology. It must be completely transparent and understandable without stopping or disassembly. It must be possible to improve the clock over time.

Most architecture adheres to these tenets as well. Our digital products should too. If a product requires a shop full of high-tech tools for basic maintenance, or contains internals that cannot be understood (even at a high level), or requires extensive disassembly to maintain, we should rethink the design.

In this area, Apple has fallen well behind. iFixit is a website which provides the valuable service of teaching people to maintain their own devices. The latest OSX and iOS devices rate extremely low on their ability to be repaired by a do-it-yourselfer. Components are glued into place, memory is soldered to the motherboard, custom screws hold everything in place.

Apple has sacrificed maintainability for good battery life and an exceedingly thin form factor. Worthy goals, but as technology continues to improve, these will become easier to achieve without sacrificing maintainability.

Security of connected things

Digital things are connected things. Connected things are inherently vulnerable to hackers and computer viruses, which compromise a person’s control over their digital products. Security is vitally important and very hard to solve well.

I touch on this in another article, but the lynchpin is your digital identity. Your identity is what ties you to your digital products. If this entity is compromised, any and all of your digital products can be compromised at will. To protect your identity, you need to control who has access to it. This is what security and privacy are all about.

If we’ve learned anything from numerous credit card leaks and the infamous Jeep hack of 2015, outsourcing our security to single points of failure is a bad idea. We need to take back control of our identities with decentralized mechanisms that cannot be compromised, even by those who host the bits. We can learn much from PGP and Bitcoin, two leaders of decentralized thinking around email encryption and cryptocurrency, respectively.

By doing this, we can truly own our digital identities. If a company folds or is compromised, our digital products remain safe, isolated from the source of the trouble. If we choose to give our digital products to someone else (because they’re heirloom quality, right?), we should be able to transfer ownership peer to peer, without going through a third party.

Flexibility is strength

A modular or service-oriented approach to design is stronger than an inflexible all-in-one approach. Iterating to perfection is better than trying to get everything right the first time. Designing small pieces and connecting them is easier than designing a large system and implementing it top down.

Architecture is not this way. Yes, you can improve a building after you’ve built it, but only at great expense and effort. In contrast, software is extremely malleable, easy to change. You can hit ‘undo’ if you make a mistake, something a master craftsman can never do with a block of marble.

Take advantage of this and experiment relentlessly. Measure, learn, iterate. Keep what works, discard what doesn’t. Get the small pieces right and build from there. Create something which works, then optimize and improve.

At the same time, don’t be reckless. An hour spent at the whiteboard can save days at the keyboard. Do things the right way. Don’t take unnecessary shortcuts. Remember, you’re designing something for the future. Take the time to build something you’ll be proud of decades from now.

How do I get started?

So you want to be a long term designer? Here are a few practical things you can do to get started.

  • Work somewhere that encourages you to care about tomorrow.
  • Understand the entire lifecycle of your products.
  • Create an idealized vision of the future and advocate for it.
  • Set long term goals and measure progress against those goals regularly.
  • Build compelling products, but always be investing in the next big thing.

Any feedback or thoughts, please shoot them my way. I’m always trying to improve the way I think about these things. Thanks for reading!

Daniel Sauble is a UX designer, speaker, writer, and one-time runner of ultra-marathons. He recently published his first book, Offline First Web Development, and is already plotting his next downfall.

--

--