Let’s not kid ourselves. Generative AI is here to stay. A door has been opened that can no longer be closed. Even if the AI bubble bursts, and it probably will in the not-too-distant future, LLMs won’t disappear. The progress that has been made and the vast amount of open-weight models more than guarantee that, even if OpenAI, Anthropic, Mistral, and the others completely vanish (they won’t, but that is for another discussion), AI is here to stay. With the good and the bad.
Like most cutting-edge technologies that appeared throughout history, AI is not only a sensitive topic, but a complex one as well. There are people both on the Anti-AI and the Pro-AI side. And both parties have valid points to sustain their view. Because AI is not all good and it is not all bad. It is a tool. A very complex one that reshapes entire industries, but a tool nonetheless. And AI has done a lot of great work in the software industry, but also a lot of damage.
A bit of (my) history.
Ever since I was a young software engineer, I have been a pro open-source developer. I wanted from the start to contribute to open-source software, to have repositories that I can call my own that help others. I know that I will never have the impact that Spring, Thymeleaf, PostgreSQL, or Node, and so on had on the industry. But that does not stop me from trying to make people’s lives a tiny bit better. But life… had its ways of shifting priorities.
So it took years until I managed to have an idea actually worth developing. It started as a proof-of-concept many years ago, before LLMs were popular. I coded in my spare time. I fixed bugs. I tried to get people to be interested in my project. And for a short time, I found moderate success with it. Don’t get me wrong, Flamewing (cause this is the project I am talking about) is not used anywhere. It is not even completely stable or ready for production use. But it is mine, and even now, I believe that the web needs a modern template engine for Spring Boot.
However, Flamewing is not my only project. I had other ideas which I wanted to expand. I also discovered new technologies which I wanted to learn. I also discovered the need for software that wasn’t available in the form I wanted or was expensive. So, I tried to see how I could develop these other projects now that I was no longer limited by the knowledge I had accumulated in the 15+ years as a software engineer.
Building became easy.
After Flamewing, the first idea that I wanted to develop was a modern Text-to-Diagram engine. I had the idea a long time ago after being frustrated with how old PlantUML and later Mermaid seemed. I knew that documentation, UML diagrams, and flow charts needed something modern, lightweight, and elegant. But being a back-end developer, my front-end skills are not that advanced. And building them takes time, time which I don’t always have.
And let’s be honest. No one will just come and say “Hey, this looks interesting. Let me contribute.” from the start. I knew I needed to have at least a partially functional product before I could even share it with the world. So, with the help of AI, I managed to bridge the knowledge gap and release DrakoFlow.
But now, building became the easy part. As it did in my case, AI allowed other developers to bridge the knowledge gaps, some of whom were far from being ready to wield such power. And it allowed even non-devs to build projects. There can be an entire debate related to the quality of those products, their usefulness, or their impact. But nonetheless, the market became flooded with applications of all sorts and sizes.
Building became the easy part, at least for small and niche applications. And people thought that they could earn a lot of money in a short amount of time by using AI to build software. Or become more widely known. Or just hoping to help others. Now, when almost anyone can build an application, software is no longer the moat. Marketing became it!
The flood of apps being posted on the internet.
If you browse Reddit, you will see that daily tens of people write a post starting with “I built an app that…”. And almost as many posts with “Why am I stuck at 0 revenue?” The reasons why so many apps fail are complex, from bad marketing to apps that no one actually needs to just being too many alternatives already on the market.
The trend is not only on Reddit. It is on HackerNews. It is on LinkedIn. It is on forums. It is even on the Google Play Store or Apple App Store. But even though the number of apps has exploded in the past two years, revenue from these apps has barely increased.
So, you can say that AI has made software so widely available that we became overexposed to apps. However, almost every day I also see posts that contain the words “free” and “open-source”. Not everybody wants to become rich from their apps. Not everyone sees AI as a way to earn money. Many people see it as a way to give something back, to help others, to try to make a positive impact in the world, even if just a small one.
Differentiating between “slop” and non-”slop” became harder.
When so many applications are launched each day, most of which are assisted in the coding process by AI, it becomes really hard to know what is truly useful, truly well made, and what is not. The term “AI-slop” or “vibe-coded slop” can be seen all over the place, even where it is not the case. The software industry has changed, and in my opinion at least, you have to use all the tools you have if you want to remain competitive, including AI.
When so many things are launched every single day, not only does it make it harder for useful projects to stand out, it requires a completely different set of skills just to make sure an app is not lost in the sea of vibe-coded software. And most developers don’t have the skills to properly market their app. Me included. Or the time and resources.
So many projects get lost, their developers become frustrated, and abandon an idea that would have actually been good and helpful.
Competing with paid software.
There is another problem. Money. And I am not talking about wanting to get rich, or even earn from the free and open source software that you are releasing. Marketing an app requires money. Building an app requires money. Paying rent, food, gas, and so on requires money. Most software engineers who build open-source software have a job, so at least the last few are covered. But if you want your project to be known, it requires money to market it.
Otherwise, paid alternatives will always be more well-known, and people who could truly benefit from your project won’t, simply because they don’t know it exists. So there is a dilemma that many open source software owners have to face. Do I make my software truly free, or do I gatekeep a few features and release a paid version, just so I can cover the costs?
This is a dilemma I also had with DrakoFlow. I know that I have a good product. I know I want it to be free. But how can I compete with more established projects like PlantUML or Mermaid? Both have been on the market for far longer than Drako. Mermaid has money to spend on ads, marketing, onboarding, as well as a team of developers that can release integrations with more platforms. So the question “Will Drako be actually used?” was inevitable. I still don’t have an answer.
When I can build my own, why should I contribute to other projects?
This is another problem that AI has introduced in the open source community. When it became so easy to build a new project from scratch, people started to build products even though perfectly good, free, and even open-source alternatives already exist. I am no stranger to this either. I made a Git client in the exact way I wanted just because I could. I could have downloaded one that already exists. But no, I wanted to see if and how I could build my own, even if just for me.
And like me are countless others. I did not even release the code to my Git client. But other people did. So now there are so many solutions for the same problem, including open source ones, that new projects fail to gain the needed momentum to actually be widely used.
AI made it so that there are many solutions for a problem, but none of which becomes mature enough simply because people are starting from scratch each time, instead of helping one project to grow.
Conclusions
So, naturally, the question pops up: Is open-source dead? Will we be stuck with the same well-established projects from before the AI era? Did AI make it impossible for new ideas to flourish in the open source community? Will there ever be “a new Spring Boot”, “a new NodeJS”, “a new React?”
And the answers? Open-source is not dead. AI transformed it, and projects needed to evolve. Developers needed to evolve. But new and interesting projects will always get launched. And in this forest of applications, there will always be a sapling that will grow into a mighty oak that will shadow over the rest.
