In the last few months, the no-code/low-code technology offers have increased: Google, Microsoft, SalesForce, IBM and many other players offer their no-code/low-code solutions.
Implementing an application without code seems to be a challenge. Indeed, a developer is very often assimilated to a programmer, a code producer! Yet development without code is a widespread practice! You do low-code without even being aware of it.
What are low-code applications?
If you have ever manipulated a spreadsheet like Excel or one of its competitors, then you have already done low-code.
Spreadsheets are files that allow us to build our applications. When we open the Excel spreadsheet, it does nothing! It is after creating a spreadsheet that we get a working application. In itself, a spreadsheet has all the characteristics of an application: it contains information, it processes it, it allows you to interact to enter values, to display results and in the absolute to store the results.
Developing an application means defining data structures, processes, and a human/machine interface. To understand how low-code tools work we will analyze a spreadsheet program that allows us to perform these different tasks without having to write a line of code.
A spreadsheet provides the user with a model based on the notion of grids that allows them to organize their data.
Thus, the user can arrange their data in rows and columns, define that certain boxes will be constants, others will be column or row titles. In the same way, they can interactively indicate whether cells should contain numbers, dates, or character strings. The tool interprets the requests and implements them automatically. There is only one constraint: all information must be stored in a grid cell.
When the user implements a change in a formula, the spreadsheet performs the necessary calculations automatically. Modern spreadsheets offer sophisticated features, such as the ability to define sorts, filters, or even to create links between multiple tables. It is not neutral to notice that using advanced functionalities requires an effort to learn the tool.
The user can create extremely rich interfaces including in particular graphics and other data visualization tools.
Low-code tools are based on the same mechanisms. They provide generic models called meta-models, and predefined tools, called modelers, that allow the user to interactively describe (model) their needs. For example, for the data modeling part, unlike a classical development approach, the low-code tool will allow a user to interactively define their data model, then will completely offload the technical implementation of this model. Typically, the creation of a database server, the creation of database structures, or the feeding of data into these structures will be done automatically. The user doesn’t have to worry about this… This is exactly what happens with your spreadsheet when you save it: data, formulas, graphs, and layout instructions are saved in a file without you having to worry about anything else but its name and location.
Low-code, the new trend for the digital revolution in companies?
According to a Gartner survey published 2019, in the past four years, 90% of enterprises have
experienced challenges that impacted normal operations like severe operating cost pressures,
political upheavals, a leadership turnover, adverse regulatory interventions, etc.
The low-code technology help to tackle two major issues of the applications developed with the traditional method.
- Application development cycles that are too long
Custom applications have become a key competitive differentiator for companies. However, the traditional code is synonymous with long development cycles. All requirements must be known and locked in, as code is not a flexible discipline, and making changes at a later stage could result in costly delays. It is also challenging to write large amounts of code with limited resources. As a result, you are constantly having to run around to meet the demand for applications.
- Very rigid application architectures
Once completed, custom applications are difficult to modify due to their complexity. Any adjustments to the underlying code must be thoroughly tested before going live, which limits operational flexibility because application architectures are complicated to change.
In many companies, the restructuring of traditional IT methodologies related to the development of applications for different operating systems and mobile user interfaces was always treated as an afterthought, until recently. As a result, this habit puts companies at a disadvantage when they need to transform their operations to accommodate smartphones, tablets, and mobile users.
Example of usage: The banking industry
According to the McKinsey Global Banking Annual Review published in 2019, the biggest challenge for traditional banks is the need to invest in overhauling operating models to compete head-to-head with digital innovators. Both banks and Fintechs. Traditional banks and Fintechs spend approximately seven percent of their revenues on IT; but while Fintechs devote more than 70 percent of their budget to launching and scaling up innovative solutions, banks spend only 35 percent of their budget on innovation with the rest spent on legacy architecture. transforming these functions will lead to significant improvements in profitability and return more capital to shareholders.
Low-code has proven to be a much more affordable and reasonable way to promote change and transformation within financial enterprises. By democratizing the development process and promoting non-professional development, the IT department is no longer burdened with the sole responsibility of creating new apps to automate routine tasks. The applications will be also developed by non-IT departments.
Low code will help reduce overall IT costs while still addressing the development needs of a company. Furthermore, fast implementation and even faster customization and creation can provide financial organizations flexibility and agility. With front-end processes quickly automated, employees will be allowed to respond to customers faster and more effectively.
In today’s world, every sizable company needs sustainable collaboration between its departments to enhance its productivity and business model. We have seen that flexibility and quick adaptability are very important throughout the COVID-19 outbreak.
Low-code applications can be a solution to wave the company’s growth issue caused by IT costs and time development.