Transcription
AI is currently changing everything in software development, and I want to report to you today about an example that I've encountered more and more in recent weeks. It's about a special type of software that is developed in Germany and in the world, and in this industry, which many of you likely belong to, or this type of software, incredible things are happening right now, super good things, catastrophic things, sensational and absolutely grotesque. Today was actually supposed to be a different video about Scule. We'll get to that in a moment. Why isn't it happening? I thought to myself, let's do a completely unscripted and simply freely spoken video today. Let's use this example as a model for a video because it shows in its own unique way what's going on in our industry and why we're all going crazy. After the intro, we'll get started. Enjoy. Actually, today was supposed to be a sponsored video with a hardware manufacturer, and although this video is finished, it would have had to be released by the end of the week. Unfortunately, it's not anymore. That's why I'm not allowed to broadcast it today on Sunday, when you're seeing this. But in the meantime, the little son back there in the corner is spending some time checking if this hardware platform can also play games well. Bro, gaming is running, it's running. Yes, okay. The youth are no longer present at all when it comes to gaming. So, since we can't do that today, I thought we'd take another example that I've had the opportunity to experience in several projects in recent weeks, because it shows in a very special way what's going on here. This industry is about ERP systems, not just any ERP systems, but so-called custom ERP systems. We have very, very large ERP manufacturers that, with enough money and enough consultants, can be adapted to virtually all project situations. But there are also many companies out there that have built so-called industry-specific ERP systems, which are truly built for individual industries, individual niches, where something like SAP is too large, for example, and where they have really focused on a single industry, like workshops or something, and then truly served only that niche. And these ERP systems, they function, or the entire business model functions, in a relatively special way. First of all, these ERP manufacturers have usually been around for many years, for many decades, and these ERP manufacturers usually have such a large customer base that they can no longer serve them directly, but in the middle there are some kind of intermediaries. These are sometimes system houses, sometimes consulting firms, sometimes some freelance intermediaries. In any case, they are the ones who usually resell the software, acquire customers, have contact with the customer, and usually also provide first-level support, and that's how this structure is built. [sighs] [gasps] And I've been accompanying these industries since the very beginning. My first client, whom I ever had, worked exactly in this industry. They used to make ERP systems for large-scale logistics providers, and since then I've really gathered many, many clients in the tire sector, in the car workshop sector, in the waterworks sector. Everywhere you can imagine a niche in an industry, there are corresponding ERP manufacturers. As I said, these ERP manufacturers are usually relatively established, they are large companies in the market. They've usually been on the market for 10, 15, 20, 30 years sometimes and have built their software. Usually, quite large companies have grown around them with many developers, with sales teams, with support teams, with, I don't know, product management departments, etc. And usually, it's the case that these companies, it's almost characteristic, have very, very large monoliths, and these large monoliths have grown historically, as it's always nicely put. This means they have a lot of structural and technical debt within them, and these companies are already struggling, or have been struggling for decades, with the fact that these large amounts of structural and technical debt make life difficult for these companies. Why is that? There can of course be various reasons, but one of the main reasons I've experienced repeatedly over the last 18 years is the business model itself. [clears throat] An ERP manufacturer usually gets a customer, and for this customer, they can't usually use the software directly, but a customer adaptation needs to be made. For this customer to be able to use this software, it needs to be extended. So, they build feature packages for this customer, usually sell them as well, then they usually have either one-time license costs or continuous license costs, then perhaps maintenance contracts, etc. This means, however, that a large part of the money in these companies is made through the initial license sale and, of course, through the customization that they sell to the customer at the beginning to get this software into their company at all. Sometimes, of course, there are also continuous feature enhancements, etc. And every time I want to get a new customer, I have to add more complexity, more features that need to be tested, that can cause bugs, etc., to my software through the extensions that I have to make in the software. And as a result, the software doesn't just grow with the customer base in terms of functionality, but especially in complexity. And it's currently the case that these poisoned ERP manufacturers, in order to continue to exist, to continue to employ their staff, to continue to grow, they need more customers, and they can often only do this by adding more features to the software, making it even more complex. And precisely because they are under such high functional pressure to do more projects, to acquire more customers, it is usually the case that the time for architecture, which should normally be allocated for the whole thing to grow sustainably, to be expandable and maintainable, is not granted to the developers. And that's why, in a comparatively short time, huge monoliths are usually created that are purely function-driven, that have very poor software quality in terms of software design, i.e., the very fine structure of the software architecture and the system architecture above it. And it is recognized in these companies that something needs to be done about it, that the structure needs to be changed, that so-called refactorings need to be done, but often these are all insights that were already gained 10, 15, 20 years ago, that were never properly or only half-heartedly addressed, so that over time the structure has grown ever larger, and many of these custom ERP software solutions are on the verge of being unmaintainable. My favorite example. I have a client, not the ERP manufacturer, but the end customer who uses it, and they use this ERP system, and this ERP system is so full of errors that sometimes they don't even get the audit certificate from the auditors because at the end of the year, during inventory, it's found that €300,000 worth of goods are missing from the warehouse. And this, or rather, this company is more or less completely dependent on the ERP, with all its might, dependent on this company, but the manufacturer hardly cares about it. They can no longer rebuild their software. They can no longer fix these errors. And my client, the end customer, is more or less at the mercy of this company and has to accept it and put up with these errors. A completely grotesque situation. So, and if we now consider what these companies can do with AI now. AI is on everyone's lips, and AI is a huge speed boost, it's a huge quality boost, but precisely these types of companies are usually completely helpless when it comes to AI, because I have, for example, a client, they have classes or very large classes that are about 230 to 250,000 lines of code. No matter where you load them, whether into Gemini, into GPT, or into Cloud, you'll exceed the entire context window with the very first class. That means, as soon as you do anything there, you'll exceed the context window limit, and it will start to compact. In addition to these classes, there are of course many dependencies. I spoke with a client a few days ago. They not only have large classes, but they also have incredibly steep inheritance hierarchies. Inheritance depth always means how many classes are derived from each other. For example, they have up to 19 parent classes in such an inheritance chain. This means that if we now approach these classes with AI and want to analyze something to fix them, to extend them, the AI, with its explore agents, must first understand what this class does, what surrounding classes exist, how it interacts with these classes, so that if it makes an extension, it doesn't break anything. But you can imagine, with such large classes with so many dependencies, things can go completely wrong. I've had an example where, even in the explore phase, i.e., the first step when the AI looks at the application initially, we more or less immediately went into the compaction phase, and therefore so much information was lost that we couldn't do anything with AI on this application. And of course, the problem is that in such situations, AI breaks much more than it helps. And another characteristic of these ERP manufacturers is that they have virtually no automated tests. And even if one wanted to start refactoring this software with AI, it wouldn't be possible for that reason alone. Even [clears throat] if it fit into the context window, because we don't have the corresponding tests. Now one might say, okay, we could redevelop the whole thing with AI. We've seen many examples where we can build such applications in record time with specs, but the problem is usually that precisely in these ERP monoliths, they have all grown historically, not just their architecture. This means that all the requirements that have been incorporated into the application over the years and decades are also not documented at all, or only very, very little. This means that going in and redeveloping it is not possible at all. Another problem is that they are always so busy implementing new features, doing new projects, that it's not possible to build up expertise over time. This means that even though they've been doing everything wrong for years, for years and decades, and have driven the architecture into the ground, they still haven't had time to teach people how to do it right. This means they have no established architects, and because everyone is fighting fires and is under immense pressure, they also have very little time to engage with AI in any way. And what is also always a characteristic, precisely the best people in these companies, who could drive AI and such AI projects forward, are usually tied up directly in projects because they are the ones who know exactly what to do when the fire breaks out again. And on top of that, they are more or less already struggling with economic problems. Either because customers are leaving them, because they can hardly acquire new customers because the software is in such a bad state, or because of the general economic crisis. This means that these companies, these custom ERP manufacturers, are already more or less with their backs against the wall, and AI doesn't really help them. Now we've said that in this whole chain, there are not only the ERP manufacturers and the end customers at the top, but there's an intermediate stage, namely the intermediaries. I just said how these business models normally work. This means you have customers, then new customers, then new customers, and to be able to handle this volume at some point and to be active in different regions and markets, you usually have intermediaries. As I said, these can be system houses, consulting firms, freelancers are sometimes involved too. In any case, they are the ones who have been the direct link to the customer for years or even decades, and usually also the first-level support. And I would say that the requirements that the customer has for the software are better known to these people, to these companies, than to the ERP manufacturer itself. The direct communication link is also there. They also have a lot of industry knowledge, they usually also have IT staff directly in the companies, sometimes even software development capacity. And the most obvious question I could ask there is: Okay, we can also go ahead and, if we have the requirements or masses of people in our company who could write the requirements and a few developers, then we could actually develop this software ourselves. So, and this is currently being done in many areas. These consulting firms, these system houses, these freelance developers who sit in between, they either get new staff from the job market, where development specialists are readily available and quite cheap, or they already have some, and with the help of AI, they are producing precisely this huge amount of software themselves, along with a lot of their consultants who normally advise end customers. This means that the revenue that ERP manufacturers used to generate will be generated by these companies in the future. And if we look at the whole thing, if we look at the software, it's super impressive. I've seen several examples now. The quality, if done correctly, is also quite good. And the speed, it's simply, I would say, insane. And the losers, of course, are now the ERP manufacturers, but if you look at the system houses, the consulting firms, and the stage, the intermediaries in between, they are growing from being just consulting system houses to becoming proper software development companies in a very, very short time. And many will now say, yes, but they only do low-code. No, no, they don't just do low-code. There are also some who try it with low-code, but there are also quite a few who bring in appropriate experts, just very, very small teams, and with the help of AI, they are precisely building these ERP applications from scratch in record time. We'll talk about the functional scope again in a moment. So, lastly, there are the end customers, i.e., those who have bought the ERP software in the past or are still buying it to support their business processes, to run their companies, etc. They have had problems with ERP manufacturers for years because the software is getting worse, development is getting more expensive, the number of bugs is increasing, and all these side effects that come with large monolithic software. But there are also some who have problems with these intermediaries because they collect commissions, because they are in between, because they are not good at communication, because they have favored certain [clears throat] other customers, whatever it may be. And in these companies, in these end customer companies, there are also IT specialists, and there are sometimes specialists with software development know-how, or they are also using the currently very well-stocked job market and hiring one or two really good software developers, and then they use their own specialized departments, their own business analysts, and in record time, they bring the requirements up and then develop an ERP system with AI and such know-how and very, very few developers, exactly as they need it, and thus replace precisely this software development from the former ERP manufacturers. If you look at the software, the interfaces, absolutely impressive. If you look at the quality, it ranges from very good to oh my god. But if you look at the end customers, i.e., the employees who then work with these in-house developed ERP systems, it's simply great because this software does exactly what is needed in this company. And especially with ERP systems, it's often the case that the functionality offered is far from what the specialists need, it's simply incredible, and the speed, again, is simply insane. But the point of this example with custom ERP is that I've encountered this not just in one industry, but in numerous industries. I've had it in different countries, etc. And you have to consider, if the intermediary builds their own software and sells it to the end customer, then precisely this money, more or less this revenue, is missing from the software development industry. If the end customer develops this software directly with low-code or with know-how or whatever, then this is money that is missing not from software development, but from IT, i.e., from the IT industry in general. And this is currently leading to this entire industry cannibalizing itself, I would call it. You'll say, yes, but let's be realistic, these ERP systems have grown over 20, 30 years, they have a huge functional scope, they have incredible industry know-how. Neither the intermediaries nor the end customers can just redevelop that. Yes and no. In the end, the good old Pareto principle is at work here again. If we look at the intermediaries, they often only need 20% of the original ERP functionality to make 80% of the customers happy with it. If we look at the end customers, they usually also only need about 20% of the software to cover 80% of their business processes. This is happening at a speed and in stages that are simply incredible. And what's interesting from my perspective is to sit at these different stations and observe how the individual stations are developing, what steps they are taking, and of course how they are dealing with the consequences. A lot of software is being created, and the closer it is to the customer, the more customer-oriented it becomes. And many of the ERP manufacturers, who have been established in the market for years, are standing there, can no longer defend themselves, can no longer move, can't do anything with AI either, and see this looming disaster approaching them. Lessons from this video. There are none this time, but I think it's a story that should show you quite well what's going on in our industry, how insane and how extreme it actually is. And above all, it should show you as developers and especially as companies how important it is to engage with this topic of AI, to set it up correctly, to position yourselves correctly, and with the right suitable AI strategy, to face the future more positively. In the next video, we'll deal with local AI development, and then I'll show you how you can do development locally with AI today with a modern system. That was it for our little improvised video. I hope you enjoyed the [clears throat] story. Feel free to write down below if you are also with the ERP manufacturers and how big the catastrophe is for you. So, I wish you a nice day, have fun with the video. I made the same mistake yesterday. I wish you a nice day, have fun at work. See you in the next video and bye.