Skip to content

Torshi

With generative AI, you can turn ideas into prototypes and working code faster than ever before. That makes it more important that you keep the systems you build connected to people's needs and experiences. Of course, if you are a professional developer, your efforts also need to serve business goals.

We should not simply build the same stuff faster, using AI merely as an "improved means to unimproved ends"1 but use the opportunity to strive for better ends. Unfortunately, while we have an endless array of programming and specification languages, we have so far lacked a language for reasoning about improved ends3. This is the gap that Torshi2 aims to fill.

What Torshi does

At its heart, Torshi is a language for product discovery. It gives teams a language and a set of lenses for reasoning about the connection between a system's design and the role that it play in its users' lives. This goes beyond human-machine interaction design as Torshi allows you to reason about:

Experiences: what people do, need, and encounter in their lives with technologies.

Opportunities: how desired product outcomes connect to researched opportunities, solutions, and assumption tests

Rights: what people are owed, may change, may refuse, or must be protected from

Caring practices: work and relationships that sustain what allows us to live good lives

Capabilities: the genuine freedom and opportunity to achieve our potential to live a good life

Relationships: the ways that the other Torshi elements relate to each other, whether supporting or being in conflict with each other

Cross-cutting concerns: that themes running through several elements, such as security

Specifications: for implementations, be they technical systems or social arrangements such as governance policies or laws

Torshi gives you and your team a record of what aspects of human experience you have considered and a way to connect your system design back to this work. It uses plain Markdown files to make adoption easy and to allow you to use any tools you like, including AI to help you draft specifications or to check that they are coherent and consistent.


  1. Henry David Thoreau, Walden or Life in the Woods

  2. The name is adopted from the Persian term for mixed pickles. Hence the pickle jar logo. I think of the lenses that Torshi offers as the different kinds of pickles. If you don't like pickles, think of a jar of mixed sweets instead. The name is, of course, also a nod to the Gherkin language for defining testable behavior. 

  3. Voss, Alexander. Can We Move Fast Without Breaking Things? Software Engineering Methods Matter to Human Rights Outcomes. Carr Center Discussion Papers. Carr Center for Human Rights Policy, Harvard Kennedy School, October 24, 2022.