No-code development

  • Glossary

"No-code development"

This glossary explains various keywords that will help you understand the mindset necessary for data utilization and successful DX.
This time, let's consider "no-code development," which is expected to become an important element in the future use of IT in the business world.

What is No-code development?

No-code development, or a no-code development environment, is a technology that enables advanced IT applications such as software development, which previously required writing source code and programming, to be achieved by simply operating on a GUI without writing source code.
While the importance of IT in business has increased significantly in recent years, it is also attracting attention as a way to resolve the shortage of IT engineers and as a way for businesses to realize in-house IT utilization.

[Kumo Radio] What's the difference between "no-code," "low-code," and "non-programming"? (3 minutes 49 seconds)

Vtubers Kumoko and Haruka deliver the latest IT information in an easy-to-understand manner. In this video, they explain the differences between "no-code," "low-code," and "non-programming."

Why no-code development is gaining attention: IT utilization is not going well

"No-code development" is a field that is currently attracting a lot of attention, but behind this is a "serious issue" that is currently posing a problem in the world regarding "utilizing IT in business."

There was a time when the term DX first started to become widely heard, and now people's lives are inseparable from smartphones and the internet. In business, the importance of data and the use of IT is now understood more than ever before. As a result, there are more people than ever before who want to "do something using IT." Despite this, there are not many efforts to "use IT" effectively.

It is desirable to resolve this unfavorable situation. "No-code development" is gaining attention as one of the initiatives that can improve this situation and make IT utilization smoother.

Problems with the current use of IT

So why does (traditional) IT utilization often fail to work?

Problems with securing human resources: "We need engineers first" makes it difficult to move forward with initiatives

In the conventional way, when you think about "making full use of IT," you often think, "You first need to secure engineers." Unless you create an environment where engineers with specialized skills can write source code using programming languages and develop IT systems, you cannot move forward with your initiative.

If you want to fully utilize IT in your company, you will likely have to develop systems such as your own original business system, your own smartphone app, or a data infrastructure that can realize advanced data utilization. Even if you want to try something new with IT and have various ideas and requests, you can't move forward with concrete discussions unless you first secure an engineer and have them do the programming for your company.

However, it remains difficult to recruit engineers with sufficient skills, and it cannot be said that there is a sufficient supply of human resources to meet the needs of each company.

The difficult problem of communicating what you want to make to engineers and getting them to make it

Furthermore, even if engineers can be secured, it often takes a long time to get started, making it difficult to progress with the development of IT systems.

In order to achieve what we want, we need to develop an IT system that meets our requirements, but to do that, we need to clearly communicate our requirements to engineers who are not specialists in the business, about what we want them to create and how.

For example, let's say you want to add a new product to an order system. You create documentation to explain to the engineers what the new product is and how the order flow will differ from the previous system, and then a week later, when they see the actual system developed, they realize that it's not what you expected and that it's completely unusable for business purposes. This is what often happens.

This is not to say that engineers have bad intentions or lack of ability, but it is just that it is not easy for engineers to understand what the needs are in a given situation and what they are being asked to create when it comes to something they are not familiar with.

Furthermore, it often took a week for the revised system to be created after an explanation of how the system needed to be fixed, but then further revision requests were needed... This kind of situation often continued, resulting in development not progressing for a long time. Not only does it take time and effort (cost), but it is not uncommon in reality to end up in a difficult situation where the IT system cannot be developed as expected.

In other words, if you "communicate your requests to an engineer and have them develop it," it's likely that what you want to create won't be communicated properly, development will take a long time, and "the desired IT system won't be developed easily," which can lead to "failure in IT system development" or "a slowdown in business."

Given this current situation, the type of personnel desired for successful IT utilization is "people who not only have engineering skills but also understand the business side." However, in a situation where it is difficult to secure personnel simply because they are engineers, such a request is tantamount to asking for super engineers, making it even more difficult to secure personnel.

Asking for development from outside: It takes time and money, and it's difficult to get them to make what you need.

If you cannot secure engineers in-house, you may consider outsourcing the development to an external company. However, even a simple system development can easily cost several million yen (if you outsource to a company that can develop a system that can be used for business purposes), and a full-scale system development can easily cost tens of millions of yen.

