design philosophy

A Northern Perspective

The sub-Arctic regions of the Canadian Northwest Territories have many communities of fishers, hunters and trappers who live off the land with simple and effective tools.

When technology breaks down in the north, there isn't a tech support number to call, or dealership or mechanic to take it to. You're on your own.

This encourages you to care for your tools, and make repairs using whatever knowledge and resources you have on hand. People who live on the land only take with them what they can maintain, upgrade and repair themselves. Big, complex, fragile, expensive, high-performance, high-maintenance stuff is left at drydock.

The elders of the far north teach us that these human-sized and human-shaped tools are extensions of who we are. To care for one's tools is to care for one's community, and oneself. These are not separate things.

That is the key to the Tomodashi design philosophy.

Principles

All Tomodashi software is crafted with these four related ideas in mind:

1. Human-sized things are friendlier, more economical, and easier to learn.

2. The user is both a creator of things and a playful being.

3. Let people personalize, modify, and repair their toys and tools.

4. Imperfect creations feel more human, serene and beautiful.

When human qualities and self-expression become the focus of software engineering - whether it's a game or a programming tool or an IDE - all other arguments about programming and software design become moot:

No subscriptions.

No advertisements.
No machine learning generated code.
No resource-hogging, CPU/GPU-intensive bloatware.
No phoning home or collecting private data of any kind.
No obscurantist programming languages and styles.
No marketing-driven design.

Just software that makes you want to smile, like your first guitar or favourite pair of shoes.

Roots and Inspiration

There is no formal name for this kind of design philosophy, but it is deeply influenced by architect Christopher Alexander. In his architectural theory books, Alexander once termed this desire to build things imbued with human-liveliness the quality without a name. If you've read Robert Pirsig's Zen and the Art of Motorcycle Maintenance, his concept of quality has similar roots.

The DIY and aspirational aspects of the design philosophy share much in common with the Solarpunk movement, but really get their inspiration from Kim Stanley Robinson's Mars Trilogy.

From a software engineering perspective, the most important contribution comes from a now-forgotten computing science book: Richard P. Gabriel's Patterns of Software: Tales from the Software Community in which Gabriel proposes small-scale craftsman-programming as a response to large-scale development. Gabriel was also one of the first to translate Alexander's architectural theory for the computing science field.