For the past decades, companies had to make a choice between two methods when developing a new system. One is developing the system within the company through internal staff like in-house developers (on-premises/in-house development), and the other is outsourcing the development to an external company. These two ways are like ordering a custom-tailored suit at a high-end tailor shop and thus are highly costly. As cloud migration and digital transformation took hold, some companies turned to SaaS-based systems, which are created in large quantities like ready-made clothes, and used them after making slight changes. But then most recently, low-code and no-code, which fall under the category of robot process automation (RPA), are emerging as a new alternative to existing development methods.
Low-code development is regarded as a substitute to existing software development methods. Developers without professional background or education in coding are referred to as "citizen developers," and low-code provides a platform for such non-professional developers to carry out development with much convenience.
For instance, after drawing an application page that we want to implement, we can create the software by setting the functions through "drag and drop." Well of course, we need to have some basic knowledge on software and understand how data entered by users are stored and how communication between systems is enabled. But still, only with fundamental coding skills, we can develop web or mobile applications through low-code.
On the other hand, no-code doesn’t require any knowledge on development. Even non-experts can develop a function they want to create within a shorter period of time by using a given template. In low-code development, there are things like interface and data management that should be taken care of in the back-end to some extent, but even such things do not have to be considered in the case of no-code, in turn enabling fast development. However, no-code provides only a small number of templates and therefore has extremely low flexibility. This means that we can only develop the types of applications that are offered on the platform, rather than freely creating functions that are needed in various business areas. Surely, no-code will further advance to offer functions with much more flexibility in the future, but as of now, it is faced with such limitations.
Digital transformation, a term we all have heard of, is a set of activities for accelerating digital-based innovations within companies and building the IT capabilities of all members of organizations. Predictions such as the number of applications increasing by 750 million and over 50% of existing work being automated through digitalization over the next 3 years compared to the past 40 years are also in step with such a trend.
Though countless number of applications are to be created in the following years, there is a shortage of developers by four million compared to their demand, while more than 80-90% of companies are having a hard time securing development workforce. In other words, companies are in a situation where even their employees without professional developing skills need to foster IT capabilities and create applications required for digital transformation, but are in fact experiencing a severe shortage of developers. That is perhaps why Gartner forecasts that more than 70% of app development will be carried out through low-code or no-code by 2025. There is also a prevailing view that application development, which has been a professional area of developers, will become a general task in the future. As everyone these days are capable of using email or spreadsheet, application development may become a common skill that all people should have in the future.
In the manufacturing industry, for instance, workers on site may easily create an application for managing their tasks from raw material processing to logistics when only provided with device or IoT data. Also, HR staff will be able to develop and deploy an application that can register and filter job applicants. If such developments do not require the work of IT developers, companies will be able to save a huge amount of costs.
RPA, which companies are recently adopting, will seem quite similar to low-code and no-code as it handles simple, repetitive work on behalf of humans through programming. In fact, low-code and no-code are also a sort of RPA in a broad sense. RPA generally extracts certain data and then defines the parameter and logic to simply create a program, whereas low-code and no-code offer enhanced customer experience by enabling data integration and improved workflow to users in the form of an application. For example, RPA can automate data collection that used to be conducted through Excel, while low-code can allow anyone to develop an app that shows the collected data into a chart.
Back in 2017 when GitHub celebrated its 10th anniversary, GitHub CEO Chris Wanstrath said, "The future of coding is no coding at all" while talking about the company's future vision. He stated that the core of software development is not developing a more efficient compiler nor coding centered on typing but "a change in the way software is established." He then said that the age of "zero code" where coding is not needed at all will eventually unfold. Now, this prediction is turning into a reality.
Going one step further, GitHub created and unveiled the co-pilot function which allows professional developers to conveniently make use of low-code. In co-pilot, an AI recommends which function to use or which pattern to apply in the development page in real time, thereby shortening the time and raising the efficiency of development for professional developers. More recently, GitHub also revealed a feature which enables the use of co-pilot through voice dialogue. This is probably one of the reasons why people these days jokingly say that the era of "mouth coding" where coding is done only through talking may dawn upon us.
Many of us may wonder what will become of our future when robots and AI replace many of the tasks that used to be handled by humans. We may also worry over how to make a living when coding, which has been considered a creative work that can only be conducted by programmers, is eventually handed over to AI. But even so, the rights of creative developers will most likely be upheld, given that the use and application scope of low-code and no-code are still limited and copyrights are granted to codes created by humans.