Programmers, please don’t reject zero code

Insert picture description here
By Ren Xianghui, founder of Mingdaoyun

In our business process, we inevitably started to have some conflicts with the developer community, more precisely, some misunderstandings. We are also mentally prepared for this.

Of course, lovely programmers are often very reserved, they will not say-"What is the use of a zero-code platform? If you can develop software without writing code, why should we do it?".

They won't say it, but we know it in our hearts. When we demonstrated Mingdaoyun to a potential customer, I could almost hear the thoughts of several programmers. Sometimes people from different functions of the customer arguing face to face about whether to adopt a zero-code system, and I am also a little embarrassed.

Some outsiders kindly suggested to us to modify the product positioning name to "low code" instead of calling it "zero code" so decisively. Because it's called low code, it won't let the programmer community be too disgusted, and feel that at least there is still room for it.

In fact, Mingdao Cloud also contains a number of low-code modules, allowing some advanced users to use scripting languages ​​to simplify configuration steps and use APIs for docking development, all of which are inseparable from well-trained programmers.

But this is not the point. The goal we want to achieve is to allow active programmers to do something truly valuable, and to completely reduce those repetitive development work. The so-called "zero code" does contain some intent elements of the market statement.

What software development work does the zero-code platform replace?

In a nutshell, the zero-code platform represented by Mingdao Cloud is mainly used in the field of enterprise middle and back-end applications, especially around data management and workflow-related application categories. They are generally used inside the enterprise, and sometimes extended to the outside. Customers and partners. These applications are built around the addition, deletion, checking, and modification of data and flexible workflow management, and users can use them through browsers and mobile devices.

This summary has indeed included many scenarios in the enterprise software industry. In order to make readers better understand, I will give some more specific scenarios:

1) Business management applications based on relational databases
refer to business management systems built around core businesses in different industries, such as:

  • Invoicing in the circulation industry
  • Manufacturing production execution, material management, equipment management
  • Project Management in Modern Service Industry
  • Teachers, students, and course management in the education industry
  • Procurement, installation and service management of equipment engineering industry
  • Sales management in general B2B industry, etc.

Most of the software in this big category looks almost exactly the same. On the Web version, function navigation is often performed through the top and left menus. The main interface uses a table to list data items. Open the record details to perform various data operations and view related data.
Insert picture description here
It is precisely because of this similarity that the zero-code platform can show its talents and implement all these applications in a unified assembly method, thereby avoiding the original software development process from beginning to end.

2) Applications that use mobile applications to collect data.
Manufacturing, engineering, retail and other industries require specific functional personnel to collect data from the frontline application scenarios.

3) Use the API interface to write data and build an application to manage the board.
Extract data from multiple heterogeneous systems, deposit it into a unified data center, and combine the product's custom dashboard function to build the application needs of the management cockpit. This application scenario replaces the BI+ETL solution in another way.
Insert picture description here

4) Department-level small applications
that address the needs of specific business links Because of the ease of use brought by the zero-code system and the feature of avoiding code development, user companies can directly build or lead some simple small applications by non-developers in the business department. With unified application management capabilities, it can also prevent shadow IT problems.

5) Applications built to realize process automation The automated workflow
based on this product can be used to pass intermittent workflows that require manual coordination, such as:

  • Automatic connection of orders, deliveries and invoices
  • Time-based checklist generation, equipment maintenance reminders, contract expiration reminders, etc.
  • Automatic labeling and lead cultivation based on the lead between the sales process and the marketing process

6) Process application constructed to realize the process of data flow, reporting and review
In complex data collaboration, build a manual control workflow application based on form data, approval and filling in nodes.

Scenarios where Zero Code is not good at

In addition to these positive categories, there are also some negative lists. This means that there are many scenarios where the zero-code platform is not good at solving, such as:

1) The market scale is huge, the scene is consistent, and the general-purpose categories are
such as collaboration applications and communication applications. Of course, because of the huge capacity of these markets, there are already a large number of mature manufacturers offering products. You don't need to use zero code to build. If you want to participate in the competition in these markets, you should have a well-skilled software product development team in order to respond to market competition in a timely manner.

2) Categories that rely on very proprietary calculations or proprietary views to provide services in specific industries,
such as dynamic room rate management in the hotel industry, cash register tables in the catering industry, industrial control and special logic scheduling around manufacturing , Advertising data management around marketing goals, etc. This is like screwing countless nuts with a fixed diameter of 3 mm. There is no need to use a universal wrench.