You might wonder why it costs so much, but software development takes a considerable amount of time (as mentioned above, it takes time for engineers to understand the requirements before starting the actual development work), and when you consider the number of people involved in system development and the cost of hiring an engineer for a month, it's unavoidable. That's true, but it's also true that it's not a cheap price from the perspective of the person requesting the work.

In addition, it remains difficult to properly explain and get outside engineers to understand what we are requesting, for example by documenting it in detail (explaining is even more difficult when the person in question is not even an internal engineer). In reality, it is difficult to succeed in IT system development with an attitude of "leaving it all to the outsiders" (so-called "throwing it all over the place"), thinking that we are the customers, that we have outsourced the technical aspects to outside professionals, and that it is natural that they will create something that satisfies us without us having to spend time explaining every detail.

As a result, even though companies pay a considerable amount of money, trust the professionals, and think they have "left it to them," the reality is that the IT system developed does not meet their requirements, and development continues endlessly, resulting in significant time and cost overruns (the so-called "development firestorm").

  • Even if you wanted to tackle something in IT, it was (previously) impossible to achieve without engineers.
  • It's not easy to hire engineers, and it's also difficult to communicate to them what you want them to build and get them to understand.
  • Companies tend to want people who understand their business and have high IT skills, but it is often very difficult to recruit engineers with the right skills.
  • Outsourcing development costs a lot of money, and it's difficult to develop the IT system you want (which is why people are now saying that in-house development is necessary).

The impact no-code development can have on your business

"No-code development" has recently been gaining attention as an initiative that could break through this situation. While traditional IT system development required the development of source code using a programming language, no-code development allows for development without source code (no-code).

Greatly reduces the problem of securing human resources (it is no longer necessary to secure programmers)

In a no-code development environment, you can develop the IT systems your company needs by configuring them through GUI operations (such as icon placement) and setting required parameters through the GUI.

If it becomes possible to develop systems in a more intuitive way, without having to learn programming languages that are difficult to master, we can change the situation from "There's something I want to do, but I can't get started because I don't have an IT engineer" to "We don't have an IT engineer, but we can get started using IT ourselves using a no-code development environment."

The work site can develop it itself (the person who knows what needs to be developed can develop it)

As explained above, the difficulty of communicating what you want to be created to engineers who are not familiar with the business and getting them to develop it is a reason why IT system development is prone to failure and is also a reason why IT system development takes time and costs money.

No-code development is expected to significantly lower the barriers to IT system development. This means that the people who know what needs to be created, in other words, the people who understand the business best, can take on the responsibility of in-house system development.

Not only does this eliminate the difficulty of explaining and communicating what you want programmers to create, it also opens up the possibility of creating IT systems that are deeply ingrained in what is truly necessary for business operations, at low cost and in a short period of time.

You can continue to improve your IT system to suit your business needs.

There's even more benefit after the IT system is complete: it allows for on-site leadership to continuously add and modify functions after development, which has a positive impact on business.

Let's say you're using an IT system for work and you think, "Maybe this part could be improved." Traditionally, you'd have to put your requests in writing and request them from an outside source, which takes time and money each time. However, if the business site is developing the system in-house, as soon as you come up with an improvement, you can even improve the IT system to reflect that request. In other words, if business sites master low-code tools, they can become a way to achieve "IT that can be changed quickly and flexibly" in a way that is incomparable to the past.

Rapid new business development

Nowadays, business and IT are becoming inseparable. For example, if management wants to start a new business or try a new approach in an existing business, it is likely that a new IT system will need to be developed or an existing IT system will need to be modified accordingly. In the past, even when trying to quickly expand business, it was common for time-consuming actions to be taken while waiting for a response from the IT side.

As we've already written, if you make good use of a no-code development environment, it may be possible to develop and improve IT systems one after another in line with business needs. In other words, no-code development can be a way to increase the speed of business development. We live in an age where the speed of change is faster than ever, and no-code development can be expected to be a way to create "organizations that are resilient to change" and "organizations that can quickly develop their business."

