With more than 50 years of near unchecked growth, business software has become… clunky. It makes a lot of sense when you think about it. People kept building on what was there before. Many of these systems became so essential that the concept of starting from the beginning was nearly unthinkable, so features and functions just kept getting tacked on wherever they fit.
When widespread use of the Internet came along, those systems started showing strain. Information had to be both protected and shared simultaneously. Secure connections were competing with requirements for performance and convenience. Our obese softwares started showing signs of strain. Hacked credit card numbers, ransomware, crashing slow VPN connections were all more than unsightly stretch marks. They were signs of a stressed system starting to fail.
The remote work required by the post-COVID world accelerated this trend like dumping gasoline on a fire. The strain on the old systems was ramped up to 11 and the frantic search for answers ensued.
Cloud technology was supposed to be the answer
Get yourself a set of best of breed, purpose-built applications that all run on the cloud. They can be accessed from anywhere, using any type of device. Using an alphabet’s worth of acronyms like APIs and ESBs you can get all of them to talk to each other. Kill off the fat old central system and set yourself free.
It was a really nice idea. The theory lets you pick from a menu of applications and they should all play nicely together. If one of them didn’t, you could cancel easily, substitute another and hook it up easily. Then you could go about your business without interruption.
Albert Einstein once said, “In theory, theory and practice are the same. In practice, they are not”. I don’t think anyone really liked how fat business applications got, but there was a reason that they did. They were tasked with a pretty huge set of responsibilities with an inordinate amount of information to share from and to a huge number of people. As a result, a whole host of experts in the field of accounting, ERP, and other business systems are fairly annoyed about software companies promising simple solutions to complex problems and not being able to deliver. They know that it is not as simple as the marketing makes it sound. They can provide very long lists of things that will go wrong.
The consultants can tell you how it will fail. I would like to offer an insight into why. It goes back to the infancy of software when COBOL and databases were first imagined into existence. Data should not be siloed. The same information should not be stored in multiple places. Raw information should be stored and aggregated information should not. These principles, amongst a number of others, that go right back to the beginning of how data was managed were not considered by the fragmented application approach that was used to create the new generation of cloud business software.
In other words, we are just fattening up another set of solutions that businesses use. Except this time they will break down faster and there won’t be a single vendor to call to fix them. Instead, there will be as many as a dozen or more, and each of them will blame the other for the failure.
Why would a whole industry of software makers enter into this systemic cul-de-sac?
First of all, not all of them did. A few companies with massive resources to modernize have tried to create comprehensive systems that are less likely to break down. Unfortunately their products, while acceptable to large enterprises, and totally out of the budget reach of small- and medium-sized businesses.
For most of the rest, the concept of building something so comprehensive was too risky and their investors and advisors told them to find one problem to solve well. They advised that smaller companies are too short-sighted to see the bigger picture and will care about solving an immediate pain. Maybe they’re right. But then again, maybe they are not.
In the meantime, what’s an entrepreneur to do? If I were to give one piece of advice it would be to be very skeptical of claims that anything you are curious about can easily be handled by integrating with another system.
The software revolution came with some great lessons. Just because they are now half a century old doesn’t mean that putting the word “cloud” in front of the word software means we should ignore them.