43 comments

[ 3.0 ms ] story [ 58.6 ms ] thread
Malleable software will eat you whole.

None of this makes any sense. Do you know how computers work?

This "AI" summer has turned into a drug fueled orgy of magical thinking. I am at my tether's end. I need to leave this industry to preserve my sanity at this point.

Rigidity helps in trusting the system.

Malleability / flexibility can introduce unreliability.

We need to get over a hump, where software becomes more humanlike, but just like with good engineers over time we can probably arrive at a place where we can trust our new malleable solutions just like a new colleague turning out to be great.

A lot of people been saying this lately, that LLMs are going to make SaaS obsolete because you will be able to build the alternative yourself without the need to pay.

But (and I'll copy & paste a comment I wrote a few days ago) I disagree. This existed way before LLM. Open source alternatives to most products are already available. And install them and deploy them is much easier than do it with LLMs, and you get updates, etc.

People don't want the responsability to keep them updated, secured, deployed, etc. Paying a small amount will always be more convenient than to maintain it yourself. The issue was never coding it.

not everyone tangled himself with fibery or linear

lmao

malleable software? what a joke

Is this just low code all over again, except this time with some nondeterminism thrown in?
For six years I worked in a SaaS startup that built an applicant tracking system (a tool to manage recruitment efforts in big/mid-sized companies) tailored for the local market of the country we lived in. My experience tells me that our main value was in forcing them to rethink their recruitment processes, not adapting to their existing ones that were usually all over the place.

As much as I want to believe the opposite to be true as a “power user”, good tools often force you to adopt better practices, not the other way around.

> good tools often force you to adopt better practices

Just wanted to highlight this excellent statement. It's like having a strict type system that enforces certain rules are always met. It provides consistency and predictability.

> rethink their recruitment processes

This context is relevant to the kind of software system that was needed. To improve their processes, it was necessary to impose an explicit top-down order to the existing mess.

Malleable software, on the other hand, feels more suited for personal computing, greenfield projects, or small teams with members working independently as well as collaboratively. Particularly in the early stages of product R&D, strict rules can be a source of friction in the creative process.

Strict better practices and well-designed tools are discovered and developed through open and flexible explorations, as a kind of distillation of knowledge and experience.

(comment deleted)
data layer > business logic layer > presentation layer

I believe the presentation/analytics layer has become malleable, possibly parts of the business logic layer - you still need a higher % of trustworthiness than LLMs can provide for parts of the business and data layers.

(comment deleted)
For myself yes. I just have claude code running and it's replacing everything i'm doing company and personal wise with custom stuff. However, most people, like my colleagues/employees, want rigidity and do not want to learn new stuff generally. They want to focus on completing their tasks and don't want to have a quicksand saas underneath them. If it helps completing tasks faster then maybe.

Also training new people is annoying when things change too often; people can already use Jira/Linear/Monday/whatever , they don't want some completely flexible thing that is malleable.

Also, people are not all perfectionists with long term goals and visions. People who 'change' some part of their work flow that helps them NOW; they won't care about speed, scaling, deployment etc, so they will do something to make their work easier and then leave it there and possibly ignore it forever to rot. Which might have all kinds of fun implications.

I guess when we have AGI with a few 10 million+ context window for cheap, it will be different but the current llms would just leave a massive amount of rot all over the place, quickly forgotten and not usable by anyone but the original creator.

This is comparing two orthogonal properties.

SaaS is a business model while malleable vs. rigid is a property of the software itself.

Sure, if by SaaS you mean hooking together software that is essentially websites. Major industrial software that costs thousands per seat like Ansys or Dassault are not getting replaced by something that "AI" can cobble together.

The parts of SAP that's composable workflow stuff? Doubt it, because the types of ABAP workflows in SAP that might be "malleable" are the sort of stuff that often legally requires correctness and reproducibility - kinda the exact opposite of a good LLM use-case.

And as much as I'd like to actually own my software, SaaS is preferable for major corporations for lots of legal and accounting reasons like easier revenue recognition. They're going to keep pushing it because it makes all the parts of being a software company that don't include writing the actual software easier.

I see some of this, from the point of view that it's going to be cheaper to create bespoke solutions for problems. And perhaps a "neoSaaS" company is one that, from a very bare bones idea, can create your own implementation.

But, at the same time, there are two issues:

- Companies can be really complex. The "create a system and parametrise it" idea has been done before, and those parametrisation processes are pretty intensive and expensive. And the resulting project is not always to be guaranteed to be correct. Software development is a discovery process. The expensive part is way more in the discovery than in the writing the code.

- The best software around is the one that's opinionated. It doesn't fit all the use cases, but it presents you a way to operate that's consistent and forces you to think and operate in certain way. It guides you how to work and, once going downstream, they are a joy to work with. This requires a consistent product view and enforcing, knowing when to say "no" and what use cases not to cover, as they'll be detrimental from the experience. It's very difficult to create software like that, and trying to fit your use case I'll guarantee it won't happen.

These two things tension any creation of software, and I don't think they'll go away just because we have a magical tool that can code fast.

  > Companies can be really complex
I think this is a great argument for flexible code, though it was unclear to me that the author of that post was talking about that.

  > The best software around is the one that's opinionated.
I think I might be on the same page as you but I would say that the best software is written to be an environment more than a specific tool. You're absolutely right that you can't solve all problems.

tikhonj jokingly suggests emacs but even as a vim user I fully agree. Like they say, the beauty of it is that the complexity draws from simpler foundations. It is written as an environment rather than just as a text editor. Being written that way lets it adapt to many different situations and is what has kept both vim and emacs alive and popular after all these years. There's a constant in software development: requirements change with time. The point of writing an environment is that you're able to adapt to these changes. So any time you write a tool that tool is built out of that environment. Anything short of that means the tool won't be able to adapt as time marches on.

I definitely agree that writing software like this is hard but I'm not sure if it is harder. It takes more work up front but I'd argue it takes less work in the long run. It's just that in the long run many efforts are distributed across different people and time. But hey, good flexible code also tends to be much easier to read and that's big short term benefit to anyone coming into a mature project.

Inflexibility is the quality I desire more and more as I get older. I don't want to force my software to do dumb shit, I want my software to force me into avoiding dumb shit. This is how you keep a system understandable. That quality is far more precious than the ability to connect complicated enterprise spaghetti machines into each other.
this is also dependent on the field of SaaS fill

good luck replicate this on financial,health,military,cyber etc field

I think most of the SaaS stuff that benefits from being malleable already is malleable - just slowly malleable. I can configure a Trello or GitHub Actions in whatever way I want. Meanwhile I really want my email, messenger, or banking apps to be exactly the same every time I use them. I'm not clear how adding a non-deterministic UI or business logic layer is going to fundamentally disrupt or improve experiences like Jira or Visual Studio.

Maybe we're in some kind of local-optimal, where all project management software has coalesced around a few user journeys, and there's some better approach out there to be discovered.. But I don't see why an accounting software company, games studio, or vehicle manufacturer, would dedicate even 1% of its resources into crafting a malleable bespoke project management software toolkit.

It goes against the concept of comparative advantage, and I can't think of any successful enterprise that's bet against comparative advantage and won.

This seems like an advertisement for that person's company.
(comment deleted)
Low code/No has alreasy been capable of spitting out CRUD boilerplate forever. Every application turns into a special unique snowflake given time and users.

Code has never been the bottleneck once you’re out of the CRUD boilerplate phase.

(comment deleted)
I've experienced this partially, as someone who never uses sheets etc - the capability to create a template that achieves my exact needs within a few seconds is really strong - i can then form malleability in where I want.

But quite honestly, the SaaS world is also due a culling - i'd argue if the software you work on as a SaaS business is replaceable by a malleable piece of AI software, you're closer to Pets.Com than a suitable business model.

So we need to create tools with very high flexibility, not-so-fantastic onboarding that take a long time to setup and hard to get right - so that AI can fix them? I would rather use Linear (as per example).
the guy is full of sh*t, his example makes zero sense and looks like badly edited output of creative writing prompt. Not to mention he is the ceo of Fibery so whole thing is just a promotion.