Furthermore, it can not only be a means of quickly realizing new initiatives, but also a way to realize what is known as a "small start" for a business. It makes it easier to quickly start small with a business idea and quickly reflect the lessons learned in future initiatives. In-house development using a no-code development environment can also be a useful means of realizing such advanced initiatives.

  • Options other than engineers using programming languages to develop IT
  • Not only could it be a solution to the difficulty of recruiting engineers, but it would also enable business people to tackle IT development themselves.
  • If business sites can utilize IT themselves, it will be easier to create IT that is tailored to what is necessary for the business and to create a system that allows for rapid development and change (very important in an age where the speed of change is accelerating).

Alternatively, no-code development is more than just "making things easier"; it also "brings new value to business" and can be used as a means to realize business-led IT utilization and IT utilization that emphasizes speed and change.

But is no-code okay? (Disadvantages to be aware of when using no-code)

So far, we have introduced the advantages of no-code development. However, it is also true that no-code development is not all good, and when people hear the term no-code, not all images that come to mind are positive.

Let's consider what the disadvantages are and what we should pay attention to and keep in mind in order to make the most of no-code development.

Isn't it just a simple thing?

You may have the impression that no-code products are easy to use, but can only do simple things. In fact, there are many no-code products that can only do simple things.

However, as I have already mentioned, being able to develop even simple things yourself can be more meaningful than you might expect. You should consider what you will actually be able to do and to what extent, and then consider whether this is more desirable for your company than traditional development.

It seems like there's too much fuss going on

For example, you might hear overly favorable PR claims like, "Even if you don't know any programming, you can create IT systems and become a successful freelancer!", which might make you think it's suspicious.

Or perhaps this impression has been left unchecked and promoted, with people with low skills praising dubious explanations that make it seem like anyone can do it easily, giving the impression that only people who can't do it use it. Unfortunately, I think this is also the case.

However, not all no-code products are like this. I think this is a big difference between products. With no-code, it's important to carefully select the right product.

