The concept of shareware appeared in the 1980s. Developers would use relatively primitive tools to create their software, then promote it via fanzines, user groups and bulletin boards to a niche audience of shareware fans. If you wanted to try the software, you would have to get hold of a floppy disk with it on. And, if you wanted to buy a licence, you would generally have to post a physical cheque to the developer. This was being an Indie developer in hard mode. A few people made a lot of money, but most vendors made modest returns on their efforts.
I started selling my first software product in 2005. This was a good time to start up as an independent software vendor. High quality compilers, IDEs, debuggers, version control systems and web servers were widely available and mostly free. The market for software was growing, as more and more people purchased PCs and Macs. Payment processors were starting to streamline online payments. But the real revolution was being able to distribute your software worldwide via an increasingly ubiquitous Internet. And getting noticed by potential customers, while never easy, was generally achievable through writing content for search engines to find, paid online ads (such as Google Adwords pay per click), download sites or even ads in physical magazines. With a lot of hard work and a bit of luck, it was quite possible to make a decent living.
Things have continued evolving at a rapid pace over the 20 years I have been selling software. Development tools have continued to improve. Mobile and web-based software has become mainstream. App stores have appeared. Outsourcing became a thing. Subscription payment models are increasingly common. Mostly these changes haven’t affected my business too much. But recently things have begun to feel noticeably harder.
LLMs have made a major impact. While I don’t worry that LLMs will do a better job than my seating planner software, data wrangling software or visual planning software any time soon (my main competitor remains Excel), everyone is noticing that their web traffic is falling. People increasingly read LLM summaries rather than clicking on search engine links or the accompanying ads. Maybe the LLM will include a link to the website that they ripped off the content from, but probably they won’t. So writing content in the hope of traffic from search engines is becoming less and less of a viable strategy to get noticed.
Other promotional channels are getting squeezed as well. Online ads are increasingly expensive and rife with click fraud. This makes it hard to get any chance of a return, unless lifetime customer value is hundreds of dollars. Google Adwords is a case in point. In the early days, I could get lots of targeted clicks at an affordable price. But Google have done everything they can to raise bid prices and generally enshittify Adwords, so they can grab more and more of the value in every transaction. I now get barely any clicks at bid prices I am prepared to pay.
One of the few useful promotional channels left is YouTube. But it is very time-consuming to produce videos and the amount of competition is huge. I fully expect generative AI to erode its value over time, as AI slop floods the channel.
Typically promotional channels start off great for vendors and become less great over time (the law of shitty clickthrus). But then new promotional channels appear and the dance starts again. But there just doesn’t seem to be much in the way of viable new channels appearing for Indie vendors like myself. My experiment with advertising on Reddit did not go well.
LLMs potentially also make software easier to write, which is a double-edged sword. It might help you code features faster, but it also lowers the barrier, so that more people can compete. Even if your new competition is bug riddled garbage, ‘vibe coded’ by someone who doesn’t know what they are doing, it still makes it harder for your product to get noticed.
The general cost of living crisis hasn’t helped either. The super-rich are making out like bandits, but everyone else has less disposable income. And that is only going to get worse when the current AI funding circle-jerk implodes.
Each of the different software platforms also have their own issues.
- Downloadable software has fallen out of fashion and the market is shrinking as increasingly people expect software to be web-based. People are also wary about downloading software onto their computers, in case it contains malware.
- Web-based software is more of a service than a product and is expected to be available 24×7. Expect to get lots of very unhappy emails if your server falls over. And woe betide you if your customer data is hacked. Disappearing off somewhere for a few days without an Internet connection is not really viable, unless you have employees.
- Mobile-based software is expected to be free or, at best, very cheap. So requires huge scale to make any decent return. And that is tough when there are some 2 million apps in the iPhone app store. You are also at the mercy of app store owners, who really don’t have your best interest at heart.
The new wave of AI tools must be creating new opportunities, but it seems these opportunities are mostly there for big companies, not for Indie developers. And it is very risky to build your product as a thin layer on top of someone else’s platform. Ask people who built tools and services on top of Twitter.
It feels that it is getting harder for small software vendors, like myself, to make a living. Of course, this could be just the ramblings of a 50-something-year-old, looking back through his rose-tinted varifocals. What do you think? Has it got harder?
If you want to show indie software vendors some love, check out all the great indie software for Mac and Windows (including my own Easy Data Transform and Hyper Plan) on sale at Winterfest.

