Malleable Software

Table of content

Personal computing promised clay. We got appliances.

The original vision was a material users could reshape at will. What shipped was sealed boxes built by distant corporations. You adapt to the software instead of the software adapting to you.

The Problem with Applications

The “app” model assumes passive consumption:

Plugin systems don’t solve this. They only allow changes the developer anticipated and authorized. No plugin surface for your specific need? Out of luck.

Clay vs Appliance

From the Ink & Switch Malleable Software essay (June 2025):

“The original promise of personal computing was a new kind of clay — a malleable material that users could reshape at will. Instead, we got appliances: built far away, sealed, unchangeable.”

A guitar maker arranges their workshop with tools positioned just so. They build new tools as needed — a wooden block for support, pliers sanded into the right shape. Physical reality is malleable. Software should be too.

The Home Kitchen Metaphor

Malleable does not mean disposable.

From Geoffrey Litt’s interview:

“When I say malleable software, I do not mean only disposable software. The main thing I think about… is actually much closer to designing my interior space in my house. When I come home I don’t want everything to be rearranged. I want it to be the way it was. And if I want to move the furniture or put things on the wall, I want to have the right to do that.”

The goal is crafting an environment over time:

DisposableMalleable
Generate and throw awayBuild and refine
No continuityPersistent customizations
Start fresh each timeEnvironment compounds
Tools don’t learn youTools fit your patterns

Chef Knife vs Avocado Slicer

General tools beat specialized gadgets.

An avocado slicer does one thing. A chef’s knife handles everything. Most kitchen gadgets end up in a drawer. The knife stays on the counter.

Software has the same pattern:

Specialized ToolGeneral Tool
Single-purpose appComposable building blocks
Works for one workflowAdapts to many
Obsolete when needs changeEvolves with you
Vendor lock-inUser control

AI Coding: Potential and Limits

LLMs give everyone the ability to author small bits of code. This matters for malleable software because:

But AI alone is insufficient:

The problem isn’t generating code. The problem is the architecture of our computing systems. Every layer — programming languages, operating systems, app stores — assumes users are passive recipients.

Using AI to Build Tools for Yourself

A promising pattern: don’t have AI write your code. Have AI build tools that help you code.

From Litt’s debugger experiment:

“What’s unusual here is: the AI didn’t write a single line of my code. Instead, I used AI to build a custom debugger UI… which made it more fun for me to do the coding myself.”

Working on a Prolog interpreter, Litt encountered tricky unification bugs. Instead of having AI fix them, he had it build a visualization tool. The debugging became enjoyable rather than frustrating.

This is the chef knife approach to AI:

Local-First Principles

Malleable software needs a technical foundation. Local-first software provides it:

  1. No spinners — Work is local, apps are fast
  2. Your work is not hostage — Data lives on your devices
  3. Network optional — Full functionality offline
  4. Seamless collaboration — Real-time sync when online
  5. Long-term preservation — Data outlives applications
  6. Security and privacy — End-to-end encryption
  7. User control — You own your data

Without local-first principles, malleable software remains dependent on corporations. Your customizations live on someone else’s server.

Key technologies:

Examples

Wildcard — Browser extension that lets you customize any web app using a spreadsheet. Augment sites with a synchronized data view. Sort, filter, compute formulas, pull in related data from APIs. No traditional programming required.

Potluck — Gradual enrichment from docs to apps. Start with plain text notes. Add live searches that extract structured information. Write formulas. Display results as dynamic annotations. Your document becomes personal software.

Both work the same way: start from something familiar (spreadsheets, documents) and let people add computation gradually.

What This Means for Personal OS

Building a personal operating system requires malleable software:

A personal OS isn’t an app you download. It’s an environment you build, break, and rebuild over years.


Next: Geoffrey Litt’s Malleable Software Vision

Topics: personal-os ai-coding architecture