I agree that the current state of software is quite rigid. There is no room for imperfection and often one opinion is seen as fixed the best.
I think the essence of the GPL is trying to solve this issue, the freedoms of that license is focused on keeping software as editable as possible. The idea of malleable software is not new but most "business/industry" software is still very rigid.
One of the more interesting realized concepts of malleable software are the freewheeling apps from Kartik Agaram (https://akkartik.name/freewheeling/). Additionally in my opinion the idea of malleable software is at the core of unix everything is a file and the plan 9 system.
This whole article is true and to the point but... reality is: most people still don't build their own setups: work, home - most of them follow a sh*tty software or decorate with Ikea. I think this applies only to a small group of users how will be willing to go extra mile and prompt their ideal interface for whatever they need to do.
The realization that "normal" people don't care and will never care was the saddest for me. There are so few people who care. We're essentially irrelevant in the grand scheme of things. We have no leverage.
When I was younger and I heard the saying along the lines of "struggling against the indifference of the universe" I didn't realize at the time it included people too.
Different people care about different things (beyond near term well being). We have no ability to be deeply involved in million different topics, but most of us care about several. And random couple of people may have no intersection and could symmetrically see each other as a "useless normie".
That's, uhm, normal and why groups form by interests, from cooking to hiking to reading to hackerspaces to rocketry. I see it as neither bad nor sad. My 2c.
I seriously encounter this hand-wringing on HN. You are pointing out a real problem in the world. A problem that, if not solved, will keep most of the people in the world helpless and at the mercy of governments, billionaires and the platforms they control.
But I don’t like to just bitch. I like to build. So then I show the free and battle tested software I built lovingly over a decade, that solves exactly this, and that I use in my own companies, but also give away for free
We're not just bitching. I've contributed to free and open source projects. I've reverse engineered my laptop and released Linux free software. I'm investing in local inference computers. I've even created my own programming language.
We're doing what we can. The point is it's not enough. One day they will lock us out either way.
The whole point is we can't create an open source computer fab. They cost billions of dollars. It's just not happening. We can make free software at home, but we can't make free computers in our garages. Unless we figure out a way to do this, it's pointless. The chip manufacturers will be the ones responsible for the end of our freedom.
I think one of the best ways of stopping lock-in is to be file-based. Obsidian is a good example of this. Users can just keep their data as is and move on with their lives.
Many people like email for a similar reason: Every message is an independent item that can be moved and copied at will, organized into folders, filtered and sorted, moved between accounts and email clients, attached to other messages, saved and loaded as files, and so on.
Intelligence and the mental load it requires has a budget - in both real and artificial forms. In real - people are bombarded with tools and requirements and when the teams behind those don’t consider mental load required, that spends down the budget. Thus people give up fighting all battles and are forced to prioritize their resources. Denial of service attack on the brain. AI models running out of context will do the same and get lazy. Sadly any bad actor private or government knows this and uses it as a tool to fight intelligent resistance to its plans.
I believe it is critical for regulators to force mega-corporations (and software vendors in general) to permit third party clients.
I use services like YouTube every day, why can I get sued if I write my own YouTube client that's better than the one provided by Google? Why can I get sued if I create a chat client that aggregates the myriad of chat services I use?
I'd argue that this even extends down the stack. Why is there only Android and iOS? It's because hardware drivers are practically impossible to write for undocumented hardware (which is virtually all hardware). Vendors should be compelled to document their hardware such that drives could be produced for them.
Asahi Linux is a testament to a team attempting the impossible and making unbelievable progress - but it's still not competitive with first party drivers.
I want a world where I can run Linux on my MacBook Pro and my phone. I want a world where I can flash a custom firmware to my TV that removes the bloat and spyware. I want a world where I can use the services I depend on in ways that are better than what the vendor can produce. I want a world where I can rebuild applications and games lost to time.
Everything you listed is exactly the reason why copyleft and GPLv3 needs to be the first and foremost license when opensourcing. If proliferated, it can give you all of these freedoms listed that you (and i) desire.
> If proliferated, it can give you all of these freedoms listed that you (and i) desire.
Hold up, let's not oversell things here. GPL/Copyleft just means that you have to share source if you share binaries. However big companies exploit the digital commons differently now.
Instead they run the important pieces remotely in their data-centers, and release neither binary nor source. If they do a client binary (e.g. phone apps), they can just sprinkle in some naive encryption and some "copyrighted content" on the server. Then if you make a custom client--or even document how to do it--you might go to jail. [0]
That means if the OS is too big a of a step, start with an application. If the hardware is too locked down, start with data so that next time you buy hardware, you will bring over that data then switch. Don't postpone.
Some of it, you are. At least for personal use. Our minds are our own jails here - we treat abstraction layers as more than suggestions, and vendor preferences as more than opinions. I recommend to try and challenge it.
LLMs, whatever you think of them, currently alter equation a lot when it comes to one-off work like this. I have the skills too (for some of these things), but I don't have time/energy/capacity to do the things necessary to bypass around the obstacles. LLMs do.
Maybe I'm uneducated here, but wouldn't this just commoditize the products of companies? Would it disincentivize them from creating their products in the first place?
YouTube's product is the commercials it targets with the collected user data, not the web or phone client. So as long as the client doesn't get in the way of showing these advertisements and collecting that user data, it should not matter to them.
In more general case, you don't pay for the client software (or web page), you pay for the service provided trough it, so it should not matter if you use the service trough different client.
Of curse, many of these new clients do provide options for getting around the data collection or make it possible to block the advertisement, and that makes the companies so strict about who makes clients and how.
In a sense, yes - intuitively, you'd think it's bad but historically it's actually a major accelerant to innovation.
Essentially, if competition entered the market, Apple (and co) aren't going to give up, they'd be forced to innovate in order to retain market share.
If individuals (like me, some random on the internet) were permitted to create competing services on top of hardware and software that exists, you'd be running SteamOS on your MacBook, you'd be plugging your phone into a USB-C dock or lapdock, you'd be able to export data from your health tracker so you can buy a new one and keep your existing data, etc.
By contrast, the status quo of permitting corporations to attain functional monopolies by making it practically impossible to compete is a far worse outcome for the general consumer.
Also, when you consider that the EU is looking at cutting their reliance on US technologies - they are literally not going to make a MacBook or iPhone in this decade - but if Europeans were allowed to install their own software on these devices, the road to sovereignty gets a whole lot less impractical
Also, as stated below, as long as you don't prevent YouTube (or similar) from making money from ads (ad blocking, etc) - there is no reason to not allow you do to this.
Did TV, VCR, soundbar, monitor, laptop manufacturers end up stop manufacturing their devices because they had to talk to each other with a compatible HDMI format? And the user could swap out the TV device that played media from Apple TV?
The other day, I spent at least 20 minutes trying to share screens with my mother on Google Meet. She uses OSX.
There was a cascade of subtle issues which blocked every possibility.
My mother was using an an Apple iPad and I was using Linux. I sent her the link to the Google Meet to her email. When she tapped it, it opened in Safari browser. Safari did not allow screen sharing via Google Meet so I told her to download Chrome and told her to copy the URL into Chrome. Safari would not let her copy the URL from the address bar... She ended up literally typing out the URL and the resource ID by hand while I read it out to her. Then when she opened Google Meet in Chrome, it required her to download a browser extension (I don't recall having to do this on Linux)... Anyway it was unbelievably tedious.
It's obvious that operating system companies have been intentionally making it difficult to 1. Know where you are when browsing your file system or the web and 2. Copy the URL or path between different apps.
This has been a major point of frustration for software developers. First, it started with OSes hiding file extensions, then converting the address bar into breadcrumbs/buttons which can't be highlighted or selected... Then hiding the protocol (e.g. http:// or https://) then hiding most of the start of the breadcrumbs which make up the address so that you can't even see the full path in a single screen and you can't even select individual words to copy even a single folder name.
And this trend spread to a lot of other apps. Sometimes in downright dangerous ways. For example, recently, I noticed that my email client was hiding most of the email address of the sender of an email I had just received. If I clicked on the email address it opened up their contact card in a modal but only showed their name! Their email address still cut off on the contact card view and also not selectable... I just wanted to see if the domain name was legit but I physically couldn't see what the domain name was. OMG. Nowadays, whenever I'm forced to use one of these crappy web applications, I just open up the Chrome developer panel and inspect the HTML directly. I don't know what's wrong with people that they put up with this stuff voluntarily.
> I don't know what's wrong with people that they put up with this stuff voluntarily.
They have no other choice.
Tech is magic, it's near-pure supplier-driven market. Consumers don't understand it, barriers to entry are stupidly high[0], but the products/services are still necessary. Consumers are thus forced to choose from what's available on the market, not what would be actually useful. Companies know this very well.
This was true before computers, too - TVs, appliances - but is much stronger with computers (and every non-computer tech becoming a computer skeuomorphing as appliance).
That's why people "put up with this stuff voluntarily". They learn to cope, learn to not touch this if they can avoid it, and maybe silently complain to friends and family. That's why "can you fix my printer" is one of the most hated aspects of family life by computer people.
--
[0] - Hardware is pretty much impenetrable, because the easy parts are high-capital, and the important parts are supplier contracts, which everyone who matters has cornered already. Software-side is technically one of the lowest barriers-to-entry economic activities in history, and LLMs help a lot, but in practice, software is rarely the valuable part of software (!) - it's usually network effects (e.g. social media) or supplier contracts (Spotify, etc.), or such.
So many companies (including mine) built software to replace spreadsheets - but of course spreadsheets are great because you can do anything you want.
When there is no 'standard' way of doing things, you end up writing feature after feature to meet all the different ways people want/need to use the software to replace their spreadsheets.
Eventually it just becomes a huge messy. If instead we allows our customers to customize the software themselves, so each customer got what they needed, but still had the core backend, data, and shared functionality shared between them maybe we could build simpler software again that also does.
Maybe they can just vibe everything themselves, but vibe coded features feel like a solid middle ground.
I know of rough.app and vendo.run trying to allow vibe coded features, but I haven't seen anything take off like lovable yet. Is there something out there that is being widely used that lets any software become malleable?
> So many companies (including mine) built software to replace spreadsheets - but of course spreadsheets are great because you can do anything you want.
This is doubly ironic, because so, so many companies would be much more useful for the customers if delivered as a spreadsheet file for download.
I know, I worked for one too; said so in the meetings many times, especially watching the frontend side screwing up tables in SPA so they would choke rendering couple dozen rows of numbers.
So much time, effort and money is spent on designing subpar products and services, where spreadsheets would do better, simply because the value of using a spreadsheet goes 100% to users, and it cannot be that users reap all the value of their work, without a host of businesses capturing most of it along the way.
The whole point of replacing spreadsheets with a SaaS is usually to lock-in a specific "user journey" and force users to follow it, and this rarely if ever serves the user.
I have been working on exactly this with Filestash (https://github.com/mickael-kerjean/filestash), out of millions of users, 99% of them don't seem to care so much about the malleability, it gets very usefull when a company ask for something that 99.99% of people don't care without having to add yet another setting toggle. A recent example was when supporting gobd compliance deployment which required us to sign logs via a vendor who can deliver a qualified electronic signature for which nobody outside Europe would care about
I've been thinking about this issue. One thing i realized early on is that the presentation layer is transcient it doesn't matter as much as data representation and storage.
What's really restoring my agency right now is Claude's APK reverse engineering skills.
I've been tearing through the apps on my phone and just adding the features I want.
My biggest problem is I'm going to need actual good home CI and some compute: having these check in on new releases and maybe once a month give me a summary of what we need and build a new copy.
I have been trying to promote open source sw for as long as I can remember but peoplel like my wife who is a social worker says it is too clunky and gets in the way, recently I have been vide coding with apps on Raspberry Pi's and just maybe that gap is slowly starting to close.
I for one am watching this space with a lot of interest.
I have my own take on this; I was meaning to write a blog post about it to "coin" the terms, but might as well do it here. My philosophy and attitude related to writing and using software have, in the past years, developed into distinct set of methodologies. There's "maintenance minimization engineering" aspect to creating products, but as a user/prosumer, I have a different approach:
Bypass-Driven Development: making progress by routing around obstructive abstractions instead of integrating on their preferred terms.
Motivating thought: often enough you already have all the pieces to solve your problem, and have legitimate right to use them, yet those pieces refuse to talk directly with each other because of a mix of technical and business reasons. API boundaries, OAuth walls that invite getting additional vendors (identity providers) involved for no good reason, platform purposefully preventing interoperability, enshittification, lack of "business need" to integrate - or worse, having a business need which means integration suddenly involves you being a third party to a contract between two service providers.
There's no technical limitation to prevent this, but I've noticed people started taking abstraction layers, API boundaries and "intended use" as holy writ, and assume you can't do something because "it's not how it's supposed to work".
BDD is my claim that an abstraction which obstructs a legitimate goal forfeits its right to be respected.
Subpattern of this, Bypass in Anger (BIA), when routing around becomes routing through. Evocative example: modern soldiers navigating dense urban environment by ignoring it entirely, and moving in straight lines, just blowing holes in any walls that are between them and their destination. That is my answer to when "the computer says no".
Kinda a pragmatic blend of Adversarial Interoperabiltiy/ComCom, "computational self-determination", good ol' hacker ethos, and a counterpoint to "security maximalist" doctrine that runs modern computing, with a hefty dose of defiant "you are not going to tell me what I can or cannot do with my data on my computer".
If you read old computing magazines from the 1980s or watch any of the TV shows about computers from that era (a fun rabbit hole on YouTube if you're ever bored), the prevailing optimism was that everyone and their cat would have a computer in their kitchen, and just write the programs to do whatever they want.
But the fragmentation of operating systems and programming languages didn't really let that take off. HyperCard and Visual Basic came close, but they were killed off because of course.
It's only since a year ago that the original promise of computers has started to be realized.
I always find these ideas funny. Been working with computers for decades and never once have I thought software “malleable”. Maybe back when I had to actually type the program into my Speccy to get anything to work… but then again it wasn’t a “let’s make software malleable” situation, it was more of a “this is how we can distribute software right now” type of thing.
Software was never malleable. User agency is a tale you tell yourselves to try and justify your rose-tinted glasses. Could things be better in computer world? Absolutely. But you could’ve ask us the same way back then and the answer would still be “absolutely”.
Malleability is a great answer to avoid the death by a thousand feature where you bloat your software because a company asked for something 99% of your users don't care about. That's the path I went with for my open source work with plugins that can run from a wasm runtime to prevent those from doing crazy things [1]. Unsurprisingly plugins represent more than 10x the code than what the core provides.
Our software is already malleable in a bunch of ways: APIs, integrations, extensions, plugins and compatible formats (eg lots of programs can edit a .md file). But all of this stuff is special-cased. Every program that wants to read a .psd has to write its own - probably buggy - parser. I can't just take the data in application A as JSON - at least not without claude. And I can't connect applications A and B and have them bidirectionally sync except with hacky scripts which will break in lots of situations.
That’s… not a valid point. eMacs whole point is being “malleable”, but the point is that not every software has to be, and they never have been by default.
Software has always been maleable. To think otherwise is a plain delusion. Go ahead and write a few bytes into a binary, or download some updates, and you'll see what I mean.
The issue here is the legal barriers which set up a delusion of nonmaleability. Copyright and IP treat software and ideas as if they were fixed, unmaleable things; they are not.
I agree that the current state of software is quite rigid. There is no room for imperfection and often one opinion is seen as fixed the best.
I think the essence of the GPL is trying to solve this issue, the freedoms of that license is focused on keeping software as editable as possible. The idea of malleable software is not new but most "business/industry" software is still very rigid.
One of the more interesting realized concepts of malleable software are the freewheeling apps from Kartik Agaram (https://akkartik.name/freewheeling/). Additionally in my opinion the idea of malleable software is at the core of unix everything is a file and the plan 9 system.
This whole article is true and to the point but... reality is: most people still don't build their own setups: work, home - most of them follow a sh*tty software or decorate with Ikea. I think this applies only to a small group of users how will be willing to go extra mile and prompt their ideal interface for whatever they need to do.
The realization that "normal" people don't care and will never care was the saddest for me. There are so few people who care. We're essentially irrelevant in the grand scheme of things. We have no leverage.
When I was younger and I heard the saying along the lines of "struggling against the indifference of the universe" I didn't realize at the time it included people too.
3 replies →
Different people care about different things (beyond near term well being). We have no ability to be deeply involved in million different topics, but most of us care about several. And random couple of people may have no intersection and could symmetrically see each other as a "useless normie".
That's, uhm, normal and why groups form by interests, from cooking to hiking to reading to hackerspaces to rocketry. I see it as neither bad nor sad. My 2c.
4 replies →
What exactly are you sad about? You're only just realizing highly technical knowledge makes your opinions a minority?
DUH.
Guess what? That same knowledge gives you agency. With LLMs now, even more so. Want something? Build it (or have claude build it)
Why are you being a defeatist over something you can't control that was always the case? Nothing has changed.
I seriously encounter this hand-wringing on HN. You are pointing out a real problem in the world. A problem that, if not solved, will keep most of the people in the world helpless and at the mercy of governments, billionaires and the platforms they control.
But I don’t like to just bitch. I like to build. So then I show the free and battle tested software I built lovingly over a decade, that solves exactly this, and that I use in my own companies, but also give away for free
https://www.helpnetsecurity.com/2026/06/19/safecloud-browser...
We're not just bitching. I've contributed to free and open source projects. I've reverse engineered my laptop and released Linux free software. I'm investing in local inference computers. I've even created my own programming language.
We're doing what we can. The point is it's not enough. One day they will lock us out either way.
The whole point is we can't create an open source computer fab. They cost billions of dollars. It's just not happening. We can make free software at home, but we can't make free computers in our garages. Unless we figure out a way to do this, it's pointless. The chip manufacturers will be the ones responsible for the end of our freedom.
1 reply →
I think one of the best ways of stopping lock-in is to be file-based. Obsidian is a good example of this. Users can just keep their data as is and move on with their lives.
Many people like email for a similar reason: Every message is an independent item that can be moved and copied at will, organized into folders, filtered and sorted, moved between accounts and email clients, attached to other messages, saved and loaded as files, and so on.
Intelligence and the mental load it requires has a budget - in both real and artificial forms. In real - people are bombarded with tools and requirements and when the teams behind those don’t consider mental load required, that spends down the budget. Thus people give up fighting all battles and are forced to prioritize their resources. Denial of service attack on the brain. AI models running out of context will do the same and get lazy. Sadly any bad actor private or government knows this and uses it as a tool to fight intelligent resistance to its plans.
I believe it is critical for regulators to force mega-corporations (and software vendors in general) to permit third party clients.
I use services like YouTube every day, why can I get sued if I write my own YouTube client that's better than the one provided by Google? Why can I get sued if I create a chat client that aggregates the myriad of chat services I use?
I'd argue that this even extends down the stack. Why is there only Android and iOS? It's because hardware drivers are practically impossible to write for undocumented hardware (which is virtually all hardware). Vendors should be compelled to document their hardware such that drives could be produced for them.
Asahi Linux is a testament to a team attempting the impossible and making unbelievable progress - but it's still not competitive with first party drivers.
I want a world where I can run Linux on my MacBook Pro and my phone. I want a world where I can flash a custom firmware to my TV that removes the bloat and spyware. I want a world where I can use the services I depend on in ways that are better than what the vendor can produce. I want a world where I can rebuild applications and games lost to time.
I have the skills and desire to do these things.
But nah. Not allowed.
Everything you listed is exactly the reason why copyleft and GPLv3 needs to be the first and foremost license when opensourcing. If proliferated, it can give you all of these freedoms listed that you (and i) desire.
> If proliferated, it can give you all of these freedoms listed that you (and i) desire.
Hold up, let's not oversell things here. GPL/Copyleft just means that you have to share source if you share binaries. However big companies exploit the digital commons differently now.
Instead they run the important pieces remotely in their data-centers, and release neither binary nor source. If they do a client binary (e.g. phone apps), they can just sprinkle in some naive encryption and some "copyrighted content" on the server. Then if you make a custom client--or even document how to do it--you might go to jail. [0]
[0] https://en.wikipedia.org/wiki/Anti-circumvention_laws
1 reply →
sadly LLMs are killing GPL.
> I want a world where ...
> I have the skills and desire to do these things.
Please check out my page on the topic https://fabien.benetou.fr/Content/SwappingPartsOfTheRestrict... and let me know if I could improve it somehow to help you.
Overall though my recommendation is :
- do what you can TODAY no matter how small
That means if the OS is too big a of a step, start with an application. If the hardware is too locked down, start with data so that next time you buy hardware, you will bring over that data then switch. Don't postpone.
> But nah. Not allowed.
Some of it, you are. At least for personal use. Our minds are our own jails here - we treat abstraction layers as more than suggestions, and vendor preferences as more than opinions. I recommend to try and challenge it.
https://news.ycombinator.com/item?id=49875994
LLMs, whatever you think of them, currently alter equation a lot when it comes to one-off work like this. I have the skills too (for some of these things), but I don't have time/energy/capacity to do the things necessary to bypass around the obstacles. LLMs do.
Maybe I'm uneducated here, but wouldn't this just commoditize the products of companies? Would it disincentivize them from creating their products in the first place?
YouTube's product is the commercials it targets with the collected user data, not the web or phone client. So as long as the client doesn't get in the way of showing these advertisements and collecting that user data, it should not matter to them.
In more general case, you don't pay for the client software (or web page), you pay for the service provided trough it, so it should not matter if you use the service trough different client.
Of curse, many of these new clients do provide options for getting around the data collection or make it possible to block the advertisement, and that makes the companies so strict about who makes clients and how.
In a sense, yes - intuitively, you'd think it's bad but historically it's actually a major accelerant to innovation.
Essentially, if competition entered the market, Apple (and co) aren't going to give up, they'd be forced to innovate in order to retain market share.
If individuals (like me, some random on the internet) were permitted to create competing services on top of hardware and software that exists, you'd be running SteamOS on your MacBook, you'd be plugging your phone into a USB-C dock or lapdock, you'd be able to export data from your health tracker so you can buy a new one and keep your existing data, etc.
By contrast, the status quo of permitting corporations to attain functional monopolies by making it practically impossible to compete is a far worse outcome for the general consumer.
Also, when you consider that the EU is looking at cutting their reliance on US technologies - they are literally not going to make a MacBook or iPhone in this decade - but if Europeans were allowed to install their own software on these devices, the road to sovereignty gets a whole lot less impractical
Also, as stated below, as long as you don't prevent YouTube (or similar) from making money from ads (ad blocking, etc) - there is no reason to not allow you do to this.
Did TV, VCR, soundbar, monitor, laptop manufacturers end up stop manufacturing their devices because they had to talk to each other with a compatible HDMI format? And the user could swap out the TV device that played media from Apple TV?
Where do you get those silly ideas?
I don't understand what you mean. Are you saying that products with open APIs are commoditized faster than ones without? Why would that be?
8 replies →
[dead]
Discussed at the time:
Malleable software: Restoring user agency in a world of locked-down apps - https://news.ycombinator.com/item?id=44237881 - June 2025 (114 comments)
Miss the days you could script or tweak everything. Modern apps feel like sealed black boxes with no escape hatches.
This makes me miss the era when computers felt more like environments than products
The other day, I spent at least 20 minutes trying to share screens with my mother on Google Meet. She uses OSX.
There was a cascade of subtle issues which blocked every possibility.
My mother was using an an Apple iPad and I was using Linux. I sent her the link to the Google Meet to her email. When she tapped it, it opened in Safari browser. Safari did not allow screen sharing via Google Meet so I told her to download Chrome and told her to copy the URL into Chrome. Safari would not let her copy the URL from the address bar... She ended up literally typing out the URL and the resource ID by hand while I read it out to her. Then when she opened Google Meet in Chrome, it required her to download a browser extension (I don't recall having to do this on Linux)... Anyway it was unbelievably tedious.
It's obvious that operating system companies have been intentionally making it difficult to 1. Know where you are when browsing your file system or the web and 2. Copy the URL or path between different apps.
This has been a major point of frustration for software developers. First, it started with OSes hiding file extensions, then converting the address bar into breadcrumbs/buttons which can't be highlighted or selected... Then hiding the protocol (e.g. http:// or https://) then hiding most of the start of the breadcrumbs which make up the address so that you can't even see the full path in a single screen and you can't even select individual words to copy even a single folder name.
And this trend spread to a lot of other apps. Sometimes in downright dangerous ways. For example, recently, I noticed that my email client was hiding most of the email address of the sender of an email I had just received. If I clicked on the email address it opened up their contact card in a modal but only showed their name! Their email address still cut off on the contact card view and also not selectable... I just wanted to see if the domain name was legit but I physically couldn't see what the domain name was. OMG. Nowadays, whenever I'm forced to use one of these crappy web applications, I just open up the Chrome developer panel and inspect the HTML directly. I don't know what's wrong with people that they put up with this stuff voluntarily.
> I don't know what's wrong with people that they put up with this stuff voluntarily.
They have no other choice.
Tech is magic, it's near-pure supplier-driven market. Consumers don't understand it, barriers to entry are stupidly high[0], but the products/services are still necessary. Consumers are thus forced to choose from what's available on the market, not what would be actually useful. Companies know this very well.
This was true before computers, too - TVs, appliances - but is much stronger with computers (and every non-computer tech becoming a computer skeuomorphing as appliance).
That's why people "put up with this stuff voluntarily". They learn to cope, learn to not touch this if they can avoid it, and maybe silently complain to friends and family. That's why "can you fix my printer" is one of the most hated aspects of family life by computer people.
--
[0] - Hardware is pretty much impenetrable, because the easy parts are high-capital, and the important parts are supplier contracts, which everyone who matters has cornered already. Software-side is technically one of the lowest barriers-to-entry economic activities in history, and LLMs help a lot, but in practice, software is rarely the valuable part of software (!) - it's usually network effects (e.g. social media) or supplier contracts (Spotify, etc.), or such.
Looks like Microsoft were listening to Ink & Switch and borrowed their multiple-values-in-a-cell idea.
Feb 2025: https://www.inkandswitch.com/ambsheets/notebook/
September 2026: https://techcommunity.microsoft.com/blog/excelblog/excel-now...
Miss the days of hacking binaries or deeply customizing apps. Modern SaaS feels like renting a sealed box.
Remember when software felt like clay, not concrete? Hope this vision actually takes hold.
So many companies (including mine) built software to replace spreadsheets - but of course spreadsheets are great because you can do anything you want.
When there is no 'standard' way of doing things, you end up writing feature after feature to meet all the different ways people want/need to use the software to replace their spreadsheets.
Eventually it just becomes a huge messy. If instead we allows our customers to customize the software themselves, so each customer got what they needed, but still had the core backend, data, and shared functionality shared between them maybe we could build simpler software again that also does.
Maybe they can just vibe everything themselves, but vibe coded features feel like a solid middle ground.
I know of rough.app and vendo.run trying to allow vibe coded features, but I haven't seen anything take off like lovable yet. Is there something out there that is being widely used that lets any software become malleable?
> So many companies (including mine) built software to replace spreadsheets - but of course spreadsheets are great because you can do anything you want.
This is doubly ironic, because so, so many companies would be much more useful for the customers if delivered as a spreadsheet file for download.
I know, I worked for one too; said so in the meetings many times, especially watching the frontend side screwing up tables in SPA so they would choke rendering couple dozen rows of numbers.
So much time, effort and money is spent on designing subpar products and services, where spreadsheets would do better, simply because the value of using a spreadsheet goes 100% to users, and it cannot be that users reap all the value of their work, without a host of businesses capturing most of it along the way.
The whole point of replacing spreadsheets with a SaaS is usually to lock-in a specific "user journey" and force users to follow it, and this rarely if ever serves the user.
Maybe the real lesson from spreadsheets is that the customization layer isn't a feature, it's the product
I have been working on exactly this with Filestash (https://github.com/mickael-kerjean/filestash), out of millions of users, 99% of them don't seem to care so much about the malleability, it gets very usefull when a company ask for something that 99.99% of people don't care without having to add yet another setting toggle. A recent example was when supporting gobd compliance deployment which required us to sign logs via a vendor who can deliver a qualified electronic signature for which nobody outside Europe would care about
That's a really useful data point. Maybe malleability doesn't need to be something 99% of users actively care about
> Is there something out there that is being widely used that lets any software become malleable?
Spreadsheets.
Or, maybe something very close to spreadsheets but that can also deviate from the rectangular cell grid topology.
I've been thinking about this issue. One thing i realized early on is that the presentation layer is transcient it doesn't matter as much as data representation and storage.
Missing the Winamp skin days. We truly had more agency modifying our tools back then, unlike today's locked ecosystems.
Yes! Tired of apps dictating my workflow. Give me Emacs-level customizability everywhere, please.
What's really restoring my agency right now is Claude's APK reverse engineering skills.
I've been tearing through the apps on my phone and just adding the features I want.
My biggest problem is I'm going to need actual good home CI and some compute: having these check in on new releases and maybe once a month give me a summary of what we need and build a new copy.
I have been trying to promote open source sw for as long as I can remember but peoplel like my wife who is a social worker says it is too clunky and gets in the way, recently I have been vide coding with apps on Raspberry Pi's and just maybe that gap is slowly starting to close.
I for one am watching this space with a lot of interest.
I have my own take on this; I was meaning to write a blog post about it to "coin" the terms, but might as well do it here. My philosophy and attitude related to writing and using software have, in the past years, developed into distinct set of methodologies. There's "maintenance minimization engineering" aspect to creating products, but as a user/prosumer, I have a different approach:
Bypass-Driven Development: making progress by routing around obstructive abstractions instead of integrating on their preferred terms.
Motivating thought: often enough you already have all the pieces to solve your problem, and have legitimate right to use them, yet those pieces refuse to talk directly with each other because of a mix of technical and business reasons. API boundaries, OAuth walls that invite getting additional vendors (identity providers) involved for no good reason, platform purposefully preventing interoperability, enshittification, lack of "business need" to integrate - or worse, having a business need which means integration suddenly involves you being a third party to a contract between two service providers.
There's no technical limitation to prevent this, but I've noticed people started taking abstraction layers, API boundaries and "intended use" as holy writ, and assume you can't do something because "it's not how it's supposed to work".
BDD is my claim that an abstraction which obstructs a legitimate goal forfeits its right to be respected.
Subpattern of this, Bypass in Anger (BIA), when routing around becomes routing through. Evocative example: modern soldiers navigating dense urban environment by ignoring it entirely, and moving in straight lines, just blowing holes in any walls that are between them and their destination. That is my answer to when "the computer says no".
Kinda a pragmatic blend of Adversarial Interoperabiltiy/ComCom, "computational self-determination", good ol' hacker ethos, and a counterpoint to "security maximalist" doctrine that runs modern computing, with a hefty dose of defiant "you are not going to tell me what I can or cannot do with my data on my computer".
Isn't AI making that possible?
If you read old computing magazines from the 1980s or watch any of the TV shows about computers from that era (a fun rabbit hole on YouTube if you're ever bored), the prevailing optimism was that everyone and their cat would have a computer in their kitchen, and just write the programs to do whatever they want.
But the fragmentation of operating systems and programming languages didn't really let that take off. HyperCard and Visual Basic came close, but they were killed off because of course.
It's only since a year ago that the original promise of computers has started to be realized.
.
I also did not know it was a term..
Modern-day idealistic software manifesto: Just AI sellouts like the rest of us.
[flagged]
[flagged]
[dead]
[flagged]
[dead]
I always find these ideas funny. Been working with computers for decades and never once have I thought software “malleable”. Maybe back when I had to actually type the program into my Speccy to get anything to work… but then again it wasn’t a “let’s make software malleable” situation, it was more of a “this is how we can distribute software right now” type of thing.
Software was never malleable. User agency is a tale you tell yourselves to try and justify your rose-tinted glasses. Could things be better in computer world? Absolutely. But you could’ve ask us the same way back then and the answer would still be “absolutely”.
Malleability is a great answer to avoid the death by a thousand feature where you bloat your software because a company asked for something 99% of your users don't care about. That's the path I went with for my open source work with plugins that can run from a wasm runtime to prevent those from doing crazy things [1]. Unsurprisingly plugins represent more than 10x the code than what the core provides.
[1] https://github.com/mickael-kerjean/filestash
Sure, but the point is to try and fix that.
Our software is already malleable in a bunch of ways: APIs, integrations, extensions, plugins and compatible formats (eg lots of programs can edit a .md file). But all of this stuff is special-cased. Every program that wants to read a .psd has to write its own - probably buggy - parser. I can't just take the data in application A as JSON - at least not without claude. And I can't connect applications A and B and have them bidirectionally sync except with hacky scripts which will break in lots of situations.
I love the idea of fixing that.
Weird, I use emacs and form it as I please, and I do have agency. The way you describe it, I don't exist.
That’s… not a valid point. eMacs whole point is being “malleable”, but the point is that not every software has to be, and they never have been by default.
3 replies →
Software has always been maleable. To think otherwise is a plain delusion. Go ahead and write a few bytes into a binary, or download some updates, and you'll see what I mean.
The issue here is the legal barriers which set up a delusion of nonmaleability. Copyright and IP treat software and ideas as if they were fixed, unmaleable things; they are not.