Low-code application platforms (LCAPs) emerged in the modern software development landscape as a response to the need of the hour – to quickly churn out enterprise-grade solutions, with minimum hand-coding.
In most organizations, low-code development acts as a complementary force for IT departments, dramatically speeding up the process of designing in-house custom applications. This, thereby, enables IT teams to focus on business problems unique to the individual departments in the organization. LCAPs let IT build solutions at reduced workloads, save money, and still deploy enterprise-grade finished products.
Gartner predicts that the business demand for app development will grow at least five times faster than IT’s capacity to deliver it through 2021. Clearly, there’s no getting away from the fact that low-code is here to stay—and for good reason.
Focused on business executives, LCAPs originally empowered business users (aka citizen developers) to create custom solutions, in particular, for SMBs. However, what does this mean for software developers? Is writing code rendered obsolete by the compelling demand for low-code development tools?
The answer is, in a word, “no.”
Just because software can be developed on a low-code platform doesn’t mean traditional development can’t help with open-ended solutions. There’s always an edge case that requires a level of programming skills and specialized customization beyond the scope of your LCAP.
Low-code development in itself is a very inclusive approach to application development. Developers can always extend the reach of their applications with custom code. And customized reusable code extensions enable organizations to push beyond the boundaries of the core low-code platform to build even better, more flexible solutions, building on the native features of the platform itself.
Building workflows with custom code
Some degree of business process integration goes into most business applications—as approval logic or other parallel process-oriented workflows. As a programmer, you’ve probably built an application that uses some sort of workflow automation. Workflow automation helps companies improve operational efficiency and user experience.
In a nutshell, workflows do the job of executing complex logic in your application, usually without having to write code. For citizen developers, this is what makes it easier for them to build a custom application and automate business workflows.
For a programmer, however, these workflows are the key areas where their expertise can be utilized to provide a better development experience for everyone involved in the application life cycle. A solid low-code platform is often equipped with a built-in workflow builder that a dev team can use to create even the most sophisticated BPM workflows, commonly using:
The platform’s own scripting language or a DSL
Popular scripting languages (like Java)
Developers can easily understand the code behind the automated workflows and quickly create new or modify existing processes. But let’s dive into the details.
Extending workflows with the platform’s scripting language
Most application logic can be developed using predefined workflows. Business users working on an LCAP convert intricate business logic into functional workflows using code snippets and guided scripting.
But take the situation of the edge case that I spoke about earlier. When a business’ need falls outside the skill set of the non-developer user, or the scope of your platform, does app-building come to a screeching halt? The list of predefined actions and workflow templates that any platform can provide, however extensive, is nevertheless finite.
In the hands of a skilled programmer, these workflows are extendable. To cater to these specific requirements that cannot be met by the predefined workflow actions, some LCAPs support proprietary scripting languages with a higher abstraction level, aimed at enhancing programmer efficiency. Such languages can be very domain-specific, designed to accomplish one task, and do it exceptionally well. With a more natural syntax and tooling that utilizes GUIs, developers have the flexibility to define their own action scripts in the workflow. Additional logic, such as the automatic routing of workflow activities, can be easily added using the platform’s own language.
While predefined actions cover simple use cases, like hiding or disabling a field on a condition, or even sending a message or an email to an admin under specific situations, the platform’s own scripting language usually handles the more developer-centric and complex use cases, like iterating data over a loop or invoking a REST API. A company using such an LCAP may need to train its developers.
Extending workflows with popular scripting languages
Modern enterprise-grade LCAPs are designed to work seamlessly with traditional programming languages and development environments. Low-code offerings, including capabilities like serverless cloud functions, are a huge step forward.
With these offerings, development teams can extend the capabilities of low-code design tools and focus on completing their use case, while offloading the complexity of the infrastructure to a cloud provider. Developers can implement the concepts native to programming languages like Java in their business application.
Using the power of client and server-side APIs, engineers can build, package, and distribute new application functionality like connectors, incorporate machine learning and AI, integrate with third-party services, employ native mobile widgets, and even use open-source or third-party libraries. If this area is exploited to its true potential, and the offering expanded to multiple scripting languages, the possibilities would truly be endless and appeal to a vast user base.
Low-code platforms aren’t setting out to replace software engineers with business developers. On the contrary, low-code vs. traditional programming isn’t an either/or decision. Traditional programming and low-code platforms should be used in tandem:
To give non-developers a platform that they can use to create apps tailored for their needs. LCAPs bridge business stakeholders with IT, enabling them to produce visible results and gain a common vision much faster.
To give programmers a system to quickly roll out business applications, while giving them more time to focus on the more complex, bespoke aspects of software development.
Don’t believe me? Try Zoho Creator out for yourself!