The use of no-code and low-code development tools is a controversial topic for many in the IT community. Participating in these discussions, I've found that a lot of developers see these tools as the enemy. They laugh at the idea of tools being able to take their jobs away, and complain that they create extra work, because of the problems they cause once the applications are deployed.
Maybe people are getting too emotional instead of taking a pragmatic view of what modern day versions of these tools actually do. There are many common misconceptions out there about no-code/low-code, so let's do a bit of myth-busting. These tools can have a huge positive impact if they're adopted in a sensible manner.
No-code/low-code is for everyone, not just ‘citizen developers'
One widespread misconception is that no-code/low-code tools only address ‘citizen developers', a term that refers to tech-savvy business professionals with no engineering background. This misconception may have been fuelled by vendor marketing campaigns that have targeted those power users with profound knowledge about business processes — the kind of people who don't shy away from using tools such as complex Excel spreadsheets to ease their lives.
But let's try an experiment for a moment and instead call these platforms ‘rapid application development platforms' (RAD). The term may not be en vogue anymore, but it is closer to the actual value proposition such platforms provide: quicker development cycles and therefore faster time-to-value.
Developers always face ambitious timelines, so surely every added productivity gain is welcome? We all know the three virtues of developers: laziness, impatience, hubris. A good RAD platform caters to this by making repetitive and dull tasks easier (or even obsolete) and allowing developers to focus on the interesting, may I say value-adding, aspects.
So, the critical question is, how can such platforms make professional developers' lives easier without constraining them? I guess it's true that not all no-code/low-code tools are created equal. But the best tools today hide a wealth of sophistication behind their user-friendly point-and-click façade. Under the surface, they have been built with empathy for the mindset of software engineers and with a profound understanding of the capabilities enterprise developers expect.
Citizen developers will collaborate, not compete, with software engineers
The idea that citizen developers with the right platform can replace professional developers is nothing but nonsense. Let's be clear. The types of applications composed by business users with no-code tools are very different from what professional developers develop.
Let me give you an analogy — if you want to build a house from scratch, you're well-advised to hire professionals. Yet, many skilled people will be able to set up a drywall or build a barn themselves - with a bit of craftsmanship and the right tools. And with the shortage of handymen, those that can handle a bit of DIY will not have to wait or pay a premium fee.
The same is true for citizen development. In many enterprises, there's the need for fit-for-purpose apps to be used day-by-day by individuals or teams. Yet, IT is constantly overloaded and focused on priority #1 topics (oh, and continuous system consolidation, etc.). The consequence is that many valuable apps never see the light of day. This is the space where no-code/low-code platforms work well. With the right platform and a proper governance model in place, citizen developers can scratch their own itch without depending on IT and without creating shadow IT (more on that later!)
Low-code helps you build high-quality solutions
The third misconception is that no-code/low-code toolsets produce solutions of lesser quality or introduce more technical debt. The reality is the exact opposite! The latest generation of these platforms primarily boost developer productivity by offering re-usable, modular components or application building blocks, avoiding the need to reinvent the wheel while providing guardrails. That leads to more consistency - both within the technology stack (opinionated platform) and visually in terms of digital experience and branding.
Most importantly, these platforms are not the meta-model-driven black boxes of the past. They support seamless transition between no-code/low-code and pro-code environments, combining the productivity and automation of the former with the flexibility of the latter.
Simply put, an excellent rapid app development platform facilitates the industrialization of app development based on a platform and a stricter governance model. Such an approach results in higher quality and improves a company's ability to scale production. Great platforms go further, not only providing UX or app templates for well-known app archetypes, but even using templates by reference — meaning that when you adapt the underlying template, all apps using it are automatically updated.
An important aspect is that no-code/low-code platforms that cater to enterprise software developers should not introduce new technologies or development paradigms but must be closely aligned with the technology strategy of the ecosystem they target. Forcing developers to use disruptive, obtrusive tech is not a good strategy for developer mass adoption, nor for keeping a low TCO.
IT should take charge of no-code/low-code, not ignore it
Introducing such a platform without involving IT will only result in shadow IT, leading to more technical debt, higher TCO, and ultimate failure. IT needs to provide the application building blocks that can be used by non-engineers in a meaningful business context, which means translating technical things such as API endpoints into data sources with business semantics. IT needs to provide a catalog or marketplace where people can discover all the components they can use.
Above all, IT needs to introduce and cultivate a collaboration and governance model to ensure that:
- All the non-functional requirements are met, such as information security, data privacy, archiving, etc.
- Citizen developers are empowered to compose applications without constantly requiring support from IT.
- There is a joint sense of ownership between IT and line-of-business (LOB) functions and a community that shares both application building blocks and created apps.
Think of no-code/low-code as a technology enabler
In my experience, technology is hardly the problem when it comes to adopting innovation. Usually, people's mindsets and corporate culture are much harder to change. All the misconceptions about the maturity level and target use-cases for no-code/low-code platforms — especially among the techies — need to be addressed in a constructive dialogue.
For no-code/low-code development to fully maximize its potential, the role of IT department needs to change, from gatekeeper to enabler. Let's be frank, the whole purpose of such platforms is to reduce the load on IT and the IT dependency of LOB functions. Check out this real-world example as a case in point.
Ultimately, the whole topic of introducing a ‘citizen developer' practice requires a rethinking of how software is developed. We learned that separating development from operations was a bad idea, which led to DevOps. Now, how about staffing cross-disciplinary teams that include business experts, instead of dismissing them after the initial design thinking phase?