3) Consumer-oriented applications
This is well understood, 2C applications are very diverse, and it is difficult to achieve zero code. Of course, those simple information display or shopping cart applet applications are another matter. Many small program generation platforms are essentially zero-code platforms.

I believe this list is not complete. There is always a long tail of various special circumstances in this market, so that every sporadic requirement has to be specifically structured, designed and developed.

Why is zero code better than writing code?

Once the scenario you want to implement matches our dominant direction, then I dare say that applications built on a zero-code platform are much better than those developed by most ordinary software development teams.

It may be a bit impolite to say this, but we all have to be more objective. Excellent and outstanding software development teams are always limited, and they will not develop enterprise applications that add, delete, check and modify data every day. These jobs are more appropriate to us.

1) Eliminate the interactive experience design process The
zero-code platform undertakes all the work of basic interactive design, focusing on a series of actions such as data input, query, and display. After applying the zero-code platform, there is no need to design and enhance these minutiae interactive experiences.

For example: each control of a complex form, what style should be used, what spacing should be maintained, whether it supports keyboard switching focus, etc. These details often consume a lot of repetitive work for front-end programmers.

Now, it's not necessary anymore. Our one-off paradigm design is all taken into consideration.
Insert picture description here

Some people say that if you can't personalize the front-end page design, wouldn't the applications be very similar? It is true, but this similarity is a good duplication, not a crude copy.

We can spend a few days to optimize a date input control, which is not the cost that all application front-end development can bear.

Moreover, even if you do not use a zero-code platform, when applying front-end frameworks, it is absolutely impossible to design from scratch by yourself, and you will always apply some ready-made mature frameworks. Don’t you see that the various back-end systems are almost all Ali Ant’s?

In enterprise mid- and back-end applications, good-looking interfaces and easy-to-use functions are the most important goals. Therefore, high-quality similarity is the solution to this problem.

2) Eliminate back-end architecture process
Front-end development is prone to repetitive work, and the back-end data architecture is the same. In order for an enterprise application to meet the needs of business data management and workflow, developers need to design a correct and reasonable data structure. This work is required whether it is zero-code or traditional native development.

However, in addition to the data model, native development projects also require architects to design reasonable data storage procedures and functions (reusable program structures). These tasks rely on experienced architects.

With the zero-code platform, all back-end architecture work is transformed into a visual configuration process. The data structure is established by forms, the workflow is configured by triggers and nodes, and the authority system depends on roles and highly granular authority details. combination.
Insert picture description here

Although these tasks will not be completed automatically, they no longer rely on narrowly defined software architects, and the time cost to complete these tasks is greatly reduced.

An important factor to mention here is the nightmare of back-end architecture adjustment brought about by business changes.

Once the business process generates new requirements, in most cases, it is not possible to simply modify a few lines of front-end code, and the back-end architecture needs to be adjusted.

In the past, this was the crisis of many custom-developed software projects, because often no one was found when needed, or no sound documentation was found, resulting in more and more low-quality code being stacked in subsequent follow-up revisions.

With a zero-code system, it can be done by adjusting the configuration. This is an effect that is never achieved by native development.

3) Simplify the test process
. The application built with zero code should also be tested, but the user only needs to focus on the correctness of the data processing, once and again.

The testing of traditional software is much more complicated. First, there must be white-box testing completed by the developers themselves, and a list of black-box test cases must be prepared jointly by the demander and testers.
Insert picture description here

This matter only relies on professionals, the cost is high, and there is very troublesome cross-professional communication. A complete test also needs to cover performance, compatibility and other aspects, which is time-consuming and labor-intensive.

Therefore, most custom software development does not have a robust testing process. As a customized software with only one user, the process of eliminating software defects is very long.

4) Exemption of application distribution
Development has lost a layer of skin, but for a finally usable enterprise application, in order to enable employees to start normal use, there is a process of "distributing within the organization".

This process is usually more complicated than imagined, especially those complex systems that need to assign different permissions based on different roles. After the software is developed, it is necessary to guide the user to register an account, and after the role is assigned, the user can really log in to the system.

At present, more and more companies have begun to use platforms such as DingTalk and corporate WeChat, which means that it is best to develop enterprise applications that can adapt to these platforms, at least to achieve the connection of user accounts and message notifications.

Zero-code systems generally have a complete corporate management back-end, providing users, departments, functional roles, reporting relationship configuration, and pre-connected with Dingding and corporate WeChat platforms.
Insert picture description here

