Malleable software: Restoring user agency in a world of locked-down apps
User appetite for “malleable” vs “appliance” software
- One camp argues the mass market has already voted for sealed appliances: they’re cheaper, easier to support, and less cognitively demanding than customizable tools.
- Others counter that users do like tailoring when it’s easy enough (Windows themes, Office toolbars, WoW and game mods, HyperCard/Excel creations), and that current software mostly removes even tiny tweaks.
- Several people emphasize that tools shape culture: if environments encouraged tinkering, more people would gradually do it.
Support burden, risk, and responsibility
- A recurring objection: customization explodes support complexity. Non‑technical users change settings, break things, then blame the product and support staff.
- This is cited as a key reason enterprises and dominant vendors prefer locked‑down defaults and minimal options.
- Some suggest distributing support across communities (Linux distros, app communities) mitigates this, but that doesn’t fit centralized SaaS economics.
Existing precursors and counterexamples
- Many references: HyperCard, Excel, AppleScript, COM/OLE, UNIX pipes, Tcl/Tk, Smalltalk, napari, Decker, Scrappy, Delphi/Lazarus, COM‑style automation, modding ecosystems.
- These are seen as proof that non‑programmers can meaningfully extend tools given good abstractions, but also as examples that never crossed into mass adoption or were later de‑scoped.
AI as a change agent
- Several commenters see LLMs already enabling “home‑cooked” apps and one‑off utilities, bypassing business models and traditional boilerplate.
- The essay’s authors agree AI helps but argue OS and app architecture still assume “people can’t code”; real gains need systems centered on personal tools and shared data, not siloed apps.
- Others think people will just scrape, macro, and abuse existing APIs regardless, with developers increasingly “cleaning up knots.”
Architectural and technical ideas
- Discussion of new OS designs: shared user‑owned data backends (atproto, Solid/POD‑like ideas), local‑first storage, open file formats, version‑controlled documents, and Patchwork‑style “OS as primitives” for tools, views, and history.
- Deep technical thread on hot‑reloading and live coding: process‑like isolation, transactional object stores, safe module swapping (e.g., Theseus OS), dynamic languages, and the tradeoff between live editability and durability/tooling around plain files.
Limits, complexity, and UI design
- Some argue customization has exponential code‑path complexity and tends to produce clunky UIs with too many options.
- Others stress “software that rewards learning” and progressive disclosure: like homes, most people won’t rebuild walls, but everyone rearranges furniture if friction is low.
- There’s optimism about AI-powered natural‑language configuration as a bridge between rigid apps and full programmability.