Ren Xianghui, founder of Mingdao Cloud

Inevitably, in the course of our business, we began to have some conflicts, or more accurately, misunderstandings, with the developer community. We are also prepared for this.

Of course, cute programmers tend to be reticent and don’t say, “What’s the use of a zero-code platform? Why should we if we can develop software without writing code?” .

They won’t say it, but we know it in our hearts. I could almost hear a few programmers thinking when we demonstrated the cloud to a potential customer. Sometimes I get a little embarrassed when people from different client functions argue in person about whether or not to adopt a zero-code system.

Outsiders have been kind enough to suggest that we change the product positioning name to “low code” rather than “zero code”. Because it’s called low code, at least it doesn’t make the programmer community too averse and feel useful.

In fact, Mingdao Cloud also includes several low-code modules that allow some advanced users to use scripting languages to simplify configuration steps and apis for docking development, all of which require trained programmers.

But that’s not the point. What we want to achieve is to get current programmers to do something really valuable, and to cut out the repetitive development work completely. Called code zero, it does contain some element of marketing statement intent.

What software development jobs are being replaced by zero-code platforms?

Generally speaking, the zero-code platform represented by Mingdao Cloud is mainly used in the enterprise background application field, especially around data management and workflow related application categories. They are generally used in the enterprise, and sometimes extend to external customers and partners. These apps are built around adding and deleting data and flexible workflow management, and are used by users through browsers and mobile devices.

This summary does cover many scenarios in the enterprise software industry. In order to make the reader understand better, LET me give some more specific scenarios:

1) Business management application based on relational database

Refers to business management systems built around core businesses in different industries, for example:

  • The purchase, sale and storage of circulation industry
  • Manufacturing production execution, material management, equipment management
  • Project management in modern service industry
  • Teachers, students and curriculum management in education industry
  • Equipment engineering procurement, installation and service management
  • General B2B industry sales management and so on

Most of the software in this large category looks almost identical. On the Web version, functions are usually navigated through the top and left menus. Data items are listed in tables on the main interface. You can perform various data operations and view associated data by opening record details.

Because of this similarity, zero-code platforms can be a great way to implement all of these applications in a unified assembly, avoiding the native software development process from beginning to end.

2) Data collection applications using mobile applications

Industries such as manufacturing, engineering, and retail require specific functions to collect data from the front line.

3) Use API interface to write data and build management kanban application

Extract data from multiple heterogeneous systems, precipitate to a unified data center, and combine the product’s custom dashboard function to build the application requirements of management cockpit. This application scenario replaces the BI+ETL solution in another way.

4) Department-level small applications that solve the needs of specific business links

Due to the ease of use brought by zero-code system and the characteristics of eliminating code development, user enterprises can be directly built by non-developers of business departments or lead some simple small applications. With unified application management capability, IT can also prevent shadow IT problems.

5) Applications built to automate processes

The automated workflow based on this product can get through the intermittent workflow that used to require manual coordination, for example:

  • Automatic connection of order, delivery and invoice
  • Time-triggered check list generation, equipment maintenance reminder, contract expiration reminder, etc
  • Based on the sales process and marketing process between the lead automatic labeling and lead cultivation

6) Process application built to realize data transfer, filling and audit process

In the complex data collaboration, the application of manual control workflow based on form data, approval and filling nodes is constructed.

Scenarios where zero code is not good at

In addition to these positive categories, there are also negative lists. There are also many scenarios that zero-code platforms are not good at solving, such as:

1) Products with huge market size, consistent scenes and high degree of universality

Like collaboration applications, communication applications. Of course, because these markets are huge, there are already a large number of established vendors offering products. You don’t have to build with zero code. If you are going to compete in these markets, you should have a well-skilled software product development team to respond to the competition.

2) classes of services that rely on very proprietary computing or proprietary views in a particular industry

For example, dynamic room price management in the hotel industry, cashier row table in the catering industry, industrial control and special logic scheduling around production and manufacturing, advertising data management around marketing objectives and so on. It’s like trying to screw a million nuts with a fixed diameter of 3mm. There’s no need to use a universal wrench.

3) Consumer-facing apps

This is easy to understand, 2C applications are very diverse and difficult to implement through zero code approach. Of course, simple information display or shopping cart applets are a different matter. Many applets are essentially zero-code platforms.

I believe that the list is not complete, and that there is always a long tail of special cases in the market, so that every single piece of requirement has to be specifically architected, designed, and developed.

Why is zero code better than writing code?

Once you have a scenario that is aligned with our strengths, then I would say that an application built on a zero-code platform is much better than the vast majority of applications built by normal software development teams.

I’m being a little rude, but we all have to be objective. There are only so many good and great software development teams out there, and they don’t spend their days creating enterprise applications that add, delete, and change data. We would be better placed to do the work.

1) Avoid the interactive experience design process

The zero code platform does all the basic interaction design around data entry, query, presentation, and so on. With a zero-code platform, you don’t need to do all the details of interactive experience design and enhancement.

For example, what style should be used for each control in a complex form, what spacing should be maintained, whether keyboard switching focus should be supported, etc., these details often cost front-end programmers a lot of rework.

Now, no more. Our one-time paradigm design takes everything into account.

Some people say that if you can’t personalize the design of the front page, then the application is not very similar. That’s true, but the similarity is good repetition, not gross duplication.

We can spend days optimizing a date entry control, which is not a cost that all application front-end development can afford.

And even if you don’t use a zero-code platform, it’s impossible to design your own front-end framework from scratch. You’ll always use a ready-made framework. Don’t you see that all the background systems are almost aliant’s?

In the enterprise background application, good interface, good function is the most important goal. Therefore, high-quality similarity is the solution to this problem.

2) Eliminate the back-end architecture process

