Rendered at 12:46:09 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
lucrbvi 3 hours ago [-]
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.
layer8 3 hours ago [-]
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.
piterrro 4 hours ago [-]
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.
matheusmoreira 2 hours ago [-]
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.
aquariusDue 2 hours ago [-]
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.
matheusmoreira 6 minutes ago [-]
Yeah. The indifference of the universe is perfectly manageable. It's the indifference of people that broke me... I'm starting to question every principle I've ever had.
ptero 2 hours ago [-]
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.
matheusmoreira 15 minutes ago [-]
I understand that, I just don't like it.
Computers are world changing technology, magical runes we can bend to our will. I wanted people to care, to fully harness the power of these machines. But virtually nobody cares.
That wouldn't be a problem if this just came down to individual choice, but it doesn't. The fact they don't care has enormous impact on us who do care.
Because they don't care, we are a minority and therefore have no economic leverage. One day the big corporations will make computers that only they control. They will lock us all out. Nobody really cares, people will keep buying the locked down computers and will even defend it as a security feature as though the lockdown was for their own benefit. They could have been lords of their own digital domain, but it turns out they enjoy living as serfs in the digital fiefdoms of trillion dollar corporations.
We also can't have privacy and anonymity because of this. For anonymity to work, we need a massive anonymity set. We need lots of people using things like Tor, ideally most people if not all people. This is so that people can't tell us apart, but also so that they can't just blanket ban Tor traffic without serious economic consequences. But nobody cares, people are just fine with being spied on, so they don't use it and it weakens privacy for us who do care as well.
It's so sad, and I'm starting to actually blame these people for the sad state of things. I look at the trillionaire technocrats building this dystopian world and taking advantage of them, and I start to wonder if they were right to do so. People could have stopped this, if only they cared. They didn't... And therefore they deserve it.
trashb 2 hours ago [-]
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.
apatheticonion 7 hours ago [-]
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.
chii 6 hours ago [-]
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.
Terr_ 4 hours ago [-]
> 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.
throwaway743950 6 hours ago [-]
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?
Xywzel 5 hours ago [-]
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.
apatheticonion 4 hours ago [-]
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.
izacus 5 hours ago [-]
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?
gspr 6 hours ago [-]
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?
chii 6 hours ago [-]
i think they meant the hardware becomes more fungible. This is what made IBM lose their competitive advantage when it came to PCs, because others were able to make IBM-compatible ones that are cheaper and still able to use the same old software.
gspr 5 hours ago [-]
Right. But viewed differently, that made everyone have to compete at actually making good PCs, instead of relying on customers unable to escape to another vendor due to lock-in.
We want this. Software and other modern tech desperately need this! How many companies are stuck with an absolutely terrible suite of MS products because you can't easily rip out and replace just the IM or videoconferencing part, for example?
graemep 4 hours ago [-]
Its good for the buyers, and good for broader society and the economy.
Its bad for vendors.
Why would vendors do something that is bad for them? HN is full for people talking about how to create a "moat" for their products. Why do you expect hardware vendors not to want to do the same?
chii 4 hours ago [-]
> Why do you expect hardware vendors not to want to do the same?
of course they want the moat - the point is that society as a whole should force them not to have a moat. Ala, they should not be allowed monopolies.
Unfortunately, this sort of legislation has been lacking recently, and in fact, has been failing even enforcing existing ones from yester-century.
TeMPOraL 2 hours ago [-]
This is true about most businesses, hence the dissonance. Pretty much every time a business creates "a moat", it's bad for consumers in some way.
gspr 1 hours ago [-]
Except if the moat is something like "have managed to attract and retain stellar workers who make fantastic products with excellent durability and support at a reasonable price, resulting in such a happy customer base that any upstart will struggle to gain a foothold". The horror!
TeMPOraL 1 hours ago [-]
If only it was possible to have that moat. Alas, optimizing quality of products and employment away is a competitive advantage.
gspr 19 minutes ago [-]
Only because we let it be. I truly believe that we can wield regulations to make it not so.
Miss the days of hacking binaries or deeply customizing apps. Modern SaaS feels like renting a sealed box.
Ouman 5 hours ago [-]
This makes me miss the era when computers felt more like environments than products
dunlin 3 hours ago [-]
Remember when software felt like clay, not concrete? Hope this vision actually takes hold.
TeMPOraL 2 hours ago [-]
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".
jongjong 6 hours ago [-]
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.
Norwell_io 4 hours ago [-]
Missing the Winamp skin days. We truly had more agency modifying our tools back then, unlike today's locked ecosystems.
rsavage 6 hours ago [-]
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?
mickael-kerjean 6 hours ago [-]
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
Ouman 5 hours ago [-]
That's a really useful data point. Maybe malleability doesn't need to be something 99% of users actively care about
Ouman 5 hours ago [-]
Maybe the real lesson from spreadsheets is that the customization layer isn't a feature, it's the product
classified 5 hours ago [-]
> 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.
sim04ful 6 hours ago [-]
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.
fen_wick 3 hours ago [-]
Yes! Tired of apps dictating my workflow. Give me Emacs-level customizability everywhere, please.
3 hours ago [-]
Razengan 3 hours ago [-]
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.
keybored 3 hours ago [-]
Modern-day idealistic software manifesto: Just AI sellouts like the rest of us.
marowa-labs 3 hours ago [-]
[flagged]
vatsalupadhyay 3 hours ago [-]
[flagged]
GnosiWorks 4 hours ago [-]
[dead]
dmdiefjeidnn 9 hours ago [-]
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”.
mickael-kerjean 8 hours ago [-]
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.
I love the idea of fixing that.
myaccountonhn 8 hours ago [-]
Weird, I use emacs and form it as I please, and I do have agency. The way you describe it, I don't exist.
ididjsjdjwj 7 hours ago [-]
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.
enos_feedler 7 hours ago [-]
Its quite reasonable to assume a future operating system could take on the malleability of emacs? That would make it the default. Just because it hasn’t doesn’t mean it can’t be.
klibertp 39 minutes ago [-]
> Its quite reasonable to assume a future operating system
Possible, yes. Reasonable to assume? I don't think so.
The issue is that we had that for a decade or two already: people who lived through the era will tell you more, but Smalltalk environments and Lisp Machines already realized this "malleability" to the extreme and... died. We got DOS instead; the rest is (a pretty shameful) history.
Emacs is just about the only artifact (along with Squeak-derived Smalltalk-likes) of the era that still exists and is in popular use. The PC revolution killed interactive, vertically integrated, fully programmable environments. It happened because of hardware limitations of the time, but the consequences are cultural: the LispMachine-like environment simply faded from the collective imagination of programmers who learned programming by writing "resident programs" for DOS in assembly. It didn't happen immediately: DOS was sufficiently open for modification that (if you knew x86 assembly) you could mold it to your preferences, but the hardware wasn't powerful enough to do much with it. As hardware advanced, PC OSes ossified, adding abstraction level after level in both hardware and software. Early Windows was trivial to dissect - I remember WindowBlinds, a set of apps that transformed Win 95/98 into almost anything you wanted. I recently checked, and nothing like that is possible in the recent Windows versions. GNOME on Linux seems to have followed the same trajectory (fortunately, there are still a few other desktop environments there).
So I don't think the "malleable software" is going to return any time soon. We have not only rigid software everywhere - we have 30 years of shared culture of developing and using such rigid tools. With the size of the programmer population, changing that culture in any meaningful way seems very hard. There will be people who rediscover Lisp Machine ideas, there will be a segment of users swearing by Emacs and similar apps, but we'd need a revolution in corporate and educational policies to get anywhere beyond that, I think.
gspr 6 hours ago [-]
... but the parent makes a good point that software can be malleable, and that it's a good thing.
sophrosyne42 7 hours ago [-]
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.
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.
Computers are world changing technology, magical runes we can bend to our will. I wanted people to care, to fully harness the power of these machines. But virtually nobody cares.
That wouldn't be a problem if this just came down to individual choice, but it doesn't. The fact they don't care has enormous impact on us who do care.
Because they don't care, we are a minority and therefore have no economic leverage. One day the big corporations will make computers that only they control. They will lock us all out. Nobody really cares, people will keep buying the locked down computers and will even defend it as a security feature as though the lockdown was for their own benefit. They could have been lords of their own digital domain, but it turns out they enjoy living as serfs in the digital fiefdoms of trillion dollar corporations.
We also can't have privacy and anonymity because of this. For anonymity to work, we need a massive anonymity set. We need lots of people using things like Tor, ideally most people if not all people. This is so that people can't tell us apart, but also so that they can't just blanket ban Tor traffic without serious economic consequences. But nobody cares, people are just fine with being spied on, so they don't use it and it weakens privacy for us who do care as well.
It's so sad, and I'm starting to actually blame these people for the sad state of things. I look at the trillionaire technocrats building this dystopian world and taking advantage of them, and I start to wonder if they were right to do so. People could have stopped this, if only they cared. They didn't... And therefore they deserve it.
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.
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.
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
> 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.
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.
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.
Where do you get those silly ideas?
We want this. Software and other modern tech desperately need this! How many companies are stuck with an absolutely terrible suite of MS products because you can't easily rip out and replace just the IM or videoconferencing part, for example?
Its bad for vendors.
Why would vendors do something that is bad for them? HN is full for people talking about how to create a "moat" for their products. Why do you expect hardware vendors not to want to do the same?
of course they want the moat - the point is that society as a whole should force them not to have a moat. Ala, they should not be allowed monopolies.
Unfortunately, this sort of legislation has been lacking recently, and in fact, has been failing even enforcing existing ones from yester-century.
Malleable software: Restoring user agency in a world of locked-down apps - https://news.ycombinator.com/item?id=44237881 - June 2025 (114 comments)
Feb 2025: https://www.inkandswitch.com/ambsheets/notebook/
September 2026: https://techcommunity.microsoft.com/blog/excelblog/excel-now...
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".
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.
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?
Spreadsheets.
Or, maybe something very close to spreadsheets but that can also deviate from the rectangular cell grid topology.
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.
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”.
[1] https://github.com/mickael-kerjean/filestash
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.
Possible, yes. Reasonable to assume? I don't think so.
The issue is that we had that for a decade or two already: people who lived through the era will tell you more, but Smalltalk environments and Lisp Machines already realized this "malleability" to the extreme and... died. We got DOS instead; the rest is (a pretty shameful) history.
Emacs is just about the only artifact (along with Squeak-derived Smalltalk-likes) of the era that still exists and is in popular use. The PC revolution killed interactive, vertically integrated, fully programmable environments. It happened because of hardware limitations of the time, but the consequences are cultural: the LispMachine-like environment simply faded from the collective imagination of programmers who learned programming by writing "resident programs" for DOS in assembly. It didn't happen immediately: DOS was sufficiently open for modification that (if you knew x86 assembly) you could mold it to your preferences, but the hardware wasn't powerful enough to do much with it. As hardware advanced, PC OSes ossified, adding abstraction level after level in both hardware and software. Early Windows was trivial to dissect - I remember WindowBlinds, a set of apps that transformed Win 95/98 into almost anything you wanted. I recently checked, and nothing like that is possible in the recent Windows versions. GNOME on Linux seems to have followed the same trajectory (fortunately, there are still a few other desktop environments there).
So I don't think the "malleable software" is going to return any time soon. We have not only rigid software everywhere - we have 30 years of shared culture of developing and using such rigid tools. With the size of the programmer population, changing that culture in any meaningful way seems very hard. There will be people who rediscover Lisp Machine ideas, there will be a segment of users swearing by Emacs and similar apps, but we'd need a revolution in corporate and educational policies to get anywhere beyond that, I think.
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.