The world is hungry for software that can make companies/businesses more efficient and competitive. And wants it delievered quicker and cheaper, but we are going down the wrong way with “low-code”.
No one can deny that the “low-code” movement took (alongise COVID) 2020 by storm, with the likes of Outsystems, Salesforce or Azure Power Platform, amongst many others, offering the so-long promised land of “cheap and quick software without even knowing what you are doing”.
After many years designing and building software, my personal view is that the marketing behind “low-code” will be soon vanished, as it is failing to provide scalable, maintanianable and repeatible solutions.
The challenge is, “low-code” still requires skilled people to create solutions that works at company (or market) scale, and in a one to one fashion, yet there is no way to decouple development and maintenance and headcount.
How is “low-code” to fix the problems of a talent starving world if company business future is still to head count? Developing faster with “low-code” is only a patch.
As an example, one of the recent success cases for a “low-code” platform was the development of a COVID-19 control app in just “three days”, for a client. If you think how many potential clients are in the world (millions), 3 days per client, it is still 3 x millions days worth of effort.
When Steve Jobs introduced the iPhone back in June 2007, it came with a huge restriction: Only Apple was able build and deploy applications to its brand new invention. No native apps from third-party. The solution, back in the day, was to build a “web app”, with all the limitations it had (and still has nowadays).
It was not until July 2008 that the App Store and the required SDK came to the world, after realising Steve Jobs what amazing oportunity and revenue stream was to fully open their platform to world and charging them a fee for every transaction, of course. The “i” family also brought in new revenue streams to Apple over the years, like Services (iCloud, Apple Music, Apple TV+, Apple Pay)…
In the same way, the “low-code” movement is failing to understand the true potential of the opportunity: This is not about create “fast” developers that throws screens without thinking. But to create the platform, tools and foundations for people around the world to create, publish and monetise amazing software that solves real-world problems. All under the some governance and rules that allows inter-operatibility, central monitoring and operation.
Delivering business value quicker and faster.
On the other hand, traditional software vendors, who work closer to this “platform” and “module” idea, are also failing to solve the “vendor lock-in” issue Apple was experimenting. Their talent, budget and ideas are limited. Their products are rather difficult to integrate with others.
Probably most of them hopes to achieve the “single-vendor” scenario that brings all the revenues to them. But also creates siloed data sources, niche market products (e.g. ETRM, Risk management, Underwriting, Case Management, Incident Management… you name them) and usually ends in products hyper-customisations (you have no choice but this vendor solution) that difficults version upgrades.
We have also got good learning from the Cloud.
Most Platform-as-a-Service (PaaS) ans Software-as-a-Service (SaaS) solutions are so successful today, mainly because they managed to decouple head-count from build, deployment, and operation. By packing, simplifying and automating (industrialising) the deployment and operations. Something that resembles to a car manufacturing plant.
Plain and simple, you don’t ask for a person to create a VM, on which another person manually install and configure a software, another person makes all the security tweaks… It is all packed and parametrised in inter connectable modules (VNET, Database, Cache, Function, Container Orchestration…) on top of a provisioning automation layer (For those coming from the Azure world, the Azure Resource Manager).
It is still, however, complex to design the solution and required highly talented professionals. But it now everything is faster, simpler and head-count scalable.
This is where the idea of Business-as-a-service (BaaS) comes back to life. It is a term coined some years ago however: The idea of completely abstracting a company from most IT side of things and let it focus on its business: e.g. You are a Utilities company, there is a BaaS that has all you need (ETRM, Risk Management, Currency Exchange, Invoicing…). Few tweaks to interconnect the modules that better fits your needs. Parametrise, click, run and pay-as-you-go.
That’s, again, where BaaS failed to deliver: No one single vendor in the world has or can have the solutions to all the problems.
Like in any of the major Cloud Providers, we need to think in packing and release/operation automation, instead of have more monkey developers: Create a platform, with packed modules that can be combined in many ways that can fit most of the needs. Focus on how the pieces should be combined, and not building everything from scratch using “low-code”. Let it be as many modules as the world wants, and let the natural selection (reviews and excellence) let the winners take their stage in the world. And let the mediocre die.
Going back to the COVID-19 app example highlighted earlier, a “BaaS” App Store-like platform would be able deliver a solution that seamlessly integrated with other pre-existing modules effortlessly (employee management, time management, absence management), thanks to the introduction of standard integration contracts and the use of orthogonal architectures. And deployed/sold millions of time without the need to pay for millions of “low-code” day developers.
In conclusion, in the same way a car production chain improved its efficiency by creating individual components and sequence chains, and adding automation on top of it, the winner in this race to feed the world with useful and cheap software will be the company that is able to tell how the components can be created, sequenced and automated and opening it to the world by establishing something similar to the App Store and Services models Apple created during the “i” disruption.
This will be the major disruption to the IT business after the Cloud. And my bet is, the question is not if, but when this will happen.