Sergey Nivens - Fotolia
As a software development approach, low-code seems to imply that one can build an application with a minimum of its most fundamental building blocks -- the code.
While low-code doesn't really mean "no coding required," organizations often question what it is, who it's for, and what tools make it happen. It's one thing for an enterprise to see a low-code approach as a conceptual benefit, but it's another to use low code to build secure and effective software.
Here, we answer several low-code FAQs to help organizations contextualize this growing app dev approach.
What is low-code application development?
Low-code application development is an approach to software creation that reduces the amount of manual programming. A low-code app still contains code, but a platform -- not a programmer -- generates the code through its use of visual models. Businesses use low-code to create web or mobile apps. When applied correctly, low-code can speed up and reduce the complexity of the development process.
The low-code approach opens up software development to non-programmers, such as line-of-business professionals. Low-code can also help free up time in the IT organization, because IT pros can use it to quickly create routine software elements, and thereby focus their time and energy on more sophisticated projects that are crucial to the business.
What is a low-code platform?
A low-code platform is akin to an integrated developer environment (IDE). Just as developers use an IDE as a space to create and collaborate as they program, low-code development platforms supply users with a development environment with prebuilt templates and components. Low-code platforms use model-driven logic and abstract away the programming necessary to create back- and front-end functions.
Typically, a low-code user selects and manipulates items and fields in a drag-and-drop interface. Some tools provide AI-powered features, such as predictive coding, that suggest next steps for developers as they type code. When the user finishes their work, they can render the application within the platform.
Low-code platforms demand different levels of coding expertise from their users. Certain vendors pitch their tools toward professional developers, while others focus on non-programmers or line-of-business workers. Some platforms eliminate, for example, front-end coding almost entirely, but leave some work for developers to perform on the back end.
The list of low-code application development platforms includes Appian, Zoho Creator, OutSystems, Mendix and PowerApps.
What is the difference between low- and no-code?
Both low- and no-code platforms automatically translate their users' inputs into code. What differentiates low-code from no-code is human intervention. When a human programmer must modify or add to a codebase to complete an application, it's low-code. If the application can run without a human manipulating code, it's no-code.
Not everyone agrees about the differences between low-code and no-code. Vendor product marketing often conflates the two terms, and some platforms marketed as no-code often better fit the description of low-code.
Gartner categorizes no-code as a subset of low-code where all aspects of an application, aside from coded formulas and expressions, are "enabled by visual modeling or configuration." Forrester distinguishes a no-code platform as one that doesn't require any extra tooling or coding to handle app integration, UI and reporting.
Unlike no-code platforms, low-code enables an organization more freedom to tailor apps to its specific needs or requirements, as some proprietary programming is typically required.
How can I make an app without code?
With low-code platforms, the user accesses premade templates for various components, such as UI elements and application workflows. Rather than build proprietary application components via manual code, low-code users can build an application from the templates available in the platform. Most low-code platforms enable users to drag and drop components they want to use. The low-code tool then generates the app's code via model-driven logic.
The low-code approach is a form of model-driven development, where developers diagram a software's systems and logic before anyone creates code. Low-code applications still have code; low-code platforms simply remove most, but not all, of the need for hand coding.
How do I become a citizen developer?
A citizen developer is someone who is not a professional programmer, but nonetheless creates software or an application to fulfill a specific need. An organization can either assign an employee the task of building an application, or the employee might act on their own.
Effective citizen developers need to understand the business need that calls for the application in the first place. The citizen developer should become familiar with the low-code platform, via tutorials, vendor documentation and by simple experimentation.
Citizen developers should also understand the organization's regulatory needs, infrastructure requirements, data policies and security processes to build apps faster and with less risk. They should also embrace training from professional developers, who can provide valuable oversight and even quality gates for projects.