No-code or low-code – what’s the difference and what's right for you?
Transformation is in the air, but many organisations are unsatisfied with old approaches and are looking beyond the traditional custom-development path for ways to achieve their digital goals.
In the current climate, coders are kings, but this trend is changing. Code creates a conundrum for businesses and no-code / low-code platforms have emerged as the strong alternative.
To code or not to code, that is the question.
What’s the problem with code anyway?
There’s no problem with code per se – as long as you have the patience, resources and capabilities in place to support sophisticated software development. Sophisticated, because that's what it has become. Coding is here to stay, but it’s a resource-heavy rollercoaster ride at the best of times and it’s good to know there are alternative or complementary approaches out there for organisations of all shapes and sizes.
Legacy is the thing to watch out for and is part of daily conversation in older industries like banking and insurance. One thing you can count on with software is that by the time you’ve finished with it, it’s already on its way to becoming obsolete. Things change and the reality is that software rarely keeps up.
Software solutions house a plethora of business rules and processes, which, over time, tend to become misaligned with evolving business needs. These rules and processes are essentially an organisation’s Intellectual Property (IP) and key value proposition, defining what they do and how they do it. The things that define an organisation and its products are captured in thousands of lines of code, resting on the shoulders of highly skilled developers.
That code can be subjectively interpreted, so the ‘IP in code’ organically shifts every time a new developer touches it, drifting further and further from the organisation’s eye with every change. It’s not human-readable, so typically, it can’t be validated by the business user who owns or needs it. It’s the equivalent of a long, complex message interpreted and reinterpreted by linguists, theologians and historians over time, written in an ancient transcript – we can theorise about the original meaning, but the truth is lost in time. Business IP becomes ‘black box’ and change is a bit scary for all involved.
It’s clear then, that managing code is complicated and despite frameworks and automations, it requires highly skilled people to keep it moving. But what’s the alternative?
Considering a No-Code or Low-Code platform for your organisation?
Enter no-code / low-code
Despite the current hype around no-code / low-code, the concept has existed for decades. Microsoft Access and Excel launched many an IT career in the 90s and early 2000s by delivering applications that enabled tech-savvy business users to have a go at solving their own problems. Granted, over time, this often resulted in new problems, with critical applications suddenly living beyond the watchful eye of the IT department. IT then needed to step in to inject governance and security for solutions that accidentally became business-critical. The concept of ‘citizen development’ was born, along with a level of complexity and risk that is often misunderstood. But that’s a topic for another day.
Modern platforms have evolved over the past decade, introducing an element of enterprise robustness. Security, resilience, testing and other architectural advancements have been introduced to meet the expectations of more sophisticated users and organisations, elevating the prominence of these platforms as an interesting alternative to traditional, wholly coded solutions.
No-code and low-code adoption has ramped up with the increased appetite for rapid, agile digital transformation and the challenge of the ever-widening IT talent gap. At the same time, a tsunami of no-code and low-code platforms has entered the market over the past five years, targeting different types of problems and servicing different needs. Add in the effects of the pandemic and digital transformation has kicked into overdrive, propelling no-code / low-code into the limelight.
No-code and low-code – are we just splitting hairs?
There are more than a few letters that separate ‘no’ and ‘low’ code and the differences are rarely visible to the untrained eye. The needs and capabilities of an organisation are a good place to start when evolving beyond coded solutions and it’s important to scratch below the surface before deciding whether no or low-code is a suitable development path.
No-code and low-code are largely about speed and reusability, with the (occasional) added promise of citizen development. No-code and low-code platforms typically work by employing visual programming interfaces, giving users blocks of pre-built functionality to create apps with relative ease and speed. No-code stands out as the ultimate enabler, giving users the power to focus on defining what the app does, rather than how it does it.
Low-code platforms, on the other hand, start with pre-built functionality, but require coding expertise at some point, either in return for extensibility or simply because the platform hasn’t quite nailed its purpose. Low-code platforms often hide behind no-code masks though, so it pays to challenge their promises.
No-code and low-code are largely about speed and reusability, with the (occasional) added promise of citizen development.
Wrapping an email function into a simple app then seems simple. But what if that email function needs to cater for more complex authentication or encryption requirements, or if the message body needs dynamic HTML based on external factors? These are difficult scenarios to expose as configuration. In a low-code world, you may quickly find yourself in code again.
This is not necessarily a problem, but it is an important consideration – the limits of low code mean you will get into code, so coding skill type and seniority need to be factored into the no-code / low-code equation. If your organisation has development capabilities in-house, low-code can be a great way to accelerate your development process and mitigate legacy. It just means lesser technical users are less likely to be able to get involved in any material way. Dependency on high-demand skillsets also remains, so expectations may need to be managed.
The pros of no-code and low-code
1. Human readable
It’s human-readable. There’s a lot to be said about having your critical business processes and rules implemented in a way that a non-developer can read. It gives confidence in the as-built solution and promotes continuous innovation.
2. Faster to build
It’s faster. Much faster. Fully-functional apps or proof of concepts can be built in hours or days, rather than weeks. Generally, the closer to no-code the platform is, the faster it gets.
3. More accessible skills
It flattens the skill curve. Building blocks with fixed design patterns mean you’re not as reliant on in-demand skilled developers, with the work typically shifting towards Business Analysts and tech-savvy power users.
4. Quick deployment
Most platforms have a quick path to deployment, making launches easier and reducing stress for the development team. Continuous integration and continuous delivery (CI/CD) can be a challenge for some platforms, though, and beware – no code doesn’t mean no governance.
5. Lower TCO
Despite the cost of the platform, the speed of delivery and reduced skill demands generally result in a substantially different total cost of ownership (TCO), not to mention the opportunity cost realised through improved speed to market.
The cons of no-code and low-code
1. Rogue IT
Rogue IT issues can occur (projects that are managed outside of, and without the knowledge of, the IT department) if the proper processes aren’t set up to manage change. Low-code application platforms offer immense customisation options, as users can code and change elements as desired, but the right governance processes need to be put in place.
Most platforms offer the ability to import/export configuration, but there are often limitations, which may or may not be considered a problem. These risks can be negated by choosing the right platform for the right reasons and using it to solve the right problems, not all problems (just because it can).
3. Learning the platform
If you plan to get hands-on, be aware that even no-code platforms require some learning/onboarding. Low-code means you will code, so understanding what the real skill requirements are and how readily available they are within your business and the broader employment market is crucial.
4. Complex license fees
Simplified development doesn't always mean simple pricing. Some of the ‘old guard’ platforms have exorbitant and/or complex license fees making it very difficult to predict scaling costs. Some platforms are difficult to learn, so you end up relying on ongoing professional services, which can negate the benefits.
Be sure to explore the modern challengers, particularly in the enterprise space, which have architected solutions from the ground up to satisfy modern requirements and have also considered the needs of those that pay the bills too.