What is the Low-Code, No-Code Movement?
As a programmer/developer or an engineer it’s not long now before you will see advertising and articles about no-code or low code development technologies or micro-services available in the market. A quick web search for “low-code development tools” and you will discover hundreds of different micro-tools that can help you build a whole store web app or any other e-commerce platform by connecting and integrating dozens of different micro-tools. But which is the best low code platform?
In this article, you can find mature and stable technologies offering a low-code development platform yet still allowing you, the developer, 100% control of every aspect of the finished app and access to the full source code which you can customize – if you wish – in any way you want
Are all low-code development platforms the same?
Very definitely not. If you have been programming in a complex way and enjoying and suddenly someone says “hey, I can create a complete e-commerce store web app without writing any lines of code” then it feels a little like they are not a ‘genuine’ software developer. Developers write code, don’t they? Lots and lots of code. But when you think of it from the general point of view, they are developers, precisely non-coding developers. They solve problems and automate the job with pre-built micro-services.
Does this mean that this automated no-code solution will make developers who actually write code obsolete? Well, no. Lots of the no-code solutions out there offer what is in effect the customization of a set of standard features in a ready-made app. The apps stay within an online walled garden and, typically, the developer has no access to the source code and must pay a monthly fee to keep the app active and working. As soon as you stop paying your fee the app ceases to work. With those kind of solutions the developer never has access to any code at all or if they do it’s generally only a ‘slug’ or area in which to type in custom code. The paradigm is for you NOT to have the full source code, ever. In fact these kind of online behemoths are actually so heavily dependent on the cloud-based microservices they use to enable the app’s functionality that they couldn’t provide the developer with source code even if it was decided that this was a good idea. It’s not only part of their business model, it’s actually not even feasible.
There are better solutions which give the control of the apps back to you and yet still offer a low-code/no-code way of creating software applications. The best solution is one which leverages online services and low-code solutions while retaining full control at the developer level.
Why do low-code tools matter?
If you want your product to be in the market as soon as possible, trying ready-baked cloud services could be a great choice rather than building everything from scratch. For instance, APILayer provides dozens of different neatly packaged services that you can easily integrate into your platform to handle
Or you can look at components like CData with FireDAC. CData is a low-code data integration component set. You can quickly build applications that read and write live data from popular on-premises and cloud data sources with RAD Studio.
Take a look too at services like Zapier. With Zapier you could create a solution if there is a new email to a specific mailbox or person then Zapier sends it to DropBox as an attachment and creates a further action that fires up a message on Slack about the new email/attachment. This process normally requires lots of code, but with Zapier your problems can be solved quickly and efficiently with this kind of automation/low-code development tools. It’s a quick way to get into the market, and there is nothing wrong with using these sorts of devices.
We can not just throw out the traditional coding practices; we need to understand where to apply those tools and make our lives easier, like what areas we can leverage these services to sheep our products faster.
When should you NOT user low-code developer tools?
There are several cases where you should not follow no-code development tools. For instance, if the platform requires very custom integration or the ability to create enterprise-grade business features or high scalability options. In this case, we have another development platform called RAD Studio, where you can leverage both low-code and traditional development practices with a modern and really productive development environment.
Is there a universal platform for building apps with low code?
With RAD Studio 11, you can build apps 5x faster with one codebase for Windows, iOS, Android, macOS and Linux. RAD Studio 11.1 release adds all the latest features to support the latest operating system functionalities and gives an excellent development environment.
Moreover, RAD Studio offers tools to create applications so fast that your competitors can not keep up with you regarding low-code development. For instance, with the Low-Code Wizard, you can create a fully-functional Delphi cross-platform application with multiple screens with several clicks, and it generates all the code for you so that you can change anything as you want.
Applications are configurable through the wizard, and creators can choose any set of the following:
- User accounts: sign up, sign in, and a profile screen with hooks for authentication.
- Settings screen, where the theme can be changed between light and dark, plus some example settings that can be reused or extended
- Contacts screen
- A database layer: storing data in the app using Interbase
- An example new screen to use as a template or example for adding new functionality
In short, the Low Code App Wizard generates the framework of an already working, practical application that can be extended using Delphi’s RAD (or low code) visual application design.
You can automatically integrate and link data with LiveBindings
LiveBindings is a data-binding feature supported by VCL and FireMonkey frameworks in RAD Studio. LiveBindings is an expression-based framework, which means it uses bindings expressions to bind an object to other objects or dataset fields.
LiveBindings is based on relational expressions, called binding expressions, which can be unidirectional or bidirectional. LiveBindings is also about controlling objects and source objects. Employing binding expressions, any entity can be bound to any other thing simply by defining a critical expression involving one or more properties of the objects you want to tie together.
For instance, check out this brief demo where you can learn how to integrate StackOverflow API and show the data in the UI controls with simple linking steps.
Moreover, FireDAC or CData provide dozens of non-visual components that help you to integrate various data sources with simple configurations.
FireDAC is a Universal Data Access library for developing applications for multiple devices connected to enterprise databases. FireDAC enables native high-speed direct access from Delphi and C++ Builder to PostgreSQL, SQL Server, SQLite, MySQL, Oracle, Firebird, Access, and dozens of database engines with its robust universal architecture.
CData Enterprise Connectors – has more than 180 data integration components where you can integrate and analyze data with 180+ data-based services. This can be an extension of the RAD Studio ecosystem.
- Direct Real-Time Access – Direct real-time access to live data. No dependency on any cloud services or other intermediaries.
- Royalty-Free Distribution
- Replication and Caching
- Client-Side Processing
- Developer Friendly
- Customizable and SQL-92 Compliant data access