Malleable software: Restoring user agency in a world of locked-down apps
69 points by mpweiher
69 points by mpweiher
some of this feels very good, but other bits (especially the way they use and discuss “AI”) make me think they have a very, very different idea of what they actually want from a software system than i do
which like. fair? but something about it all just feels… off, to me, in a way i struggle to explain.
i think bc for me the phrase “malleable software” brings to mind something like a FORTH system, more than… the poorly-defined interactive networked multimedia workspace thing with unclear but seemingly complicated technological foundations that they seem to be using?
I think a part of what bothers me with using AI here, is that mallable software is partly about independence, which is quite the opposite to what AI provides.
Or alternatively, if we all need heavy GPUs to run local LLMs, many of our old devices are rendered obsolete, and giving new life to old devices is another reason for malleable software.
Absolutely. More broadly, hosted SaaS offerings are often cited as empowering for less technical users as it allows them to hit the ground running quickly and share their creations easily via a hyperlink, but the cost is leaving those users utterly dependent on a third party which could disappear, change pricing structure, or generally “enshittify” over time.
In my opinion, being able to run a piece of software on my own computers, without telemetry, and upgrade it only with explicit consent ought to be considered table stakes for any software that purports to be user-empowering.
Remember that time when some stubborn genius decided to build a complete user-centric computing environment on top of a FORTH system?
Smalltalk got a mention, but an unfortunately superficial one. This is what Alan Kay’s whole career was about, if you ask him.
And at the end, they mention “Business models” and “Culture” as “big challenges we’ve mostly left out of scope”. Good for at least acknowledging those, but… I’ve come to see economic incentives and related cultural factors as not just the crux, but in some sense the entire struggle. It’s relatively easy to whip up another hopeful low-code/no-code product or starry-eyed FOSS project, but shallow techno-solutionism isn’t going to fix any of this.
I applaud the vision and the prototypes. I don’t think computing will ever fully resemble a luthier’s workbench, but in some ways it actually already does. There are many open standard formats and tools for working with and converting between them, the existence and value of which are under-acknowledged, both by users in general who are only now beginning to appreciate the consequences of modern vendor lock-in, and the latest batch of startups that would be perfectly happy to lock their users in for as long as users don’t demand portable data. Things are actually better than they seem. We are living in an era of greater portability (or at least potential for it) than ever. Anyone remember the desktop OS wars and asking what format the floppy disk was in? Or when most viable programming languages and tools were commercial software you had to buy, pay to upgrade, and pay for the documentation?
The article mentions Google Maps as an example of modern lock-in. There is in fact a lot of work that has already been done and is ongoing to liberate maps from the handful of commercial sandboxes that used to dominate them. Some of the best base map data comes from OpenStreetMap, which is quickly turning into the Wikipedia of maps and one can now self-host in crisp vector format with Protomaps. Also check out OGC 3D Tiles, which you can see with stunning atmospheric scattering in Takram’s three-geospatial project. More recently, MapLibre Tiles is aiming to succeed MVT, which itself is an open source standard.
Finally, at the risk of quibbling, I think this is backward:
Bringing AI coding tools into today’s software ecosystem is like bringing a talented sous chef to a food court. If you’re used purchasing meals from a menu, a skilled chef can’t do much to help you. Similarly, if you’re using closed-source software from an app store, an AI coding assistant can’t do very much to help you as a user. To fully take advantage of the capabilities of AI, we need to move past the food court to something more like a kitchen—a site of open-ended creation.
AI tools are the food court food prep employees. We humans are the chefs. If the goal is open-ended creation, we need something better than agents that repackage whatever content they scraped off the web. We need to understand what our ingredients are and where they come from, or we are participating in the erosion of our own supply chain.
I think the use of the term “sous chef” there is carefully chosen. The sous chef is the second in command: they have skills and experience but they’re not providing the overall creative vision of the head chef, they’re acting on what that chef tells them to do.
I think this is a great initiative. Somewhere UX became about getting people from A -> B and providing a “service”, rather than helping people help themselves. It works when your interests are aligned but in this geopolitical landscape I think societies begin to understand that that is not always the case.
Salesforce and Jira exist right? Salesforce in particular to me feels extremely malleable. Enterprise software feels like it matches things here and if anyone cares about this I highly recommend going through the Salesforce training things (I think it’s called campsite?) and you can see that it’s a full system.
These tools end up getting very locked down though, because there’s such a huge blast radius in mis-configuring bulk actions on shared data… but also just because of aggressive use policies.
There’s also just a bit of “I don’t know how to express what I want” problem, that I think some of the AI toolign can help out with. I think it would be worth actually doing a case study on the existing malleable tooling out there, because it exists.
EDIT: my glib pitch for the value of staring at salesforce is “it’s spiritually a smalltalk environment”
But they are the exception. I think it’s funny how many big SaaS (ServiceNow also comes to mind) are basically big honking CRUD frameworks that you can extend. And I think some of them are improving the ability of just making it easy to replicate your data to your own database so you can query freely.
But I rarely see anything like this for end customers.
I wanted to do some mute integration with Google Meet. Well, you gotta reverse engineer their JS. I want to get an overview of the trains running an itinerary to choose one that is not overcrowded. Well, I need to fight train websites with Playwright. I want to plan which streaming services I’m getting and when. Surprise! I could use a crowdsourced database of TV shows to do that. But good luck getting this directly from the providers.
In a utopia future, every service you pay for should provide you an API. I have kinda mixed feelings on whether this is going to happen through MCP because of AI. (But so far, I haven’t seen anyone providing an MCP for all those services with juicy data they don’t alllow you to touch.)
(Also, open protocols and stuff. And once anyone can write software to interact with, some problems can (but might not) improve, like accessibility.)
Maleable for whom, though?
This is valuable to think about.
Enterprise customers could give full access to all of their users to modify their SFDC environment. They do not, despite having that capability.
Maleability for each and every end user is not seen as a valuable thing in most controlled environments, because a lot of software is about managing dataflow through specified processes, that have been defined in a top-down manner.
There are orgs that run with a more open and autonomous spirit! So you could write software targetting them and even outright rule out access control concerns! Or show existing maleable software to them and see how it works.
One good example of this for me is Zapier. Giving a team full access to Zapier and just going for it is often super beneficial when people are in the right mood.
But if your business critical functions are on the automation that you’ve set up in there…. suddenly it’s pretty scary to imagine your customer support person accidentally turning off a thing that relates directly to you collecting money to customers.
I haven’t used Zapier, but most CRM/ERP software I’ve encountered is purchased by the upper management of very large, top-down organizations with a checklist of feature requirements—all of which can be checked because the software is basically a proprietary toolkit consisting of a database and some not-especialy-good UI components—then is customized by a small army of certified specialists, administrated by IT, and really only used by plebeian workers, many of whom would like to have some ability to configure their tools to their needs, but have absolutely no such ability. And the lock-in is atrocious.
Yup, last few organizations I worked for were something liberal in granting you access to APIs of their tools. I could integrate things with Google Workspaces and stuff. People did interesting things. But I think this is still rare?
This is great stuff, and is something I’ve been interested in for years now.
I feel like it’s sometimes difficult to even envision what systems without applications as a fundamental unit might look like from today’s perspective. I chalk that up to the desktop environments we’ve had for a while all being built around apps; few of us have ever used a Lisp machine or a Xerox Alto. I think using such older systems and reading the literature from those early days of GUI experimentation can be useful for breaking out of our ossified mental models of what a GUI can be.
(And this article has a lot of references I’ll have to dig into some more later! Buttons sounds very interesting.)