Just as consumers don't want to pay the "true" price of food or the "true" price of clothing, we don't want to pay the "true" price of software.
You might grumble about $30/mo for something like Postman, and it's true that "back in the day" it might have been a $40 one-off, but that's closer to $90 with inflation now, and there's a good chance that would have only bought you version 4.
Then next year version 5 comes out, and you face a dilemma. Do you pay all over again? Do you end up staying on version 4 until eventually there's a compelling reason to upgrade?
SaaS solves that problem by keeping everyone on the latest version.
Software is economically expensive to produce, we don't do enough to recognise that, in part because of how much free work is contributed by open source contributors and how little we recognise how much work they really do.
Maybe we just produce too much of it in an effort to justify our salaries and stock prices?
For all the software that's been produced over the last 2 decades, I'm not aware of any significant breakthroughs to show for all that effort (LLMs might be the closest, but they are down to sheer processing power rather than software itself).
My computer in 2010 was achieving basically the same tasks it achieves now - I can browser the web, buy goods online, watch videos, chat with people, play video games, and so on. My computer today is 10-20x more powerful than the 2010 one, yet somehow everything is slower, uglier, and less reliable.
> My computer in 2010 was achieving basically the same tasks it achieves now - I can browser the web, buy goods online, watch videos, chat with people, play video games, and so on. My computer today is 10-20x more powerful than the 2010 one, yet somehow everything is slower, uglier, and less reliable.
The problem is that everything after `-` is a service. Someone needs to keep those running.
By way of analogy: You don’t pay Walmart a one-time $30 fee and expect fully stocked shelves forever. You pay a small portion of every purchase to keep the supermarket service running.
Those services are either paid or havd (much less obnoxious) ads - that didn't change. OSes themselves were paid, typically baked into the purchase price of the computer.
> You don’t pay Walmart a one-time $30 fee and expect fully stocked shelves forever
But I don't expect Walmart to get worse at its primary purpose of taking my money. Imagine if Walmart replaced its perfectly-working checkout lanes with a new version where the PoS had a random ~10s delay in between scanning items, would have a 10% chance of reloading the page and force the cashier to rescan everything, would sometimes register the wrong items, and would distract the cashier with bullshit "suggestions" while he was trying to scan items. That would be crazy right?
I don't know about Walmart, but most stores around me did replace perfectly working and very speedy checkout lanes with slow, glitchy, not fully feature-complete self checkout. Enshittification may have been invented in SaaS, but it's everywhere now.
"My computer today is 10-20x more powerful than the 2010 one, yet somehow everything is slower, uglier, and less reliable."
Seems like rose colored nostalgia glasses.
- Operating systems have become MUCH more stable. I restart my computer every 3 months, it used to be every 2 days.
- I remember when I had to pause a youtube video and wait for the grey bar to advance before watching the next 90 seconds of it, and then repeating. I remember constant Skype issues around 2010. Facetime is practically flawless. Encoding has quietly gotten a lot better.
- Adaptability is amazing. I remember when software was only available on extremely specific devices, and now I can access almost everything I have from literally every device.
- Encryption by default is practically universal now.
- Seamless syncing. From version recovery to web browsing. We multitask a lot more.
2010 is Windows 7 era, not the dark ages of pre-XP-SP2. I don't recall having computer crashes out of the blue - all the ones I've experienced are due to my own fault by trying to overclock the system.
I'm sure shitty hardware and drivers is a thing (this is traditionally where Apple excelled at in comparison) but I don't recall it being an issue on quality hardware.
> I had to pause a youtube video and wait for the grey bar to advance before watching the next 90 seconds of it
Shitty Wi-Fi/broadband/peering? Ironically nowadays I sometimes experience that too, except instead of waiting for video to download I'm waiting for some Javascript to finish re-rendering the page 3 times.
> I remember constant Skype issues around 2010
Again shitty connection maybe? I was spending every evening on Skype calls and to this day it's been way more reliable than anything I've tried since, thanks to it being P2P. So I guess if you were having constant issues it's down to the network.
Operating Systems are more stable compared to early nineties, but not 2010. I was using NT4 in the late nineties, and it was rock solid. I had a Sun Ultra 1 at home at the time, and that was rock solid too.
Stability got good in the mid-late nineties for most Operating Systems, it's mostly plateaued since then, because it's not like you can be more than 100% reliable. My Sun Ultra 1 never once crashed in the time I owned it, same for my NT4 machine at work.
Not really. I used a Windows 2000 computer a few months ago and it worked like a charm: quickly and efficiently. Modern Windows feels leagues behind in performance.
Agree, I never used Windows 2000, but I used NT4 in the late nineties and it was rock solid, no less reliable than Windows 11, and of course, snappier on vastly lesser hardware, I think I used it on a Pentium III.
While restarting some versions of Windows servers in the 2000s and 2010s to workaround memory leaks was normal, old OSes through history have been stable.
Linux has been around for decades and has been very stable.
Windows 3.1, 3.11 for workgroups, NT 4.0, Server 2000, XP, Vista, 10 & 11 have all been fairly stable after patches.
Win 95 and 98 after patches were stable enough. Win ME and 8 were crap, but Win 8 was more just crap experience.
Really most of the problems with Microsoft, Apple, Linux desktop environments and package systems could be categorized into being related to increases in complexity, many unnecessary changes, and just poor design or experience.
IBM chose macOS years ago because of the reduced cost to maintain them, while most IT professionals continue to choose Microsoft because the barrier to entry cost is low and because of familiarity, likely because younger people have Windows because it’s cheaper, they can play more games on it, and that’s what they grew up with, but Linux continues to be the primary server OS.
Little of that has to do with stability, and just because Windows 10 & 11 are stable doesn’t mean that things weren’t more stable 40-50 years ago. Linux admins for years prided themselves on the uptime metrics back then.
Note that Linux admins would’ve been in last ~40 years, but yes things were stable even longer ago. The problems came mostly with memory/resources not being cleaned up in C/C++ libraries and programs, primarily in Windows, because it was a little more chaotic with a lot of dev, a lot of differing hardware, and not as much oversight.
Funny how habits stick, I still shut my primary desktop down at the end of every day because for all of my youth that was just what you did.
They boot so damn fast it doesn't really matter and I kinda like starting the day with a "fresh" desktop (same reason I clean my desk every night - starting work with a neat desk is great - I trash it through the day and repeat).
Fully fresh everyday, it’s in the history if I want whatever it was.
I’m still fairly ruthless about not having a tonne of tabs open (also gonna be an age thing, I predate tabbed web browsers and for a while after their introduction you’d either grind them to a halt or crash them entirely with too many tabs open and too many wasn’t many).
You've touched on the business model for both Microsoft and Apple. Once they decree that the OS is no longer supported, you're forced to upgrade. Microsoft has even begun to play Apple's game by also obsoleting the hardware.
Still better than paying for SaaS, still getting pwned and getting free credit monitoring in compensation?
Not to mention local-first software has much less attack surface for pwnage. You can wrap insecure protocols with encrypted tunnels, you can share files from a legacy app with any secure file transfer app of your choice... or if all you need is local functionality you don't need to share at all which means no remote access possible.
Well, when that OS version update comes and the company is no longer around, it is time to move to something else, or keep the old OS version running as long as the hardware holds.
I'm going to be the last person to defend capitalism as a way of organizing labor, but I think that a capitalist system where every company is actively producing something valuable is preferable to the capitalist system we have today.
Of course it sucks to occasionally lose your job, but in a system that's more efficient at allocating resources, this shouldn't be as big of a problem as it is today. I would expect purchasing power to be greater across the board and we would have a more prosperous standard of living as a baseline, primarily because labor isn't locked up and wasted in organizations that don't actually produce anything of value.
Usually people that are comfortable losing their job are lucky to live in world regions where finding a new one is easy, regardless of their age, or population demographics.
What kind of argument is that? I don't think there are any world regions where goods and services appear out of thin air, so how exactly does a society that operates in this way survive and prosper? Do you think every bullshit, non-producing job should be kept around indefinitely to avoid a temporary discomfort of finding a new job?
Eventually for every person working the fields, manufacturing goods, and delivering them to you, there will be 5 people "working" a bullshit corporate job that doesn't create any value. Then the system will crumble under its own weight even with "100% employment" because nobody is actually producing anything. This is just the worst ideas from communism combined with the worst parts of capitalism.
Writing this might make me sound like a hardened capitalist who doesn't support labor but that couldn't be further from the truth. People who lose their jobs should be taken care of - but crucially it should be done fairly, through unemployment benefits or UBI or whatever idea makes sense. That ensures that everyone has access to the same benefits, not just the few lucky ones who land the right bullshit job at the right bullshit company.
This isn't really an argument for making people do useless work. If we'd just pay them the same amount but without making them do the work, it would be an overall improvement. It wouldn't be game-theoretically stable, though, and as we know, game theory is the strongest force in the universe.
"Just as consumers don't want to pay the "true" price of food or the "true" price of clothing, we don't want to pay the "true" price of software"
But software is nothing like food
I lived without software for many years
As a consumer, the best software I use is not new. It's old
Today's software is literally forced on consumers
It's true they dont want to pay for it
It's given away for free as a Trojan Horse to collect data, enable surveillance and online advertising services. It also allows remote installation of further software on the consumer's computer
Or it's not delivered at all but sold as a "service"
Postman has over 600 employees and has raised several hundred million dollars in venture captial. The reason Postman is this expensive isn't because it's very expensive to develop and maintain, it's because you're paying off the VCs.
If they took a reasonable investment and kept a reasonably sized team, they wouldn't have to charge for a curl GUI what Adobe charges for their entire suite of industry-leading creative tools.
I think VC money and expectations it brings has destroyed so much. To me Postman sounds like product that should be reasonably run with team at most in low dozens. And that includes all roles including customer support. 600 people sounds like world has just gone wrong.
Shrink wrapped software also often had cheaper upgrade packages, so you didn't always have to pay the full price each year. And before activation and 'licensing' you could resell it.
As for FOSS going unpaid. SaaS doesn't necessarily lead to FOSS contributors getting paid more than they would if their software was going into shrink wrapped products.
>And before activation and 'licensing' you could resell it.
So... nothing from this century? I'm not even sure how software without activation/licensing would work out economically. You'd either need something like a CD/dongle check (which is a hassle/expensive), or accept that one copy is going to be endlessly passed around.
Bought a lot of licenses for software on macOS. Some notable ones are Alfred and Things 3. I have a license for two of the Affinity (Designer and Photos) suite and a not so old version of Parallel.
Most people don't really pass the license around. And it's not that much if you're a professional. But most subscriptions prices are egregious.
The problem with Postman isn't that we couldn't pay the developer a living, it's that it had to grow and grow and grow until it could extract the maximal amount of money from whatever corporate user it could get, in the process losing what made it good in the first place (simplicity).
It's not an accident that my company migrated to three clients in the space as they all met Postman's fate, and we're probably going to migrate to a fourth one soon. I'm surprised Postman is still around, but I'd be even more surprised if it's doing well.
> we don't do enough to recognise that, in part because of how much free work is contributed by open source contributors and how little we recognise how much work they really do
> To the Beggar Baron, open source's value is its free donation.
> You would never stand on the street and offer to buy the wallets off people who are about to donate a few dollars to you. That'd be stupid.
> They're giving you their money for free. Take it and run.
Always slap AGPLv3 onto everything you make. Always choose the most copyleft license imaginable. Permissive licenses yield zero leverage. It's either AGPLv3 or all rights reserved.
Yeah sure, but I was probably fine with version 4, and it is now a massive hog of an app that contains all sorts of bloatware to justify its cost that I don't need or want.
There are definitely advantages to the SaaS model. I was an excited and early believer and I absolutely recognize the amount of work and risk that goes into development of software. I also appreciate the business model — the new version cycle was exhausting in a different way. But working as a reseller for some big SaaS vendors there is just a ton to dislike about the model and the bundling of the services. At certain point, it really stops being about the users and it becomes a game of maximizing revenue. I guess I really can’t blame them, but it adds so many levels of complexity in the name of maximizing revenue instead of empowering users with capabilities.
Agreed, it's rather insane to me. Basically seems like distribution trumps pretty much everything, sometimes even whether it's a viable business model.
I was grocery shopping the other day and saw Liquid Death, which is a brand of...water, but with edgy marketing? I'm told to "make things people need," and then regularly see rent-seeking companies held in great esteem, ultra-undifferentiated offerings such as Liquid Death, an API client with a monthly fee, and other things that seem to contradict the maxim of making things that people need.
Apparently the whole deal with Liquid Water is that it's so people don't give you crap for not drinking alcohol at parties or festivals.
If they see you drinking water or soda off a normal can, people will feel self conscious and get pissy about them drinking but not you, with a flaming skull on the can, nobody bats an eye.
The target audience is actually recovering alcoholics from party crowds, and the product is pure signaling.
My issue isn't specifically the subscription model, though it gets annoying and I prefer a one time fee, or the cost, I'm happy to pay, my issue is the lock-in accompanied with the SaaS subscription model. You stop paying you loose access to your work, esp. as most SaaS models aim for proprietary data formats and no, or deliberately really annoying and cumbersome, export abilities often only allowing exporting in their own proprietary formats "for backup", which are useless once you stop paying
This is part of why I'm completely ok with Jetbrains subscriptions - they have a perpetual fallback license. When they transitioned from the "buy a version, use it forever" licensing approach to a subscription model they added the perpetual fallback license (likely after some spicy feedback from customers).
You can use whatever version you've had for a year forever.
So if you cancel your subscription, the old version still works (and is probably fairly functional).
---
The problem that Jetbrains had before the subscription model change is that major upgrade versions (that you paid for) were driven by accounting needs rather than engineering. "Need more money?" - release the version that is currently getting built, even if it doesn't offer compelling value. "Got some neat things for the next version?" - hold off on releasing it to customers until the company needs more money.
The subscription model made it so that accounting had a stable and predictable revenue stream and engineering could release things as features were developed.
The problem was real. And update subscriptions are a good solution. But other update subscriptions allow perpetual use of the version at the end of the subscription. JetBrains products require downgrading to the year old version. And downgrading was not supported when I looked. This is a lock in tactic.
This model makes the most sense for professional tools (IDEs, CAD, Office Suites,...). Like insurance or support contract. You don't lose everything the moment you want to shrink your spending budget. But for utilities (pdf readers, task managers,...), subscriptions feel like extortion.
Software is not economically expensive to produce. It's cheaper than almost any physical good. On the contrary, because software is so cheap to produce, it's extraordinarily profitable, and SaaS is even more profitable because customers keep paying over and over again for something that only needs to be produced once.
Yeah, I say this as someone who likes the idea of self-hosting, especially for the privacy implications, but the economics of software just benefit SaaS for the time being. There are just too many efficiencies to keeping the backend in the control of the software developers. Schema changes are far, far easier (if you're not sure whether a schema change is going to stomp on real user data, you can pretty easily find out). Similarly, when all of the data is colocated with the backend service, multiple stacked roundtrip latencies are often fine.
And when you release a new feature, it benefits new users right away and you get paid for those features right away. You don't have to wait for a new version to ship. And consequently, you get feedback right away, which means you don't stack bugs on bugs only to find out at release time (this is basically agile vs waterfall).
Subscriptions are essentially the only sensible pricing model for anything with regular, frequent upgrades, and until we can make self-hosted software as easy and reliable as SaaS software (for the same cost) then we aren't going to see very much software distributed to end users (lots of software has gone the other direction though--e.g., office suites).
The thing is, while this is, to some extent, true, it has to coexist alongside the fact that many SaaSes, in practice, are predatory and overpriced.
Once you're providing your product as SaaS, the incentives for you to gatekeep features behind higher tiers of subscription become very strong. Similarly, the incentives to create lock-in become much more prominent than they are if you only get paid again if they liked your product enough to buy the next version, too.
And, in all likelihood, the extra money—the difference between "how much we need to continue to provide a high-quality product (including dev salaries)" and "how much we're charging you"—is going to pad the execs' bonuses and fund stock buybacks.
I would love to see there be a middle ground—where any piece of software that makes sense to have as SaaS can be provided as such, for what it costs to make it plus reasonable profit, at a high quality, and the dark patterns are disincentivized through regulation and/or through voting with our wallets.
Unfortunately, given the political climate we live in, that's not going to happen any time soon. So for me, personally, by far the best choice is always going to be to pick software I can buy once and own forever, and if I want the next version I can buy that.
I’ll be glad when this brief interlude of “OMG AWS go down! We stupid? Cloud bad?” posts are over and we go back to normalcy.
Yes, we never needed the cloud. We could’ve kept the servers onsite or in data centers like we used to and pay much less to do much more. I worked in a startup that had hundreds of servers, and that was enough, and that served phones from cellular customers and mobile devices from some major cellular companies and media companies. Not many IT staff were needed for that and as devs we never had to think of how it was hosted, even though I did from my former experience.
Now, when I develop, I have to have at least a basic understanding of AWS since our production code is built and hosted there.
We have so many risks now. We can’t even use a package manager without worrying about secrets being stolen. We give away our secrets and code to an LLM that knows our intellectual property before we do, because it’s creating it.
Development has been an increasing dystopia from the beginning.
I don’t know if you’ve seen Silo, but if you have look at the monochrome graphical fileserver-ish UX that they use in the first season. I love that. I wish our shit were like that.
But no. Instead we keep developing features no one asked for requiring new expensive equipment. Our aging parents can’t even operate a TV because instead of an on/off switch with volume and channel buttons, it’s either a complex UI or a cable box/TV combo with input selection- what is HDMI 1? They don’t know.
A good enough solution on par with the competition is exactly the right choice for a business 95+% of the time though. Your company probably shouldn't compete on email/calendar/vpn/filesharing/OS/spreadsheets/CRM/reporting... all of these are great as SaaS.
And Google Workspace is a vastly superior solution to its predecessor offline or semi-online office suites, allows live collaboration and works across devices. Hubspot has a real, usable mobile app. Even Power BI is a step up from whatever pile of excels used to pass as reporting.
You are talking about paying per user rent to access software we figured out how to build well thirty years ago. Nobody should pay rent for an office suite.
We didn't figure it out then though. I used office suits 15 years ago. They didn't work like Workspace or even m365 today. You needed to sync files by yourself, sharing and access control were rudimentary at best.
Most importantly, there was no way to support my currently bog standard workflow of making docs and notes on a computer, sharing it with colleagues in a chat with a simple link, where 2-3 people can edit it at the same time, and then checking out their changes or referring back to the notes on a phone.
Not to mention stuff like presenting a deck directly into an online meeting where participants can browse ahead or look through the slides back.
All of that is easily worth $10/seat/mo in productivity and would be very difficult to configure not as a service.
A server in my house has "just done all of this" for like ten years. I had to run one command to fix it recently. It has the capacity to support dozens of users.
The idea some shared document editing is worth $10/seat/month is absolutely insane. We have built a temple to madness.
So you are saying everyone who wants to share a document has to either have their own server, or log in to a server hosted by someone else?
What if that host goes down when the user needs it most, who is responsible for that? Who is doing backup or recovery? What if there is a security breach and users lost data? because Internet access is a must if the server is shared among "dozens of users".
If $10/month is insane, how much should it cost and why?
Right, because Amazon and Microsoft never go down… Look, you had some good points, even if arguable, but the whole downtime bogeyman is just pure cloud provider marketing to drum up FUD. You might be surprised to know that many cloud providers, even the big popular ones, don’t handle backups for you.
Well I spend about $5/month over the lifetime of a setup that could support like fifty users. So that's like ten cents a month. Maybe add a healthy Big Tech size profit margin, charge 50 cents a seat a month?
HubSpot’s mobile app is so buggy for me. Anytime i’m tagged on a ticket comment I have to open the app first then click the link to it or it just opens the app and does nothing.
Overall it works pretty well but I don’t know. It feels kind of clunky, especially with all the information it presents. Admittedly I don’t know how they can get all that information cleanly on a small screen, so I’m not really blaming them. It’s just been my experience
You mean SSO? I think that's slightly disingenuous because it's still possible to be perfectly secure with username/password login. Sure, having SSO might prevent Barbra from accounting (who failed the last 3 phishing training sessions) from getting phished, but that's the company's problem, not the vendor's.
When a person leaves an organisation, it’s difficult to find all the various team accounts they have been added to in order to remove them. So you end up in a situation where people no longer in the organisation frequently still have access to anything non-SSO.
That’s a very obvious, legitimate security issue, why are you accusing people of being insincere about it?
>When a person leaves an organisation, it’s difficult to find all the various team accounts they have been added to in order to remove them.
Again, that's inconvenient but doable, just like phishing prevention.
>That’s a very obvious, legitimate security issue, why are you accusing people of being insincere about it?
I'm not denying it's a security issue, any more than I'm denying that phishing isn't a security issue. I even specifically mentioned the possibility of employees that fail phishing training. I'm objecting specifically to the "ransom" framing, which is a pejorative way to imply that companies have a duty to offer all security features for free.
Indeed. The SaaS model allowed the software companies to have perfect control of their users. You might pay more and have unused accounts, but you’ll never pay less. It also was great for adoption because there was nothing to install. Salesforce was notorious for selling to penetrating an account by selling to individual sales people, then to sales teams, then sales departments, and only when everyone was already using it to the rest of the company and IT departments. The sales person could get started with a single account using a corporate credit card. Then, once hooked, there was value in getting a whole team onboard, etc. it was really brilliant.
It’s a bitter monkey paw irony: when you ask FOSS advocates how developers would be paid in a fully FOSS world where piracy cannot exist because all software is free, the answer is often “service contracts.”
The monkey paw curls. Now we live in a world where software is nothing but service contracts and more closed than ever.
It's the Westphalian system which includes not only (protestant) capitalism, but also scientific positivism, liberal humanism and everything else. Which we now call (post-/meta-)modern.
There's nothing we can do about all that and for practical reasons we just accept the world as is and tend to forget/ignore the reasons it is so. But for retaining cognitive sovereignty if think it's good to remember that.
I worked for a startup company that built and hosted our own custom systems, which were fairly specific to our company and production needs. Our production manager no longer wanted to pay for internal development, so he asked for a demo of a SaaS product from a Chinese company that sounded similar to ours. It turned out that they already had our source code, likely from a Chinese contractor that worked with our team a few years prior, because the product they were selling was almost exactly the same.
While we could not prove anything, it would seem that intellectual property theft just happens.
Today, we use tools daily that probably function because of intellectual property theft.
While this is traumatic to me, if I really try to be objective, aside from the additional theft of art, I don’t see how this is much different than what RMS and FSF stood for. Data finds a way to free itself.
The incentives were always misaligned, with having some code be free (open) and free (gratis), but the underlying system being value-extraction growth-obsessed capitalism. If processed food was sold for a profit based off farmers selling their produce for free, I don't know… the analogy makes me shiver.
Somehow we expect FLOSS coders and maintainers to do all this free labour to keep companies from paying the True Cost of everything. Externalities, externalities…
If I ever start another business, I hope I can set aside enough cash to support for the primary open-source tools that we depend on.
While reading the Fundamentals of Data-Engineering I noticed that one of the most practically interesting parts, data extraction/acquisition, is essentially skipped. The author just noted its 'grayness'.
That is web scraping is the SaaS form of 'piracy'.
Was piracy a big problem in the enterprise world (which SaaS focuses on)? My understanding is that piracy is a big no-no for businesses. Nobody bothered to go after consumers but business is a different story.
Yes. I worked for a large company who made engineering software and we had all sorts of license checks that would ping our servers when an unlicensed copy pinged up.
We regularly found IPs linked to large companies using it and the licensing team regularly had a field day. Universities basically got a stern letter because there is no money in chasing those, but large companies certainly got contacted by licensing compliance.
Not especially in the developed world, but everywhere else it was rampant. I suspect one of the things pushing this business model was the ability to extract some profit from regions which would otherwise be paying zilch.
I would not say SaaS is a problem in itself(I built and run one myself). Software as a Service simply means that you can run an application on a remote machine, which you do not have to manage yourself and can pay only for what you need. That makes perfect financial sense.
The problem with SaaS today is that the subscription-based model is getting out of hand - the value proposition no longer makes sense, in many cases.
And secondly, vendor lock-in. You cannot get your data out. Or if you can, you will be less likely able to migrate to another provider or local application which means there is no free market where various providers can compete with better features, customer support, availability or price. Therefore, in the end the provider will hold you hostage via your own data. This is, after all, Amazon AWS's famous moat. It is often very expensive and painful to migrate into some in-house solution. And often it is simply not possible at all as it might require such a massive rewrites of your own application(understand as dependency on the provider), that it is not in the realm of possibility.
So with like everything else, you are responsible for your own choices and if you make a bad judgement, like tying yourself to one provider, that is all on you.
People keep yapping about monopolies in tech, yet they vehemently dislike decentralisation or taking care of their own stuff and want to have all the things on one place. But when things do not work out as they wanted, then these monopolies become a problem that is too late to mitigate.
tl;dr do not use SaaS of mission-critical functionality and you'll be fine.
Too one-sided to be a useful article. Negatives need to be balanced against positives.
B2B SaaS can have some really great advantages for clients. It is best if the market is somewhat competitive (say payroll) to help prevent vendors from upping prices too much.
The vendor wants to keep clients, avoiding churn. So the vendor is incentivised to keep the product current, and often add features for free.
In a non-SaaS model, the product remains as delivered, or requires version upgrades or maintenance contracts (usually crappy).
SaaS can have cheap upfront costs especially if designed for easy onboarding, and often you can quit easily (low sunken costs).
Old-school software delivery is regularly a nightmare, and over budget because the vendor is incentivised to take money from their clients.
Tht buyer needs to choose their compromises.
I worked for a payroll software company with a product that ran on Windows, and they regularly screwed over clients because there was no alignment of incentives.
For products like Photoshop and AutoCAD, it would have been great to have the option to use it for a few months and stop. This way, I can subscribe when work is available and I can offset cost by earnings. Of course, I am speaking as a freelancer.
However, what I understand is that this level of on and off of subscription is very difficult.
I bought a copy of Photoshop 6.0 (2000) a few months ago for use on a modern computer. Works fine, has (almost) all the features of modern Photoshop, zero DRM with the exception of an easily saved serial number. One time purchase.
The fundamental SaaS lock-in comes from bundling two things:
1. A declarative, stable interface
2. An expert support/ops team
I think the path forward is to unbundle them.
We're already solving #1. Nix has the best potential to become that declarative & stable layer, letting us reach the goal of treating cloud providers as the simple commodities they should be (I wrote about this approach here: https://ryanrasti.com/blog/why-nix-will-win/)
The bigger, unsolved question is #2: how to build a viable business model around self-hosted, unbundled support?
That's the critical next step. My hunch is the solution is also technical, but it hasn't been built yet.
There's only one reason for this: You aren't the customer, so your incentives aren't aligned with the vendor's. Your data is being sold to other companies, so you getting value out of the software is only necessary insofar as it keeps you there. That's not where the vendor makes their money.
Classic enshittification. Unfortunately, I have no idea how to evade it.
My beef with SaaS is that every client I went to just wanted developers who would glue together these solutions and they would invariably have puzzling overlaps in the products they purchased, particularly around CI/CD pipelines. I would be like "why does this go to this other service then deploy? You know it can just deploy from there, right?" And they would invariably say that "so and so made us buy that other service for their department so we're all standardizing around it, end of story." So you can never consolidate anything and it all just ends up as madness glued together with some Python. And writing that "glue" is shitty work and I can't believe how much they paid for me to do it.
I very much resent the subscription model--it is terrible for the consumer and it's crept into everything and it's just disgusting.
> Software keeps iterating on solving the same soluble problems because the remaining challenges are really difficult to solve with technology. Communication and coordination are full of nuance and subtleties that defy digitization.
Software will never, ever be more than mechanism.
Peak software is when it fades into the background, and focus stays on the task at hand.
Imagine if compilers were only available via the SaaS model. Developers and the tech community in general would never accept this, and compilers were open sourced well before the internet had developed to the point where it would even be possible. Nobody would trust a system that sent their proprietary code off to a data center to be compiled to binaries for their platform on a monthly subscription model - the idea is ludicrous.
Currently the only SaaS product that still makes sense are LLMs, but this is temporary - anyone with sense realizes that the ideal situation is to run an open-source LLM model locally and privately, but this still requires a significant investment in high-end hardware and IT technical people.
That's the basic calculation: is it overall more efficient and less expensive to hire a skilled IT team to manage your in-house solutions, mostly open-source, including security patches, than it is to rely on external providers who charge high monthly fees and use all manner of sneaky tactics to keep you locked into their products? The latter is going to win in the long run.
For smaller projects I actually started to like to vibe code in PHP; API, user login (magic links), webpages etc.
Stable, lower maintenance, faster iterations etc. Now its really fun to build.
In my humble opinion, great software, and the ideal to work on is unachievable, because it is great software built in house to solve the house problems, not anybody else's problems, sure you can start with a solid base, but in the end every organisation and every department inside this organisation has their own requirements.
Of course we can't pretend that each business, or government institution is going to be able to have a handful of full stacks around just to keep up with the business requirements, but in reality, if that was the case, thing would operate much more smoothly.
Software for the masses is another category completely separate from anything that is going to help you achieve more at work, social media is an example and I think AI to a large extent is the same, since a generic gpt, one without knowledge of the past and present of your organisation, deeply ingrained in your culture will also fail to provide that particular set of knowledge that you can call invaluable for your use case.
You might grumble about $30/mo for something like Postman, and it's true that "back in the day" it might have been a $40 one-off, but that's closer to $90 with inflation now, and there's a good chance that would have only bought you version 4.
Then next year version 5 comes out, and you face a dilemma. Do you pay all over again? Do you end up staying on version 4 until eventually there's a compelling reason to upgrade?
SaaS solves that problem by keeping everyone on the latest version.
Software is economically expensive to produce, we don't do enough to recognise that, in part because of how much free work is contributed by open source contributors and how little we recognise how much work they really do.
> Software is economically expensive to produce
Maybe we just produce too much of it in an effort to justify our salaries and stock prices?
For all the software that's been produced over the last 2 decades, I'm not aware of any significant breakthroughs to show for all that effort (LLMs might be the closest, but they are down to sheer processing power rather than software itself).
My computer in 2010 was achieving basically the same tasks it achieves now - I can browser the web, buy goods online, watch videos, chat with people, play video games, and so on. My computer today is 10-20x more powerful than the 2010 one, yet somehow everything is slower, uglier, and less reliable.
The problem is that everything after `-` is a service. Someone needs to keep those running.
By way of analogy: You don’t pay Walmart a one-time $30 fee and expect fully stocked shelves forever. You pay a small portion of every purchase to keep the supermarket service running.
Those services are either paid or havd (much less obnoxious) ads - that didn't change. OSes themselves were paid, typically baked into the purchase price of the computer.
> You don’t pay Walmart a one-time $30 fee and expect fully stocked shelves forever
But I don't expect Walmart to get worse at its primary purpose of taking my money. Imagine if Walmart replaced its perfectly-working checkout lanes with a new version where the PoS had a random ~10s delay in between scanning items, would have a 10% chance of reloading the page and force the cashier to rescan everything, would sometimes register the wrong items, and would distract the cashier with bullshit "suggestions" while he was trying to scan items. That would be crazy right?
Seems like rose colored nostalgia glasses.
- Operating systems have become MUCH more stable. I restart my computer every 3 months, it used to be every 2 days.
- I remember when I had to pause a youtube video and wait for the grey bar to advance before watching the next 90 seconds of it, and then repeating. I remember constant Skype issues around 2010. Facetime is practically flawless. Encoding has quietly gotten a lot better.
- Adaptability is amazing. I remember when software was only available on extremely specific devices, and now I can access almost everything I have from literally every device.
- Encryption by default is practically universal now.
- Seamless syncing. From version recovery to web browsing. We multitask a lot more.
- Universal file formats and APIs
2010 is Windows 7 era, not the dark ages of pre-XP-SP2. I don't recall having computer crashes out of the blue - all the ones I've experienced are due to my own fault by trying to overclock the system.
I'm sure shitty hardware and drivers is a thing (this is traditionally where Apple excelled at in comparison) but I don't recall it being an issue on quality hardware.
> I had to pause a youtube video and wait for the grey bar to advance before watching the next 90 seconds of it
Shitty Wi-Fi/broadband/peering? Ironically nowadays I sometimes experience that too, except instead of waiting for video to download I'm waiting for some Javascript to finish re-rendering the page 3 times.
> I remember constant Skype issues around 2010
Again shitty connection maybe? I was spending every evening on Skype calls and to this day it's been way more reliable than anything I've tried since, thanks to it being P2P. So I guess if you were having constant issues it's down to the network.
I think usually Windows machines crash into blue instead
Stability got good in the mid-late nineties for most Operating Systems, it's mostly plateaued since then, because it's not like you can be more than 100% reliable. My Sun Ultra 1 never once crashed in the time I owned it, same for my NT4 machine at work.
Not really. I used a Windows 2000 computer a few months ago and it worked like a charm: quickly and efficiently. Modern Windows feels leagues behind in performance.
While restarting some versions of Windows servers in the 2000s and 2010s to workaround memory leaks was normal, old OSes through history have been stable.
Linux has been around for decades and has been very stable.
Windows 3.1, 3.11 for workgroups, NT 4.0, Server 2000, XP, Vista, 10 & 11 have all been fairly stable after patches.
Win 95 and 98 after patches were stable enough. Win ME and 8 were crap, but Win 8 was more just crap experience.
Really most of the problems with Microsoft, Apple, Linux desktop environments and package systems could be categorized into being related to increases in complexity, many unnecessary changes, and just poor design or experience.
IBM chose macOS years ago because of the reduced cost to maintain them, while most IT professionals continue to choose Microsoft because the barrier to entry cost is low and because of familiarity, likely because younger people have Windows because it’s cheaper, they can play more games on it, and that’s what they grew up with, but Linux continues to be the primary server OS.
Little of that has to do with stability, and just because Windows 10 & 11 are stable doesn’t mean that things weren’t more stable 40-50 years ago. Linux admins for years prided themselves on the uptime metrics back then.
Note that Linux admins would’ve been in last ~40 years, but yes things were stable even longer ago. The problems came mostly with memory/resources not being cleaned up in C/C++ libraries and programs, primarily in Windows, because it was a little more chaotic with a lot of dev, a lot of differing hardware, and not as much oversight.
Funny how habits stick, I still shut my primary desktop down at the end of every day because for all of my youth that was just what you did.
They boot so damn fast it doesn't really matter and I kinda like starting the day with a "fresh" desktop (same reason I clean my desk every night - starting work with a neat desk is great - I trash it through the day and repeat).
I’m still fairly ruthless about not having a tonne of tabs open (also gonna be an age thing, I predate tabbed web browsers and for a while after their introduction you’d either grind them to a halt or crash them entirely with too many tabs open and too many wasn’t many).
Huh I remember times when I was basically reinstalling the system once a month because of file system issues.
Putting computer to hibernation nowadays works and earlier it would most definitely cause problems.
Imagine how miserable will be the experience to use 2010 computer with modern web and modern software!
I remember once I was forced to upgrade the old PC because it couldn't play YouTube video smoothly after they updated used codecs.
But there's many "security flaws" that are nowhere near critical or just don't apply to your use-case for the software.
Not to mention local-first software has much less attack surface for pwnage. You can wrap insecure protocols with encrypted tunnels, you can share files from a legacy app with any secure file transfer app of your choice... or if all you need is local functionality you don't need to share at all which means no remote access possible.
Of course it sucks to occasionally lose your job, but in a system that's more efficient at allocating resources, this shouldn't be as big of a problem as it is today. I would expect purchasing power to be greater across the board and we would have a more prosperous standard of living as a baseline, primarily because labor isn't locked up and wasted in organizations that don't actually produce anything of value.
Eventually for every person working the fields, manufacturing goods, and delivering them to you, there will be 5 people "working" a bullshit corporate job that doesn't create any value. Then the system will crumble under its own weight even with "100% employment" because nobody is actually producing anything. This is just the worst ideas from communism combined with the worst parts of capitalism.
Writing this might make me sound like a hardened capitalist who doesn't support labor but that couldn't be further from the truth. People who lose their jobs should be taken care of - but crucially it should be done fairly, through unemployment benefits or UBI or whatever idea makes sense. That ensures that everyone has access to the same benefits, not just the few lucky ones who land the right bullshit job at the right bullshit company.
But software is nothing like food
I lived without software for many years
As a consumer, the best software I use is not new. It's old
Today's software is literally forced on consumers
It's true they dont want to pay for it
It's given away for free as a Trojan Horse to collect data, enable surveillance and online advertising services. It also allows remote installation of further software on the consumer's computer
Or it's not delivered at all but sold as a "service"
None of this is essential like food
Consumers will pay for food, water, shelter
If they took a reasonable investment and kept a reasonably sized team, they wouldn't have to charge for a curl GUI what Adobe charges for their entire suite of industry-leading creative tools.
As for FOSS going unpaid. SaaS doesn't necessarily lead to FOSS contributors getting paid more than they would if their software was going into shrink wrapped products.
So... nothing from this century? I'm not even sure how software without activation/licensing would work out economically. You'd either need something like a CD/dongle check (which is a hassle/expensive), or accept that one copy is going to be endlessly passed around.
Most people don't really pass the license around. And it's not that much if you're a professional. But most subscriptions prices are egregious.
SaaS is fine for what it is. It's just not a trade off that suits everyone. And crucially it denies users control over the tools they're paying for.
It's not an accident that my company migrated to three clients in the space as they all met Postman's fate, and we're probably going to migrate to a fourth one soon. I'm surprised Postman is still around, but I'd be even more surprised if it's doing well.
Well then let's start recognizing it right now.
https://web.archive.org/web/20120620103603/http://zedshaw.co...
> Why I (A/L)GPL
> Open source to open source, corporation to corporation.
> If you do open source, you’re my hero and I support you.
> If you’re a corporation, let’s talk business.
> I want people to appreciate the work I’ve done and the value of what I’ve made.
> Not pass on by waving “sucker” as they drive their fancy cars.
https://zedshaw.com/blog/2022-02-05-the-beggar-barons/
> To the Beggar Baron, open source's value is its free donation.
> You would never stand on the street and offer to buy the wallets off people who are about to donate a few dollars to you. That'd be stupid.
> They're giving you their money for free. Take it and run.
Always slap AGPLv3 onto everything you make. Always choose the most copyleft license imaginable. Permissive licenses yield zero leverage. It's either AGPLv3 or all rights reserved.
I was grocery shopping the other day and saw Liquid Death, which is a brand of...water, but with edgy marketing? I'm told to "make things people need," and then regularly see rent-seeking companies held in great esteem, ultra-undifferentiated offerings such as Liquid Death, an API client with a monthly fee, and other things that seem to contradict the maxim of making things that people need.
If they see you drinking water or soda off a normal can, people will feel self conscious and get pissy about them drinking but not you, with a flaming skull on the can, nobody bats an eye.
The target audience is actually recovering alcoholics from party crowds, and the product is pure signaling.
You can use whatever version you've had for a year forever.
So if you cancel your subscription, the old version still works (and is probably fairly functional).
---
The problem that Jetbrains had before the subscription model change is that major upgrade versions (that you paid for) were driven by accounting needs rather than engineering. "Need more money?" - release the version that is currently getting built, even if it doesn't offer compelling value. "Got some neat things for the next version?" - hold off on releasing it to customers until the company needs more money.
The subscription model made it so that accounting had a stable and predictable revenue stream and engineering could release things as features were developed.
Buy 1 year continuous and you get forever access to that version.. or you can keep paying for upgrades on a subscription
..its also worked out incredibly well for them profit-wise
Mandatory upgrades are far from a solution to anything.
You mean creates the problem not know which version you have tomorrow. Great if all your tutorials are obsolete because of a sudden UI change
Bloated product backed by VC’s scrambling for any return on their investment.
Now a price per box has to be figured out, so that enough boxes can be sold per month to cover those costs.
And when you release a new feature, it benefits new users right away and you get paid for those features right away. You don't have to wait for a new version to ship. And consequently, you get feedback right away, which means you don't stack bugs on bugs only to find out at release time (this is basically agile vs waterfall).
Subscriptions are essentially the only sensible pricing model for anything with regular, frequent upgrades, and until we can make self-hosted software as easy and reliable as SaaS software (for the same cost) then we aren't going to see very much software distributed to end users (lots of software has gone the other direction though--e.g., office suites).
Once you're providing your product as SaaS, the incentives for you to gatekeep features behind higher tiers of subscription become very strong. Similarly, the incentives to create lock-in become much more prominent than they are if you only get paid again if they liked your product enough to buy the next version, too.
And, in all likelihood, the extra money—the difference between "how much we need to continue to provide a high-quality product (including dev salaries)" and "how much we're charging you"—is going to pad the execs' bonuses and fund stock buybacks.
I would love to see there be a middle ground—where any piece of software that makes sense to have as SaaS can be provided as such, for what it costs to make it plus reasonable profit, at a high quality, and the dark patterns are disincentivized through regulation and/or through voting with our wallets.
Unfortunately, given the political climate we live in, that's not going to happen any time soon. So for me, personally, by far the best choice is always going to be to pick software I can buy once and own forever, and if I want the next version I can buy that.
Yes, we never needed the cloud. We could’ve kept the servers onsite or in data centers like we used to and pay much less to do much more. I worked in a startup that had hundreds of servers, and that was enough, and that served phones from cellular customers and mobile devices from some major cellular companies and media companies. Not many IT staff were needed for that and as devs we never had to think of how it was hosted, even though I did from my former experience.
Now, when I develop, I have to have at least a basic understanding of AWS since our production code is built and hosted there.
We have so many risks now. We can’t even use a package manager without worrying about secrets being stolen. We give away our secrets and code to an LLM that knows our intellectual property before we do, because it’s creating it.
Development has been an increasing dystopia from the beginning.
I don’t know if you’ve seen Silo, but if you have look at the monochrome graphical fileserver-ish UX that they use in the first season. I love that. I wish our shit were like that.
But no. Instead we keep developing features no one asked for requiring new expensive equipment. Our aging parents can’t even operate a TV because instead of an on/off switch with volume and channel buttons, it’s either a complex UI or a cable box/TV combo with input selection- what is HDMI 1? They don’t know.
And Google Workspace is a vastly superior solution to its predecessor offline or semi-online office suites, allows live collaboration and works across devices. Hubspot has a real, usable mobile app. Even Power BI is a step up from whatever pile of excels used to pass as reporting.
Most importantly, there was no way to support my currently bog standard workflow of making docs and notes on a computer, sharing it with colleagues in a chat with a simple link, where 2-3 people can edit it at the same time, and then checking out their changes or referring back to the notes on a phone.
Not to mention stuff like presenting a deck directly into an online meeting where participants can browse ahead or look through the slides back.
All of that is easily worth $10/seat/mo in productivity and would be very difficult to configure not as a service.
Why would it be? I understand your point about convenience, but not the difficulty of it.
The idea some shared document editing is worth $10/seat/month is absolutely insane. We have built a temple to madness.
What if that host goes down when the user needs it most, who is responsible for that? Who is doing backup or recovery? What if there is a security breach and users lost data? because Internet access is a must if the server is shared among "dozens of users".
If $10/month is insane, how much should it cost and why?
Overall it works pretty well but I don’t know. It feels kind of clunky, especially with all the information it presents. Admittedly I don’t know how they can get all that information cleanly on a small screen, so I’m not really blaming them. It’s just been my experience
That’s a very obvious, legitimate security issue, why are you accusing people of being insincere about it?
Again, that's inconvenient but doable, just like phishing prevention.
>That’s a very obvious, legitimate security issue, why are you accusing people of being insincere about it?
I'm not denying it's a security issue, any more than I'm denying that phishing isn't a security issue. I even specifically mentioned the possibility of employees that fail phishing training. I'm objecting specifically to the "ransom" framing, which is a pejorative way to imply that companies have a duty to offer all security features for free.
The monkey paw curls. Now we live in a world where software is nothing but service contracts and more closed than ever.
Indeed, and that software ends up optimized for service contract billing potential over usability.
There's nothing we can do about all that and for practical reasons we just accept the world as is and tend to forget/ignore the reasons it is so. But for retaining cognitive sovereignty if think it's good to remember that.
While we could not prove anything, it would seem that intellectual property theft just happens.
Today, we use tools daily that probably function because of intellectual property theft.
While this is traumatic to me, if I really try to be objective, aside from the additional theft of art, I don’t see how this is much different than what RMS and FSF stood for. Data finds a way to free itself.
Somehow we expect FLOSS coders and maintainers to do all this free labour to keep companies from paying the True Cost of everything. Externalities, externalities…
If I ever start another business, I hope I can set aside enough cash to support for the primary open-source tools that we depend on.
That is web scraping is the SaaS form of 'piracy'.
We regularly found IPs linked to large companies using it and the licensing team regularly had a field day. Universities basically got a stern letter because there is no money in chasing those, but large companies certainly got contacted by licensing compliance.
The problem with SaaS today is that the subscription-based model is getting out of hand - the value proposition no longer makes sense, in many cases.
And secondly, vendor lock-in. You cannot get your data out. Or if you can, you will be less likely able to migrate to another provider or local application which means there is no free market where various providers can compete with better features, customer support, availability or price. Therefore, in the end the provider will hold you hostage via your own data. This is, after all, Amazon AWS's famous moat. It is often very expensive and painful to migrate into some in-house solution. And often it is simply not possible at all as it might require such a massive rewrites of your own application(understand as dependency on the provider), that it is not in the realm of possibility.
So with like everything else, you are responsible for your own choices and if you make a bad judgement, like tying yourself to one provider, that is all on you.
People keep yapping about monopolies in tech, yet they vehemently dislike decentralisation or taking care of their own stuff and want to have all the things on one place. But when things do not work out as they wanted, then these monopolies become a problem that is too late to mitigate.
tl;dr do not use SaaS of mission-critical functionality and you'll be fine.
B2B SaaS can have some really great advantages for clients. It is best if the market is somewhat competitive (say payroll) to help prevent vendors from upping prices too much.
The vendor wants to keep clients, avoiding churn. So the vendor is incentivised to keep the product current, and often add features for free.
In a non-SaaS model, the product remains as delivered, or requires version upgrades or maintenance contracts (usually crappy).
SaaS can have cheap upfront costs especially if designed for easy onboarding, and often you can quit easily (low sunken costs).
Old-school software delivery is regularly a nightmare, and over budget because the vendor is incentivised to take money from their clients.
Tht buyer needs to choose their compromises.
I worked for a payroll software company with a product that ran on Windows, and they regularly screwed over clients because there was no alignment of incentives.
However, what I understand is that this level of on and off of subscription is very difficult.
I think the path forward is to unbundle them.
We're already solving #1. Nix has the best potential to become that declarative & stable layer, letting us reach the goal of treating cloud providers as the simple commodities they should be (I wrote about this approach here: https://ryanrasti.com/blog/why-nix-will-win/)
The bigger, unsolved question is #2: how to build a viable business model around self-hosted, unbundled support?
That's the critical next step. My hunch is the solution is also technical, but it hasn't been built yet.
More weird stuff like this please.
Classic enshittification. Unfortunately, I have no idea how to evade it.
I very much resent the subscription model--it is terrible for the consumer and it's crept into everything and it's just disgusting.
Software will never, ever be more than mechanism.
Peak software is when it fades into the background, and focus stays on the task at hand.
Currently the only SaaS product that still makes sense are LLMs, but this is temporary - anyone with sense realizes that the ideal situation is to run an open-source LLM model locally and privately, but this still requires a significant investment in high-end hardware and IT technical people.
That's the basic calculation: is it overall more efficient and less expensive to hire a skilled IT team to manage your in-house solutions, mostly open-source, including security patches, than it is to rely on external providers who charge high monthly fees and use all manner of sneaky tactics to keep you locked into their products? The latter is going to win in the long run.
Of course we can't pretend that each business, or government institution is going to be able to have a handful of full stacks around just to keep up with the business requirements, but in reality, if that was the case, thing would operate much more smoothly.
Software for the masses is another category completely separate from anything that is going to help you achieve more at work, social media is an example and I think AI to a large extent is the same, since a generic gpt, one without knowledge of the past and present of your organisation, deeply ingrained in your culture will also fail to provide that particular set of knowledge that you can call invaluable for your use case.