Slow Software

The “slow food” movement encourages people to take the time to cook and savor meals made with love. It emphasizes care rather than the efficiency and utilitarianism of “fast food”.

What does the software version of that look like?

The typical software application is a product of a business trying to maximize profit and efficiency. There is a constant push to release new features and upgrades as quickly as possible, at the lowest cost possible. “Quality” is defined as the minimum possible bar that is still acceptable to paying customers. It is designed with the same priorities as “fast food”.

Of course, “slow” in the software world usually refers to annoyingly unresponsive user experiences. But here I mean “slow” in the sense that the software itself was designed and built slowly and with care, the same way that a meal can be prepared and eaten slowly and with care. Such software is likely to actually be more responsive because its architecture has been more carefully honed.

Part of my design process involves doing a lot of research and prototyping and then… doing nothing for a while. I call this the “percolation” phase of design. The ideas percolate in my head, mostly subconsciously, as I go about my life. And surprisingly often, a much better solution than any I’ve previously thought of will randomly pop into my head days, weeks, or even years later!

If you’re on a treadmill of designing and building as fast as possible, there is simply not time to arrive at these better solutions.

Somatic

“It’s like a worldwide itch, like all of my limbs are phantom limbs, like I swallowed a live animal much larger than me that promptly died. And now I have to walk around with it inside of me, soul and all.”

“It’s like I was physically punched in the solar plexus with something electric that sent a shock up through my face and head.”

-Sean Cole (This American Life #806)

Magic

“My definition of magic: competence so much more advanced than yours with such alien mental models that you cannot predict the outcomes of the model at all.”

“Magicians are wearing not just better, but fundamentally differently shaped lenses to the rest of us. And regardless of your skills and experience, it is likely that you are a magician to someone else.”

-Jessica Watson Miller, “Becoming a magician

Responsible technology

“As we move into the age when technology will obliterate and ‘eat the world’ so much faster than our responsibilities can catch up, it’s no longer ok [for technologists] to say it’s someone else’s responsibility to define what responsibility means.”

-Aza Raskin (“The Three Rules of Humane Tech” podcast episode)

Software Design

Software design is not the same as user interface design. … If a user interface is designed after the fact, that is like designing an automobile’s dashboard after the engine, chassis, and all other components and functions are specified. …

Many people who think of themselves as working on the design of software simply lack the technical grounding to be an effective participant in the overall process. Naturally, programmers quickly lose respect for people who fail to understand fundamental technical issues. [But] the technical demands of writing the code are often so strenuous that the programmer can lose perspective on the larger issues affecting the design of the product. …

Software designers should be trained more like architects than like computer scientists. Software designers should be technically very well grounded without being measured by their ability to write production-quality code. … Software design needs to be recognized as a profession in its own right, a disciplinary peer to computer science and software engineering.

Mitchell Kapor (1991), via Daniel Jackson

Scarcity as a fiction

“People who see the glass as ‘half-empty’ [are] wedded to a fiction, for ’emptiness’ and ‘lack’ [are] abstractions of the mind, whereas ‘half-full’ is a measure of the physical reality under discussion. The so-called optimist, then, is the only one attending to real things, the only one describing a substance that is actually in the glass.”

-Zander & Zander, The Art of Possibility (p.109)

Design by thought experiment

It is infeasible to find a design by exploring a space of options and testing each option empirically. It simply costs too much to implement more than one or two options. …

The long established approach to evaluating designs involves expert critique. The designer… evaluates the proposed design on the basis of prior experience and deep knowledge of the domain. She anticipates the reaction of users based on the accumulated evidence of how similar users have responded to similar designs in the past. She predicts potential problems by mentally simulating the design, imagining its use in various scenarios, and subjecting the design to known corner cases. …

By critiquing ideas as they arise, a skilled designer can navigate a path from a vague intuition to a concrete design proposal, [and only then] does it make sense to expose it to user testing.

From the footnotes of The Essence of Software (Jackson 2021), p.218-219

The same is true even in science, where the decisions of which questions to ask and which hypotheses to test play an outsized, often underrated role. The use of “thought experiments”, past experience, domain knowledge, and logic is necessary in order to narrow down the vast space of possibilities.

Boredom as integrity

“I don’t know why adults were so freaked out about kids being bored. Boredom is where I get ideas about what I might want to do or create next! When I’m too busy to be bored, I just start forgetting who I am.”

-Allyson Dinneen (Notes From Your Therapist)

The problems of our time act slowly

Climate change. Obesity. Stress. Misinformation. What do they have in common?

The classic metaphor of a frog sitting in slowly-heating water is unfortunate in that we can’t really relate. “What a dumb frog! He can’t even tell the water is getting hot! Fortunately, I would notice.”

We’ve made a lot of progress with faster-acting problems. Hunger. War. You notice those pretty quick.

The problems we can’t seem to get a grip on are caused by factors that act so slowly, we don’t feel them. It’s very hard to prove that any of the thousands of chemicals widely used in consumer products are the root cause of anyone’s particular disease. Sure, many of these chemicals were shown to kill laboratory rabbits in high enough doses. But those are rabbits. And high doses. It doesn’t prove anything!

How long did it take to definitively prove that smoking causes cancer? Smoking literally involves filling the lungs with visible, foul smelling smoke! So how are we supposed to make any headway with rose-scented soap additives?

One sugary snack doesn’t give you diabetes. You can’t see the ocean rising as you drive your gasoline car or your coal-sourced electric car. You can’t feel yourself becoming radicalized as you read one more eye-catching social media post.

The best hope for progress on climate change seems to be the fires, floods, and hurricanes that we can see. Finally, some symptom that acts on a timescale we can process!

Even the Covid pandemic — which was very fast moving — can be seen as a win for science. Innovative vaccines developed and distributed in record time despite political morass. And notice — all those people with underlying medical conditions (caused by who knows what? a million bags of chips? a million applications of body lotion? a million hours sitting in traffic? just genetics?) — the cause of death is still: Covid-19. That’s the part we can see. It’s the part we can measure.

If all of this is true, then the challenge of our times is finding ways to see the slow. Juxtaposing the past and the present. Compressing big data into something comprehensible. Making statistics trustworthy. Connecting the low doses and the small moments to something larger. Seeing the big picture. Feeling the big picture.

Finding ways to make the gradual, visible.

Choice is power

“If I don’t have a plan B, I am by definition powerless. By definition, I will not take big risks. I will play it safe. But if I have a plan B, suddenly I become powerful. Suddenly I’m free to do something that I’m really excited about.”

-Frederic Laloux (via Leadermorphosis)