In this way, applications built with zero code are not only delivered quickly, but also easy to deploy to users. If the role of a certain application needs to correspond to the financial cashier of the enterprise, after configuration, as long as someone enters the financial cashier position, they can automatically get the access rights and appropriate permissions of this application.

5) Make demand communication easier

In the process of developing enterprise software, the most painful and expensive process is really not to write code, but to communicate with requirements so that developers can understand the application goals of the software and master the necessary background knowledge. In the slightly more complex fields of enterprise software, such as manufacturing process management, logistics management, material management, equipment management, warehouse management, and financial information exchange, the source of software design comes from best practices in corporate management. Without the operational knowledge of the enterprise, it is impossible to develop usable enterprise software.

Ever since, the main cost of enterprise software development is invested in these voluminous demand communication.

Usually the developer provides a framework solution, knowledgeable customers can basically judge whether it is appropriate, and then the client enterprise needs to put forward combination and modification requirements for its actual operation, and the developer records it in the requirements list and uses the scope of work document (SOW) And the prototype drawing for customers to confirm.

Even if it takes a lot of time to do the preliminary requirements confirmation work, there will still be a lot of adjustments and confirmations at the point of actual delivery. This is why delivery is the nightmare of traditional software development services. Cost and schedule are easily out of control in these links.

The zero-code platform first provides a possibility-no developers are required to participate, and business personnel who are proficient in requirements directly implement it independently, because they do not need to master code development knowledge.

Because the demand side realizes it directly and independently, it naturally eliminates repeated demand communication and confirmation. Everyone can develop software. This sentence is half a declaration and half a reality. It all depends on the user's own clarity of needs and willingness to learn new tools. Why are Americans used to DIY? On the one hand, it is because the hired workers are too expensive, on the other hand, it is supported by the very developed and cheap DIY tools.
Insert picture description here

Even if the zero-code platform is provided by the technical team, the business demander can easily confirm whether the demand is met through the pre-built demonstration modules. The communication between the builder and the user will be very smooth, and sometimes, the user can't help but start by themselves.

Where to put the development power of Zhenger Bajing?

Will the zero-code platform replace all programmers' work?
I don't think it can, at least it is unrealistic in the short term. The zero-code platform still has a long product roadmap to be completed. Even if we take Dali pills and immediately make the product simple, easy to use, powerful and versatile (although there is almost no such product in the world), it will take time for corporate users to build trust.

At least for the moment, programmers can start to shift their energies to more valuable areas. Boldly hand over our areas of expertise to the zero-code system to try. Anyway, platforms like ours provide free trials, and you don’t have to spend any effort if you can’t.

However, it would be unfair to prevent and persuade others not to try before they practice it. Zero code can build usable applications for customers to perform actual verification, at least partial modules. Native software development cannot be so bold. No matter how customers don’t trust, you can’t develop software well. Go and sign a contract with the customer.

Really valuable native software development should focus on the huge customer base, and the modular design can be one of the top ten markets
. The success of the software industry is based on "copy". If a set of software is a user, this is a shame in the software industry. . In the Chinese market, there are still many areas of software products worth investing in, and in some market segments, zero-code platforms have no advantage.

For example, e-commerce ERP and extended new retail solutions, intelligent marketing automation tools, these markets are still not saturated, but the zero-code system lacks basic framework modules and ecological connections, and it will be more difficult to do.

Moreover, even with zero-code applications, customers continue to choose some packaged software products for mixed use. In this process, there are still supporting integrated development work to be completed in order to provide customers with a complete application experience. These integrated developments involve rationally designing data interfaces around business requirements, establishing data scheduling services, and connecting to different network environments. Of course, another branch of zero code-Integrated Platform as a Service (IPaaS) is also working hard to reduce these repetitive tasks through productization.

Does every programmer really have to write code for a lifetime?
If you want to expand your horizons outside the field of code development, and want to make full use of your existing IT knowledge, then help more people use the zero-code platform, plan application construction around business needs, and provide necessary integrated development services. Isn't it a good choice?

Many programmers want to learn more about business, but it is not enough to serve business needs. Participating in the planning and design of business needs can truly change perspectives and successfully cross-border.

From Coder to No-Coder, there is no price drop.
I always think that the most valuable characteristic of the programmer community is the ability to learn. After all, in the field of code development, you also need to continuously learn and master the new technology stack to continue to eat this bowl of rice. So today, when zero code becomes an option, wise programmers will not blindly reject it, but should play with it. If you are really interested in code development and aspire to become a high-level programmer, joining Mingdaoyun is also a good choice, because the zero-code system is indeed written in code (Java as the core).
Insert picture description here

Guess you like

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