I sold the first copy of my program in 2001, made very good money until 2015, and have been struggling with the idea of closing down since 2020—so you could say my experience is similar to yours (and I am in my fifties too). Sales still pay the bills, but I do not see a way to increase them. Running the business takes more and more time, as the codebase grows, regulations change, and competition appears from the least expected sides. Thank God, some time ago I switched from a lifetime updates strategy to one-year licenses (licenses are for life, but getting the new version requires renewal), as returning customers are responsible for a lot of income.
I have set a threshold below which I will close down. There is still some margin, but I am aware it will come sooner rather than later. I will have to invent a smart way of doing this, as many of my customers depend on my software to run their businesses.
So yeah, it was great while it lasted. I try to stay in touch with the latest technology, but as you mentioned, the opportunities are there for large players. We will see what the future brings, but I do not have high expectations.
I always thought lifetime updates were a terrible idea and I have never offered them.
Would be interested to hear how you plan to support current customers if/when you do shut down. Perhaps they can only download the software if they can enter an email that already bought a valid licence? You could also make the software free, but that sounds like a bad idea for lots of reasons.
Before you close down, is it worth trying to sell the business? Perhaps to someone complimentary. E.g. a seller of karakoke equipment? Or maybe a direct competitor?
Back in the days lifetime updates were a thing, I backed out from it around 2013 I think.
I was thinking of putting everything on autopilot mode, with no new updates, automated user support and sales processing. But it is still something I will try to figure out when time comes.
And selling the business sounds like more hassle that it is worth.
I still have couple of ideas I would like to implement, and surprisingly coding still is lots of fun, so maybe I will postpone the end a little bit.
I think running a mature and robust product in maintenance mode, with maybe the occasional tweak to keep it working ok on new OSes, is fine. As long as you don’t make any promises about new feature.
Friends of mine have sold their business. It definitely is a pain in the arse.
I released my first product in 1998, when I was 17. Imagine how difficult it was to maintain a website, run a technical support forum, and upload new distributions over a 56 kbps modem for six years. I released my second product in 1999, and it’s still evolving, 26+ years later.
I work with my co-founder, and we’ve invested so much in product development. For example, releasing a Mac version, adapting it to 64-bit or Apple Silicon, adding complex features.
But in recent years, we’ve been running just to stay in place. Our niche has shrunk due to the development of software in a related niche, which has begun to eat away at our market share. In 2020, our main competitor shut down, and others switched to a subscription model.
We tried releasing a new product, but it turned out that almost no one needed it.
I don’t know how much longer we can hold on. I’m 45 now, and I’ve been self-employed my whole life, writing software, and I love it.
The problem is that users expect rich software features for little money, or even free. As you’ve noticed, advertising is too expensive and ineffective for us, and download catalogs have been “dead” for 10+ years.
I remain optimistic and strive to improve my core product. I enjoy it. I have a community of users, and most sales come from word of mouth.
>But in recent years, we’ve been running just to stay in place.
That is what feels like.
To me the biggest tragedy is how Google Ads (formerly Adwords) is now terrible. And reddit does not seem to work well either. So when you release something, you are essentially buried.
In addition, your app can be made ugly by a vendor update (Tahoe).
Web apps with a subscription do mitigate these, but they come with other headaches. These however are more technical and within the developers control.
Apple love to Nuke their entire ecosystem from orbit every few years. But that is nothing new!
One thing that feels genuinely different this time around is how software is being distributed and what that implies for the shape of software and the business models behind it.
I increasingly think we’re approaching the end of the long era dominated by desktop installers, mobile apps, and even classic SaaS. Not because they’ll vanish overnight, but because for many tools they’ve become an awkward fit.
SaaS, in particular, forces vendors into roles they never set out to play: hosting infrastructure, managing customer data, carrying security and uptime risk, and operating a 24×7 service often just to deliver what is, at heart, a focused piece of software.
I’m increasingly distributing my work as published containers. Not as infrastructure plumbing, but as the product itself. In that sense, containers have quietly become the modern equivalent of the floppy disk: a self-contained artifact someone can pull down, run locally or in their own environment, inspect, and decide whether it’s useful without accounts, onboarding funnels, app stores, or a persistent service running on my behalf.
This changes the relationship between vendor and customer in an important way. The software runs where the customer wants it to run. Their data stays with them. I don’t need to hold it, protect it, or be liable for it. If they stop paying, nothing breaks. If I disappear for a week, nothing goes offline. The value lies in the tool itself, not in the infrastructure that wraps it.
It feels like a return to an older, simpler contract between independent developers and customers: “Here is something concrete. Try it. If it helps, support it.” The mechanics are different—docker pull instead of swapping disks—but the principle is the same. Distribution without gatekeepers. Evaluation without friction. Ownership without lock-in.
This doesn’t replace every desktop app, mobile app, or SaaS product, and it certainly doesn’t solve discovery on its own. But for focused tools, especially those that need to run close to data or inside existing environments, it points to a model beyond SaaS. One where vendors aren’t forced into running mini cloud companies, and customers aren’t forced to hand over their data just to use a piece of software.
That shift doesn’t make things easier. But it does make them feel more honest. And for me, at least, it’s the most promising direction I’ve seen in a long time.
Do you think software in containers has anything to offer over native desktop executables? Sandboxing perhaps?
With the rise of ransomware and similar threats, desktop applications have lost a lot of appeal in the context of small and medium businesses. Organizations, especially the ones I work with, just aren’t willing to risk installing random executables anymore. They fully expect web-based applications now. They want controlled, isolated environments that don’t expose them to malware or data breaches. Containers fit this shift perfectly. They let indie software developers deliver web applications in a safe, predictable package without no risky installs, no deep system access, all without running SaaS infrastructure.