Skip to main content

Low-Code vs. Programming - It Isn't an Either/Or Decision

Appian Contributor
June 21, 2017

Low-code application development platforms have been gaining momentum in recent years, with many conversations centering around how they can supplant traditional programming for many enterprise apps. While this is true, the hype around low-code has led to some perception that low-code exists in order to replace traditional coding. In practice, however, businesses can often get considerable value out of low-code when they mix and match the emerging methodology with more traditional programming. Generally speaking, organizations can do this by:

    • Building the majority of the app in a low-code platform to establish the core functionality and having programmers add in specialized functions

    • Democratizing app creation through citizen development and allowing programmers to spend more time on mission-critical legacy apps or similar solutions that require dev team attention

These are just a couple of ways to use low-code and traditional programming in tandem with one another. What is key to keep in mind here, however, is that they both touch on the micro and macro levels of development. For specific projects, organizations can use low-code and manual coding side by side in order to help developers spend most of their time on unique and complex functions while the low-code platform lets them create the core app quickly and easily. At the macro level, on the other hand, blending low-code and traditional programming can help organizations maximize their internal development resources. Either way, finding success blending the two methodologies hinges on understanding where they diverge. With that in mind, let's look at some of the core differences between-low code and programming.

Low-Code vs. Programming in Project Startup

The initial decisions within a development project set the tone for the entire initiative. In particular, organizations determining app requirements must carefully consider what operating system they want to focus on in the development project. This is one area where low-code platforms and traditional programming are especially different.

Traditional programming: Most programming languages are designed for specific use environments, meaning they will function very differently on various operating systems. As a result, organizations that want to prioritize an iOS user base may choose a vastly differently language than for Windows. This issue is even further muddled when considering different device formats, as each operating system will present slightly different considerations between desktop and mobile computing systems.

In most cases, organizations will need to support multiple operating systems and device ecosystems with their apps, so they may need to use more neutral languages and write separate code for the parts of the app that require unique functionality. Either way, there is a great deal of work to be done duplicating core functions across different operating system environments, putting a huge manual coding burden on development teams.

Low-code platforms: The visual interfaces that allow for drag-and-drop development in a low-code platform are backed by pre-built modules designed to work in a variety of operating system environments. While the specifics here can vary depending on whether you simply select different modules to perform the same task depending on the operating system or if one module will work across ecosystems, the result is simple. It is much easier to quickly adapt an app to different operating systems and devices using low-code platforms.

"Low-code platforms simplify and streamline the entire app rollout process."

While this may seem like something that could limit functionality to fairly simple apps, leading platforms have pushed forward into allowing for native app development using low-code tools. When it comes to adapting to device and operating system diversity, low-code has a major edge. In fact, an Information Age report detailing the rise of low code emphasized that the need for faster deployment across different environments, initially in web development, fueled the rise of low-code strategies in the app world.

Low-Code vs. Programming in App Deployment

App deployment is traditionally an extremely complex process, with each line of code needing to be tested in a lab environment before rolling the solution into production. From there, multiple instances of the app need to be put in place and trials must be run to ensure they work properly in the specific configuration. The incredible variety in the programming creates inherent complexity and makes it extremely time-consuming to get apps into production.

With a low-code platform, the pre-built modules are tested for functionality prior to their release into the platform. Furthermore, the actual development environment resides in a cloud ecosystem that also covers the production environment that will host the app, allowing for much simpler deployment and testing. Information Age likened what low-code platforms offer to what content management systems do in the web world - they use a visual interface for tried-and-true functions to simplify and streamline the entire app rollout process.

Low-Code vs. Programming in App Maintenance

Like the operating system decision, using a traditional programming setup creates a variety of maintenance and updating challenges that organizations must contend with. If technical requirements for hardware change a year after your app is released, new code is necessary. If users want a feature added to the system, you'll have to get the programmers to work. If the data center configuration causes something in the code to act differently, manual changes become necessary. Over time, apps become legacy solutions as operating systems evolve, and special attention becomes necessary to keep the apps running smoothly.

All of this goes away with low-code platforms because the modular components of the visual development interface are managed in the backend by the platform provider, freeing organizations to focus on the design of the app and make small, quick tweaks as necessary over time.

Using Low-Code to Supplement Programming

All of this conversation has made low-code platforms seem vastly superior to traditional programming. In some ways, they are. A Software Improvement Group report explained that low-code platforms take many old ideas to improve development and refine them into a groundbreaking system that offers considerable potential. However, the flexibility and freedom of traditional programming shouldn't be overlooked. Businesses that value what their developers have to offer can use low-code platforms to maximize their internal development resources by streamlining most app creation processes, freeing the skilled programmers to create the nuanced code they specialize in.

In the end, low-code vs. programming isn't an either/or decision, it's an opportunity to use two strategies in tandem to drive innovation.