Front-end development is prone to duplication, as is back-end data architecture. In order for an enterprise application to meet the needs of business data management and workflow, the developer needs to design the right data structure. This work, whether zero code, or traditional native development is needed.

However, in addition to data models, native development projects require architects to design sound data stored procedures and functions (reusable program structures) that rely on experienced architects.

With zero-code platforms, all back-end architecture work is translated into a visual configuration process, with data structures built by forms, workflows configured by triggers and nodes, and permissions systems combined by roles and granular permissions details.

These tasks are not automated, but they are no longer dependent on narrow software architects, and the time cost of doing them is much lower.

Another important factor to mention here is the back-end architecture nightmare of business change.

When a business process creates new requirements, most of the time it can’t just change a few lines of front-end code, and the back-end architecture needs to adapt.

In the past, this was the bane of many custom development software projects, as people were not available when needed or sound documentation was not available, resulting in more and more low-quality code piling up in subsequent changes.

With zero code systems, it’s just a matter of adjusting the configuration. This is something native development will never be able to achieve.

3) Simplify the testing process

Zero-code applications are also 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, white-box testing is done by developers themselves, and black-box test case lists are written by demanders and testers together.Relying on professionals for this alone is costly and involves cumbersome cross-disciplinary communication. Complete testing also needs to cover performance, compatibility and other aspects, which can be time-consuming and labor-intensive.

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

4) Dispense with app distribution

Development has dropped a layer, but an enterprise application that is eventually available has a process of “distribution within the organization” in order for employees to start using it properly.

This process is often more complicated than expected, especially in complex systems that require different permissions for different roles. After the software is developed, users need to be guided to register accounts and assign roles before they can log in to the system.

At present, more and more enterprises have started to use platforms such as Dingding and enterprise wechat, which means that the enterprise application developed should be able to adapt to these platforms, at least to achieve user account and message notification.

Zero code system generally has a perfect enterprise management background, providing users, departments, functions and roles, reporting relationship configuration, but also advance and nail nail and enterprise wechat and other platforms connected.

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

5) Make requirements communication easier

The most painful and expensive part of developing enterprise software is really not writing code, but communicating requirements so that the developer understands the purpose of the software and has the necessary background knowledge. In the slightly more complex areas of enterprise software, such as manufacturing process management, logistics management, materials management, equipment management, warehouse management, and financial information exchange, software is designed entirely from enterprise management best practices. It is impossible to develop usable enterprise software without knowledge of enterprise operations.

As a result, the majority of enterprise software development costs are invested in these complex requirements communication.

Usually, the developer provides a framework solution, and the knowledgeable customer can basically judge whether it is suitable. Then, the customer enterprise needs to put forward the combination and modification requirements for its actual operation, and the developer records them in the requirements list and uses the SOW and prototype diagram for the customer’s confirmation.

Even if you spend a lot of time doing requirements validation up front, there’s still a lot of tweaking and validation going on when you get to 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.

Zero-code platforms first offer the possibility of developers not being involved, and business people who are proficient in requirements implementing them themselves, because they don’t need to have any knowledge of code development.

Because the demand side directly and autonomously realizes, it naturally eliminates the need for repeated communication and confirmation. The idea that anyone can develop software is part manifesto, part reality. It all depends on the user’s own clarity of requirements and willingness to learn new tools. Why do Americans do DIY? Partly because it is too expensive to hire workers and partly because of the very developed and cheap DIY tool support.

Even if a zero-code platform is serviced by a technical team, it is easy for the business side to verify that the requirements are met through pre-built demonstration modules. The communication between the builder and the user is so smooth that sometimes the user can’t help it.

Where to invest serious development efforts?

Will a zero-code platform replace all of the programmer’s work?

I don’t think so, at least not in the short term. Zero code platforms have a long product roadmap to complete. Even if we were to take the big shot and make our products simple and powerful right away (though there are few of those around the world), it would take time for businesses to build trust.

For now, at least, programmers can start turning their attention to more worthwhile areas. Boldly give zero-code systems a try at what we’re good at. Anyway, we have such a platform to provide free trial, can not achieve, you do not have to spend unjust efforts.

However, it is not fair to discourage and dissuade others from trying until they have tried it themselves. Zero code at least can build a usable application, let customers to carry out actual verification, at least local modules, native software development can not be so heroic, customers no matter how distrust, you can not put the software development, and then to sign a contract with customers.

Truly valuable native software development should focus on markets where the customer base is large and where pattern-based design can dominate

The success of the software industry is based on “copying”, if a set of software is a user, it is a shame for 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 zero code system lacks basic framework modules and ecological connections, it will be difficult to do.

And even with zero-code applications, customers will continue to choose some suite of products to mix. In this process, there are still supporting integrated development work to be completed in order to provide customers with a perfect application experience. The integrated development involves reasonably designing data interfaces, establishing data scheduling services and connecting different network environments. Of course, another branch of Code Zero, the Integration Platform as a Service (IPaaS), is also trying to cut down on this duplication through productization.

Does every programmer really have to code all his or her life?

If you want to expand your horizons beyond code development and leverage your EXISTING IT knowledge, wouldn’t IT be a good choice to help more people use zero-code platforms, build applications around business needs, and provide the necessary integrated development services?

Many programmers want to learn more about business, but it’s not enough to just serve business needs.

Going from Coder to no-coder is not at all cheap

I’ve always thought that the most valuable quality of the programmer community is the ability to learn. After all, in the field of code development, you need to learn and master the new stack of technology to continue to thrive. Today, when zero code is an option, wise programmers should not blindly reject it, but play with it. If you are really interested in code development and are interested in becoming a high-level programmer, mingdao Cloud is also a good choice, because the zero code system is really written in code (Java at the core).