If you are even remotely involved with identifying/using IT solutions in an Enterprise, the chances that you have come across No-Code tools (maybe even evaluated/worked with them) are pretty high. While the jury is still out on their usefulness, I wanted to share my thinking on this given that at Unvired we also develop and market some of these tools.
Note: For the rest of this blog, No-Code also includes Low-Code tools.
So, what exactly are No-Code (or Low-Code) tools?
A working definition would be: No-Code tools allow people with little or no programming knowledge to build micro-apps (typically low complexity) and maintain them. The target users here include non-programming IT staff, business analysts, etc. The need that is met is to build simple UI-based apps with a drag and drop tool and optionally connect them to some backends for saving the collected data and further processing.
Who is it really for?
No-Code tools are typically targeted at non-programmers. This is because coding in any programming language has a very steep learning curve and can be overwhelming. No-Code tools reduce this learning curve and allow the target users to get started with a much lower barrier. The analytical and problem-solving skills that are required to model and define the solution though remain more or less the same.
What do they solve?
No-Code tools typically solve UI/Content development such as websites and simple applications and/or workflows that are to be executed when certain data is submitted or events occur. Let’s look at both in more detail.
User Interface – UI development could be for simple websites that you put together for your company or maybe writing blogs. There are umpteen tools for these and some of them are extremely good like WordPress, Ghost, etc. UI development also includes building simple apps (micro-apps) that deliver a single functionality like a leave request creation, an equipment inspection, or approval. These could also be fast-changing UI in that the required data may need to be changed often based on business needs. These micro apps also include Digital Forms (converting paper-based forms to electronic).
Workflows – Data once collected needs to be sent to a store for further processing or analysis. This could involve saving data in a database at a simplistic level or posting it to a system like Salesforce for further processing.
TurboApps provides No-Code tools for both UI development and for Workflow processing of the collected data.
TurboApps Builder – This is a No-Code, Drag, and Drop designer that allows non-technical users to design and build forms for data collection. Forms can be as simple as a few fields to allow a leave request creation or a complex inspection form with the ability to query for historical data for comparison etc. The designer enables all users to design these forms with little training. The drag and drop designer renders forms that render on desktop and mobile (responsive) without any special steps. Simple validations can be set up by clicking or configuring options and do not require any code. These validations include the format of data entered (phone numbers for e.g.), length of fields, mandatory or optional, dependent fields (accept data if some other field is filled or has a specific value), show or hide fields, etc. Once designed, these forms can then be published so that other users can use them. Ongoing changes are easy to make as the changes are not pushed to users until published. Multiple versions are saved so rolling back to an earlier version is quite easy and straightforward.
TurboApps Workflows – TurboApps also provides a visual workflow designer that allows business users to also define what is to be done with the collected data. Workflow steps include publishing to a database, posting it to a backend system such as Salesforce or SharePoint, etc. A workflow designer is a drag-and-drop tool similar to flowcharting tools. Once workflow nodes are added, the nodes can be configured to perform the required operation by either using the data as is or by extracting or transforming them. No-code data transformation tools are also included to work on JSON data etc.
I am sure discerning readers have already figured out that UI designing is a low barrier / low skill entry whereas workflow designing does require some knowledge and skill. While technical programming skills may not be required, for useful workflows to be built some understanding of APIs for integration, etc. is required. For e.g. if data needs to be posted to Salesforce workflow designers need to be able to look at the API documentation, determine the endpoints and the data to be passed in, and then design them accordingly from the form data. In addition, the steps to be executed, and conditions to be checked need to be modeled. The modeled workflow can then be tested with some test data and then pushed into usage, while this may seem overwhelming, it’s definitely a much lower learning curve as compared to writing code from scratch and hooking it up to the form for execution.
Is it really worth your time? No-Code UI builders definitely work and are very useful and are low-hanging fruit. They help build forms/screens quickly, deploy them, and roll them into production. Ongoing changes are also fairly easy to make and maintain. No-Code workflow builders are comparatively harder to learn and maintain. But once the user gets the hang of it (to a large extent depending on how intuitive the tool is and how good the documentation/tutorials are) a lot of productive workflows can be achieved.
Show the end result to the end-users and they are most likely going to be happy. Feedback cycles are also shorter as changes due to feedback can be built and rolled out very quickly. Workflows are typically invisible to an end-user as they mainly interact with the form/UI. Show the same to a developer and they would probably look at the number of nodes required to achieve and dismiss it as too complex! A developer would also typically describe in detail what all cannot be achieved with the tool rather than what can be achieved easily. So take the feedback with a pinch of salt.
Conclusion: No-Code tools are here to stay and will only get better. Will they replace developers? Definitely not as there are business problems that cannot be solved by such tools. Deploy them with the right expectations for development and outcomes and you are sure to succeed.