A brief history of zero code

Insert picture description here

By Ren Xianghui, founder of Mingdaoyun

Not writing code, or writing very little code to build software is not a completely new concept. In the 1980s and 1990s, there were very influential benchmark products in the early stages of enterprise software development. For example, Microsoft added the Access database application to the Office suite in 1992, and FileMaker, which was once acquired by Apple, was launched in 1985. Both applications are still in operation today.

Early low-code development tools can only run in a stand-alone or local area network environment, mainly for enterprise IT professionals, helping to establish various business databases with high flexibility requirements, and realizing conventional addition, deletion, inspection and modification application scenarios. Many skilled Access users are not software developers. They can design and publish business data tables on their own, allowing a department to share a database.

Real Application Platform products appeared at the turn of the century. Intuit, a well-known American financial software manufacturer, launched QuickBase in 1999. As the name suggests, it is to quickly build database applications. This product remained tepid for a long time until it was spun off into an independent company in 2016. But it does create a new way of software implementation, allowing applications to run on a packaged platform without compiling and distributing code. This is a key step to liberate user productivity and expand the user base, because companies and users who can master software development and deployment capabilities throughout the process are very limited, and the application platform takes all these prosperous and professional technical links. Therefore, this category has been called APaaS (Application Platform as a Service) in recent years.

After the development of cloud computing technology, this category has given new life. Building cloud-native applications has become simpler and more straightforward. All applications based on APaaS are obviously serverless. It even blurs the boundary between development and use. Users are developers, and developers can of course. As a direct user. In 2014, the market research company Forrestor formally proposed the concept of Low-Code, and called the related category Low-Code Application Platform (LCAP). Gartner subsequently named this category with the High Productivity Application Platform (hpaPaaS). In the past two years, the industry-wide definition of the category of zero-code/low-code platforms has begun to focus on the term "APaaS".

In the development of this category, two basic technological paths have naturally evolved.

1. Rapid development platform based on IDE framework

This technology path fully visualizes the traditional integrated development environment (IDE), allowing developers to use configuration panels and consoles to replace a considerable percentage of code writing. Developers can freely define front-end interface components, data source binding methods, data models, business logic and workflow, etc. The system automatically generates corresponding source codes, and developers can even further modify the source code. Typical products on this technological path are Outsystems in the United States and Bettyblocks in Europe, both of which are in a leading position in the corresponding market.

OutSystems development environment interface

OutSystems' development environment interface
IDE mode application platform can provide higher flexibility, especially the ability to independently control the front-end interface. However, it still involves more complex application development process management and extensive use of technical languages. The generated applications still need to be compiled, released and deployed, so the main target is still IT professionals, and even a certain code development foundation is required to learn And the time to master is relatively long. Its main value lies in improving the efficiency of developers and reducing repetitive work. Strictly speaking, the platform that generates code and compiles and runs cannot be called an application platform, but can only be used as a development platform.

2. Model Driven application platform

In the application platform market, another technology branch has become a new mainstream choice in recent years. It also further reduces the workload of code development, and even achieves complete zero code, allowing business personnel to directly complete or participate in application implementation.

The so-called model-driven is relative to the code generation and compilation process. Once the user has constructed the data model, view form, authority role, etc. on the application platform in a visual way, the application will run directly in the runtime environment provided by the platform, without the need for additional compilation and distribution. The SaaS application platform only needs to complete the user registration to directly build and use the application, no longer need to configure an independent application operating environment.

Because the traditional DevOps process is abandoned, the model-driven application platform exponentially improves the implementation efficiency and greatly expands the user base. But it also has to sacrifice the freedom of application implementation. Users cannot design the front-end interface as they want, and the complexity of the back-end logic is also limited. Having said that, most enterprise software, especially CRUD applications, have a relatively fixed interaction paradigm.

Airtable, Smartsheet, Zoho Creator and http://Monday.com, domestic Jiandao Cloud, Partner Cloud, Tritium Cloud, and our own Mingdao Cloud are all application platforms for model-driven technology routes. These products will be closer to an end-user-oriented application than a development tool.
Insert picture description here

Mingdaoyun application interface

3. Mutual design

Although application platforms generally have two completely different technological paths, specific products may learn from the opposite. For IDE-mode application platforms, it may also provide preset templates to fully visualize the data model design to reduce the learning cost of users; for model-driven application platforms, it will also introduce low-code capabilities, allowing users Use scripting languages, expressions and functions to increase flexibility. It can be said that the competition in this category is a balanced competition between product capabilities and ease of use. No matter how powerful an application platform is, it is impossible to compare to the native development model, and no matter how simple and easy to use the platform is, it will not be competitive if it cannot fulfill the needs of users.

Compared with early products more than 20 years ago, the main advancements of modern application platforms are:

1) Integration with the cloud computing environment allows users to directly acquire cloud native capabilities at a very low cost.

2) The advancement of the web application technology framework allows the browser to carry complex front-end interaction requirements.

3) The integration with mobile technology allows users to directly generate cross-platform mobile applications.

4) The level of interaction design for complex logic is improved, making it possible to realize complex application logic with visual configuration.

5) Supporting technology frameworks are becoming more abundant, including databases, caching, object storage services, search engines, container technologies, and automation of operation and maintenance orchestration, so that the application platform can provide the same performance as native application development.

In the foreseeable short-term future, application platforms will surely be able to replace a considerable proportion of native code development and greatly increase the productivity of the enterprise software industry. Market expectations around user experience and logic implementation will soon be better met.

Guess you like

Origin blog.csdn.net/mingdaoyun/article/details/108272220