Will I hit a brick wall when using a low-code development environment?
As explained in an earlier blog post, low-code platforms are for developers who want to build applications more efficiently. We suggested that “efficient code” would be a better name than low-code, because low-code doesn’t eliminate code. It just makes delivering applications more efficient.
True: in no-code and low-code platforms, faster speed of development does come at the expense of application complexity. Anyone who says that “anything is possible” in their low-code solution is probably a business developer who needs to meet their quarterly sales target. 💸
But: because low-code tools let you use full-code almost anywhere, the trade-off between speed of delivery and application complexity is much less pronounced in low-code than in no-code. Low-code tools give you a great deal of flexibility in your development.
Here’s a simple example: let’s say an application requires a complex SQL query to satisfy a client’s requirements. No-code, visual SQL query builders are very powerful, enabling even people without knowledge of SQL to join tables, define aliases or use aggregate functions. But even the best visual query builder is no match for the full flexibility of raw SQL. In a good low-code platform, you can seamlessly switch from “no-code” to “full code”, from query builder to SQL editor. As a developer, it’s up to you to choose the best development approach to solve the problem at hand.
Low-code tools are a little bit like playing with Legos, just that you also have your own 3D printer at home. Whenever you hit the no-code brick wall inside a low-code environment, you can custom design a new Lego piece through full code. Low-code platforms typically support common languages, such as JavaScript, TypeScript, or SQL. Some platforms, like Five, are even designed to support WebAssembly, a compilation target for 40 popular programming languages (PHP, C++, C, etc.), which enables high-performance web apps. They can also be extended through plug-ins or libraries and are thus extremely developer-friendly.
So, where’s the limit? This really depends on what you want to build. Some low-code platforms excel in building business applications or internal tools (usually, they limit your ability to customize the user interface). Others excel in building consumer-facing applications where UI and UX typically play a much more important role. But they are typically weaker in writing custom business logic. Provided you choose the right tool for your use case, you won’t encounter many limitations in low-code tools. In fact, they will make precisely those development steps that are most critical to you faster and easier to accomplish.
This also explains why Gartner predicts that three quarters of large enterprises will be using at least four low-code development tools by 2024. Each tool is tailored to satisfy a particular use case. There might be one tool for automating repetitive tasks through robotic process automation (RPA). And another to build and deploy full-stack internal tools. And yet another to build and deploy native mobile apps.
Low-code is no different from traditional development. The question is not so much what the limitations of a particular tool or technology are. Rather, you should ask: is the platform the right tool for my project? Our advice: experiment with tools before committing to them!
If you’d like to learn more about low-code software engineering, check out our blog on https://five.co
The topics that we cover are: