(this article originally appeared in Harvard Business Review and was written by Chris Jahannessen and Tom Davenport)

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. Systems from vendors, like off-the-rack clothing, don’t fit as well but are typically much cheaper and can be installed faster. Sometimes companies can configure these systems, but firms often find it easier to change their business to suit the system than vice-versa.

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. These applications don’t accomplish these benefits by magic, they turn over development to users instead of professional system developers. With point-and-click or pull-down menu interfaces, users can usually design and implement their individual or departmental systems in a few hours. The software may also have a conversational or search interface. Few, if any, programming skills are required.

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.

Other examples of LC/NC tools include low-code workflow or case management systems (a modern take on traditional business process management tools); virtual assistants or chatbot tools; and function-specific tools in the marketing space. They, too, now offer interfaces that make creating new applications and digital capabilities more of a matter of point-and-click and menu configuration instead of hiring and managing an army of developers.

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.” For many companies, this helps them digitize and automate tasks and processes faster than trying to hire and onboard hard-to-source development talent. However, there’s an important caveat: LC/NC software does require some level of IT involvement when they touch mission-critical or enterprise-wide systems. As companies look to LC/NC solutions, they need to be aware that these platforms — while offering cost saving, time and error reduction, and other improvement opportunities — still require some level of technical expertise to scale, maintain, integrate, and govern.

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.

Companies also use LC/NC programs for analytics, particularly visual analytics. The growth market for descriptive analytics has largely been for LC/NC programs that can generate attractive and insightful visual analytics, with some systems now focusing on delivering insights through a text or even voice-based chat experience. Although it’s not quite as advanced, vendors are also offering LC/NC versions of predictive analytics and machine learning software that take the analyst or data scientist through an automated series of steps to create models that fit a training dataset.

LC/NC programs can also be used to develop web and mobile sites. More sophisticated versions of these programs can even process customer transactions. Companies providing website design tools also often provide hosting services, and can also make available value-added LC/NC features that aid search engine optimization and social media marketing, and enable the set-up and management of digital analytics. Some LC/NC tools now make it easier for marketers to automate marketing activities such as website personalization, email marketing and digital ad trafficking.

Technology product developers can facilitate configuration and device setup with LC/NC applications. They may have programming skills, but wish to preserve them for the product itself. Simple programs for configuration and setup by users can be created by nontechnical individuals.

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.

The bulk of the responsibility for managing LC/NC development, however, will fall on department managers, since most of the resulting systems are at that level. Department managers should be encouraged to facilitate LC/NC development, and be educated about how the technology works, what tools the organization supports, and the desired relationship between citizen developers and the IT organization. They should also educate their department members on the opportunities and responsibilities of LC/NC development.

Department leaders and the executive champions, too, may need to become more educated about the best practices for scaling LC/NC tools, especially across large geographical footprints. New organizational models such as a federated COE (Center of Excellence) may need to be created, supported by internal digital portals (or “storefronts”) where citizen developers, system developers and leaders can collaborate, and learn, and quickly get help when encountering roadblocks. As LC/NC systems scale and create their own datasets around business processes, further investments in supporting analytics and infrastructure might be needed to aid governance.

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.”