If you’re embarking on a career in software development, or if you’re already an established developer, low-code and no-code development platforms are going to have a significant impact on your life. The good news is that it likely won’t be a negative one.
As the name suggests, low-code and no-code platforms allow people to develop software with little or no coding skills. The platforms provide an abstraction layer so that users can point and click, drag and drop, configure and ultimately create applications with little or no requirement for formal development skills. (No-code is essentially a subset of low-code, so for the purposes of this article we will refer only to low-code platforms.)
It’s worth bearing in mind that low-code platforms are nothing new. Microsoft Visual Basic was a low-code tool back in the ‘90s, and there were niche development tools around even before that.
Further reading: Professional Developers Are Driving Low-Code Tool Adoption
Low-code comes of age
But modern low-code platforms, especially those based in the cloud, are far more capable, allowing more powerful applications to be developed with fewer coding skills. And they also account for far more development: Salesforce is a low-code tool, and in terms of its impact in the application development market, it is second only to IBM, according to Paul Vincent, a research director at Gartner.
This leads us to an important fact about low-code platforms. Many people assume that they are mainly used by “citizen developers” – non-developers who want to create relatively simple applications to meet specific business needs. But the truth is that they are increasingly also used by professional developers. That’s because they enable very high productivity, so developers can build applications to carry out business tasks in days or weeks that might take many months without access to low-code platforms. Mainly for that reason, Gartner predicts that up to 70% of new applications will be developed on low-code platforms by 2025.
Despite their power though, low-code platforms are not (yet) suitable for building complex enterprise applications, and that means that developers are faced with a choice.
If they are interested in developing business applications, then it may be that they will be best served by low-code platforms that will allow them to build applications rapidly to support the business.
On the other hand, if their interest is more towards traditional software development using “old fashioned” languages and frameworks, and they like the idea of developing a single product for months, or even years, then low-code platforms are probably not relevant. Put another way, are they interested in delivering large numbers of business solutions, or are they more interested in the discipline of software development?
Further reading: Low-Code Application Platforms: How Easy to Use Are They?
Devs could benefit from low-code tools
It’s important to remember that this is not an either/or choice. Developers interested in creating business solutions using low-code platforms may still need their coding skills to provide certain features that are not built into low-code platforms. And those interested in pure software development may find that low-code platforms can be used to create the least interesting parts of an application with the minimum of effort, allowing the developers to tackle the more challenging parts themselves.
It’s also important to understand that low-code platforms are now extremely powerful. One criticism levelled at low-code platforms in the past is that even though they were capable of generating an application that suited an enterprise’s needs at the time, there was no guarantee that it would be able to support more complex features that may be required in the future. That would leave the application at a dead end, unable to keep up with the times.
But Vincent points out that standardization around things like REST APIs mean that even if a feature is not supported on a particular low-code platform, it is possible to make an API call to get that functionality elsewhere.
It’s also true that many of the cloud-based platforms like Salesforce and ServiceNow have increased their capabilities very rapidly to keep up with or stay ahead of enterprises’ requirements. “They have built things like mobile application development and artificial intelligence capabilities into their application platforms so customers get these new features by sticking with the same platform,” says Vincent.
In the past there was also some criticism of low-code platforms that although they allowed greater developer productivity, that came at the cost of inefficient code. You can imagine, for example, that a platform designed to support multiple file types with the code it generates would have to be larger and more unwieldy than one that only supported the file types that an organization actually needed.
“You do get low-code bloat,” says Vincent, “but in the cloud in particular this tends to be hidden. And in any case the productivity aspect is more important.”
There can also be worries about security when it comes to low-code platforms used by citizen developers rather than professional developers. These worries are justified, Vincent says. That’s because even though the platforms constrain users to prevent certain types of security errors, citizen developers can make simple mistakes. “No professional developer would store credit card details in the clear, for example, but a citizen developer may not know that they need to be encrypted,” he says.
Ultimately, for professional developers, low-code platforms should be considered useful tools, just like low-level languages and higher-level languages. The trick is to pick the right one to get the job in hand done.
“Citizen development tools are and will be used by developers to get simple tasks done. Some developers will prefer jobs that allow them to hone their skills with Spring or other frameworks, while others will want to deliver more and more solutions using low code. But remember that there is a bigger demand for developers than there is availability, so for developers there are always plenty of career choices,” he concludes.