Not suitable for full-scale use (something doesn't work and you get stuck)

This is something to really pay attention to.

Let's say you're excited about how easy it is to create something and start working on various aspects of the IT you'll be using in your business. However, once you actually create and operate it, various requests will arise, and you may later find that it's difficult to use in practice unless it can accommodate exceptions to the business (e.g., the year-end and New Year holidays need to be handled with different rules). As a result, you may need to "make various adjustments."

When you find yourself in such a situation, you may find yourself stuck because you realize that the functionality of the no-code tool is limited and you can't create what you want. This can be a real problem after you've introduced it and used it extensively in your work.

This is unlikely to happen if the tool is carefully and conscientiously created by people who understand the actual needs of the job.

Alternatively, you may need to check whether the product has a "high level of manufacturing capability" that will enable it to generally overcome any unexpected situations that may arise.

Not suitable for full-scale use (does not scale, is unstable, has security issues)

This is also something you should be very careful about. You may run into problems once you start using it in earnest.

Even if the system works fine at first, as it is used for business purposes, the amount of data to be processed increases, and processing slows down to the point where it becomes unusable. It would be the worst if the system stopped working during peak business hours at the end of the year, and if a problem is discovered after usage has progressed, it can be difficult to stop using it.

Furthermore, bugs remain, causing the system to crash and data to become corrupted, making it unsafe to use. When the system crashes due to a hardware failure (which inevitably happens from time to time), the system may not be able to be restored, which can be problematic. There are also vulnerabilities that can lead to security incidents, such as data theft.

No-code products and services range from those that look impressive at first glance with a modern design but are little more than hobbyist programming, to those that are carefully designed with a thorough understanding of the strict requirements for IT that runs business operations.

"Easy to make" can also mean "no path to growth"

It's easy to create, takes into account the business needs, and operates reliably. It's a well-made no-code product. However, this can sometimes prevent personnel from developing their skills.

When developing using a regular programming language, engineers can hone their skills and take on the challenge of developing advanced systems. There are also no-code products that allow engineers to flex their muscles and master the technology, but in general, there tends to be little room for this.

It's important to consider not just whether the no-code product functions properly, but also whether it has the potential to develop the skills of the people who use it and thereby realize greater value.

No-code for everything?

The term "no-code" itself means nothing more than not writing source code, and there is no official definition of the term or certification body. Currently, no-code is a hot topic in society. As a result, it is inevitable that products will emerge that are simply calling themselves no-code but are insincere.

Is it just that you don't have to write source code, so does that mean everything is no-code? For example, almost all smartphone apps and cloud services can be used without writing source code, but when they are called no-code, it becomes a bit confusing.

For this reason, terms like "no-code development" or "no-code development environment" are sometimes used to narrow down the scope to programming. However, what exactly programming is is still unclear, and when thinking about IT in a practical sense, other perspectives, such as whether it can do more advanced things than simply using applications, can be more important.

I don't know the difference between "no-code" and "low-code"

There is also some uncertainty about the definition of the term low-code in the general public.

See also
Glossary: Low-code development

I think that no-code focuses on "not having to write code," while low-code focuses on "it's efficient because you only need to write a little code." If you decide which one you should use from that perspective, I think you can make the appropriate classification and decision in most cases.

However, the distinction is not always clear, as some products are called no-code but if you want to develop something more detailed you will need to write source code to do most of the work, or some products are designed for full-scale use and do not require you to write source code, so they call themselves low-code to avoid giving the impression of being too simple.

Examples of no-code product types

If no-code is defined as "things that seem impossible to do without programming can be done with just GUI operations," then it could be categorized as follows, for example. Although this may not be a very good division.

  • Front-end development such as applications
    -User interfaces (points of contact with humans) can be developed using GUI, such as smartphone apps, company websites, and e-commerce sites.
  • Development of database-like things
    -On the cloud or as a packaged product, users can define a "database" and create applications that utilize the data.
  • Automating some operations, tasks, or data processing
    -Anything that automates some kind of processing
  • GUI programming environment
    - Something that allows children to learn programming by "experiencing programming with just a GUI"
  • A system that can integrate systems and data (iPaaS)
    -It allows you to create processes that link various systems and data, rather than individual applications and data, using only a GUI.

There are probably some types where you can create the appearance (user interface) and then configure it to get what you need, and there are also some (such as kintone) where you can define the data and then use a web database to create an app that utilizes that data.Also, when working on something like IT system development with no-code, there are two approaches (creating from the screen, or creating from data or models), so it's a good idea to consider which approach to use and what to create in your company.

There are also types of automation that can automate business processes, automate data processing, or perform some advanced processing (such as utilizing machine learning) using only a GUI. Some of these may be questionable as being no-code, but on the other hand, it may be better to categorize these types further.

Additionally, apps that place more emphasis on the "programming experience itself" and allow for easy programming using a GUI, such as Scratch, which is used to teach children programming, are also a type of no-code app. The process of writing code and programming itself is GUI-based, but no-code apps sometimes have features that allow you to create logic using this type of UI.

Additionally, while it may seem a little removed from the impression of "writing code" when it comes to "creating an app" or "getting programming experience," there is an area of great practical importance known as "iPaaS." This is a means of efficiently realizing functions that connect various clouds, systems, and data, which are actually important for practical IT utilization, without coding.

See also
Glossary: iPaaS

iPaaS: A "connecting" technology that is an important element in utilizing no-code

For example, let's say you've developed a no-code web database system (such as with kintone) and are successfully moving your company's IT in-house. You've also successfully created your company's own no-code smartphone app and your own no-code e-commerce site.

The next problem is how to "connect." For example, if you want to fully utilize kintone, you will need to link it with other cloud services (such as data on Salesforce) or with data stored in Excel files within your company. In many cases, these connections are handled manually by people, and this is often taken for granted.

The same thing is likely to happen with smartphone apps and e-commerce sites that you've created yourself. Furthermore, if you could automatically data integration between things you've created yourself, such as kintone and your e-commerce site, you can imagine the great possibilities that lie ahead.

Solving these "connecting" needs through development using regular programming languages is often time-consuming and inefficient, and it would be a bit disappointing to have to program only that part when you're developing it in-house using no-code.

This is where no-code methods come in handy: connecting various clouds, systems, and data. For example, technologies known as "EAI," "ETL," and "iPaaS," such as "DataSpider" and "HULFT Square," can be used.

Can be used with just a GUI (no coding required)

Unlike regular programming, there is no need to write code. By placing and configuring icons on the GUI, you can achieve integrated processing with a wide variety of systems and data.

Being able to develop using a GUI is also an advantage

No-code development using only a GUI may seem like a simple compromise compared to full-scale programming. However, if development can be done using only a GUI, it becomes possible for on-site personnel to take the initiative in their work. The same goes for deciding what should be linked to what.

The people who know the business best are the people on the front lines. They can rapidly build up their own on-site knowledge, such as which data is useful where, and what to be careful of when creating cross-departmental collaborative processes. This is superior to a situation where development requires them to explain things to engineers and ask for help every time something comes up.

Full-scale processing can be implemented

There are many products that claim to allow development using only a GUI, but some people may have a negative impression of such products as being too simple.

It is true that things like "it's easy to make, but it can only do simple things," "when I tried to execute a full-scale process it couldn't process and crashed," or "it didn't have the high reliability or stable operating capacity to support business operations, which caused problems" tend to occur.

"DataSpider" and "HULFT Square" are easy to use, but also allow you to create processes at the same level as full-scale programming. They have the same high processing power as full-scale programming, as they are internally converted to Java and executed, and have a long history of supporting corporate IT. They combine the benefits of "GUI only" with the proven track record and full-scale capabilities for professional use.

What is necessary for a "data infrastructure" to successfully utilize data?

Of course, the ability to connect to a wide variety of data sources is necessary, and high processing power to process large amounts of data is also required to firmly support actual business operations. At the same time, flexible and rapid trial and error led by the field is also essential.

Generally speaking, if you want high performance and advanced processing, the tool will tend to be difficult to program and use, while if you want ease of use in the field, the tool will tend to be easy to use but have low processing power and can only perform simple processing.

In addition, it is also desirable that the candidate has advanced access capabilities to a wide variety of data sources, especially legacy IT systems such as mainframes and non-modern data sources such as on-site Excel, as well as the ability to access the latest IT such as the cloud.

There are many methods that meet just one of these conditions, but to successfully utilize data, all of them must be met. However, there are not many methods for achieving data integration that are both usable in the field and have the high performance and reliability of a professional tool.

No need to operate in-house as it is iPaaS

DataSpider can be operated securely on a system under your own management. With HULFT Square, a cloud service (iPaaS), this "connecting" technology itself can be used as a cloud service without the need for in-house operation, eliminating the hassle of in-house implementation and system operation.

Related keywords (for further understanding)

  • EAI
    • It is a concept of "connecting" systems by data integration, and is a means of freely connecting various data and systems. It is a concept that has been used since long before the cloud era as a way to effectively utilize IT.
  • ETL
    • In the recent trend of actively working on data utilization, the majority of the work is not the data analysis itself, but rather the collection and preprocessing of data scattered in various places, from on-premise to cloud.
  • iPaaS
    • A cloud service that "connects" various clouds with external systems and data simply by operating on a GUI is called iPaaS.
  • Low-code development
    • It can be difficult to distinguish low-code development from no-code development. Low-code development is based on the premise of writing code, and as a result, the expected user base and product characteristics can be different.

If you are interested in our "Connecting" initiative,

If you are interested, please try out our products that solve IT system and business problems by using the concept of "connecting."

The ultimate tool for connecting data: DataSpider, data integration software

"DataSpider," data integration tool developed and sold by our company, is a "connecting" tool with a long history of success.

Unlike regular programming, development can be done using only the GUI (no code), without writing code. This means that it can be used by business personnel who have a good understanding of the business and can grasp the specific issues surrounding their company's silo structure.

There are many tools available that allow simple integration, but this tool is easy to use, even for non-programmers, as it only has a GUI, and it also has "high development productivity" and "full-scale performance that can serve as the foundation for business (professional use)." It can smoothly solve the problem of "connecting disparate systems and data," which is hindering the successful use of IT.

We offer a free trial version and hold online seminars where you can try out the software for free, so we hope you will give it a try.

Glossary Column List

Alphanumeric characters and symbols

A row

Ka row

Sa row

Ta row

Na row

Ha row

Ma row

Ya row

Ra row

Wa row

»Data Utilization Column List

Recommended Content

Related Content

Return to column list