For several decades, organizations have had two alternatives when they needed new information systems. They could build a new system using their own developers, or they could buy a system from an external vendor. The “build” approach, like a custom suit or dress, offers a close fit to business requirements. But as with custom tailoring of clothing, it typically means higher costs and a long wait. Today, however, there is a third alternative that is becoming increasingly popular. Low code/no code (LC/NC) applications can provide a close fit to business requirements, can be implemented quickly, and typically cost much less than systems developed in-house.
Robotic process automation (RPA), for example, is one of the fastest-growing categories of LC/NC systems. Using rules for simple decision-making, it allows users to design automated workflows that can reach into multiple information systems. This is excellent for automating back-office administrative processes. Some RPA tools offer advanced features that aid discovery of automation opportunities or connectors to AI tools to create what some now call “intelligent” or “augmented” automation. RPA would generally be classified as low-code, but there are “light” versions of the software that are no-code, which are closer to “plug and play” but offer fewer options for customization and scalability.
This greatly expands the population of people who can build software applications within a business. Low-code software — which, as its name suggests, may still require some level of programming skills — is typically used by professional software developers or hybrid business/IT employees to improve their productivity. No-code software is suitable for use by nontechnical businesspeople, sometimes known as “citizen developers.”
Common Low-Code/No-Code Functionality
LC/NC software development approaches support a variety of application types. Small business transactional systems are perhaps the most common. These are applications that process business transactions — tools such as human resource management (e.g., performance appraisal), reservation management for restaurants or other experiences, order quote creation, field service management, and so forth. Large firms might have expensive packages or custom-developed programs to perform them, but small businesses can generate their own easily.
Another common one is small-scale automation capabilities. Automation of large-scale enterprise processes and workflows should generally be done by professional developers, but many firms also have smaller workflows to automate. Like more sophisticated robotic process automation, the LC/NC versions can reach into databases, email, and transactional systems, and perform tasks as if they were a human user working on a computer. This means that it can be easily applied to small tasks that an individual would typically have to attend to – including interactions with office productivity software such as spreadsheets, word processing, and electronic file folders. The advertising and marketing agency Dentsu, for example, educated several hundred employees in use of a LC/NC RPA tool. One operations analyst used it, for example, to automate email notifications of late timesheets.
Management Challenges with Low-Code/No-Code
There are great benefits from LC/NC software development, but management challenges as well. Broad use of these tools institutionalizes the “shadow IT” phenomenon, which has bedeviled IT organizations for decades — and could make the problem much worse, if not governed properly. Citizen developers tend to create applications that don’t work or scale well, and then they try to turn them over to IT. Or the person may leave the company, and no one knows how to change or support the system they developed.
LC/NC oversight can control this issue, however, and make common the handoff of applications from citizen developers to professional ones when appropriate. IT organizations need to maintain some control over system development, including the selection of which LC/NC tools the organization will support. The best situation may often be a hybrid citizen/professional development model, in which the user develops 80% of the model, and hands it off to the developer for polishing. Or the user may develop the initial application using a graphic interface tool, and then give it to a developer to program it in Python or some other more scalable language. In either case, the developer can record that the system exists, ensure that it works correctly, and connect it to any needed data or transactional system. We’ve seen organizations where one system developer supports ten or more citizen developers.
Almost every organization today needs more system development talent. LC/NC development isn’t a panacea, but it can address some of these resource shortages. Over time, it’s likely that systems will become even easier to build for common processes and use cases. As Chris Wanstrath, the former CEO of code-sharing repository Github, put it, “The future of coding is no coding at all.”