What Is Low Code?
Low code tools and platforms, just like no code, offer visual drag and drop builders along with pre-built components and features aiming to build applications fast. Compared with no code, low code tools provide developers access to the code they generate to enable them to customize it based on their requirements. This offers a greater degree of customization possibility, simultaneously eliminating the need to write everything from scratch. In low code, the idea is to cut down the need to write code as much as possible to speed up the development process. No code is primarily aimed at citizen developers who cannot write code, and the low code market is primarily aimed towards those who can. Multiple examples of low code tools coming up in a short while.
The code generated by the low code tools/platforms can either be open-source or proprietary. Also, just like no code tools, they have their use case and trade-offs. A low code platform can be seen as a portal offering a suite of low code tools catering to a specific use case.
Examples Of Low Code Tools And Platforms
Speaking of low code, the first most rudimentary tool that comes to mind that we are all aware of and has been around for decades is Dreamweaver 🙂
I’ll begin with the low code tools widely used in the industry and will then state a few catered towards application development in general.
Low Code Platforms Widely Used In The Industry
I started my development career a decade back, working on this tool. Siebel is a low code CRM (Customer relationship management) solution that offers pre-built CRM functionality for different market verticals: automotive, industrial manufacturing, life sciences, media, travel, retail, public sector, financial services, and so on.
It is primarily used by companies with a massive customer base like a telecom provider to manage several internal processes, such as sales service, sales analytics, order capture, product catalogue management, customer loyalty management, third-party partner management, customer service, etc.
Siebel offers pre-built low code solutions for all these processes that industry giants can leverage as opposed to building something from scratch that would take years of development, testing and bug fixing time until the system could be used in production. Its low code feature allows the enterprise to customize the software based on their needs. This platform is widely used in the industry and if you google, you’ll find several Siebel developer jobs available.
Salesforce is another widely popular CRM tool used in the industry, with a wide range of product offerings. Apex is a proprietary programming language that the tool offers to add business logic and customize things around.
Pega is a low code platform in the CRM and BPM (Business process management) space that enables businesses manage processes and workflows within the organization. This spikes their efficiency and performance in day-to-day operations.
SAP Hybris is a low code platform, written primarily in Java, in the e-commerce space. It is leveraged by large enterprises to mid-size companies to run their businesses. The platform offers a suite of tools that simplify the end-to-end online buying process, offering solutions for both B2B and B2C. Hybris is largely used in the Java ecosystem.
Low Code Developers
Low code tools like these expect developers to have coding knowledge to be able to modify the business applications based on the demands of the customer. Besides regular coding knowledge, these tools also require specialized hands-on expertise on them to be able to leverage a variety of solutions they offer. If you run a search for developers skilled in the tools above, you’ll come across a large number of industry job openings.
Now, let’s focus on a few low code tools catered towards application development in general.
Low Code Tools and Platforms Catered Towards Web Application Development In General
AWS Amplify is a low code solution with a set of pre-built tools that includes an open-source framework, a visual development environment and a console to enable developers build and host full-stack web and mobile applications on the AWS ecosystem.
With just a few lines of code, we can add features such as multifactor authentication, analytics, API endpoints, conversational bots, real-time notifications, integration with other AWS cloud offerings, and more.
JHipster is an open-source low code web application generator that generates Angular, React, Vue code for the frontend and the Java Spring framework code for the backend. It also enables us to create microservices with support for Netflix OSS, Docker and Kubernetes. On the persistence side, it offers support for databases like Cassandra, MongoDB, Neo4J, Elasticsearch and more.
The platform enables the devs to create a fully configured Spring Boot application with a set of pre-defined screens for user management, monitoring, logging, a responsive frontend, documented REST-API, comprehensive test coverage and more by running just a few shell commands. This averts the need to set up the project, configure databases, authentication, etc., right from the bare bones.
Divjoy is a React codebase generator that offers a drag and drop interface with a component library to create a functional React app within minutes. The low code tool handles all the integrations like with the database, Stripe payments, analytics, newsletters, hosting, and so on.
ShipSaaS and Serverless are two low code tools that generate code for building SaaS (Software as a Service) products. They take the onus of writing the boilerplate code, providing standard features that SaaS have, such as user authentication, social logins, billing and subscriptions, file storage, SEO optimized blogging editor, admin dashboards, integration with databases, and more.
Microsoft PowerApps is another low code solution that offers a suite of apps, services, data connectors, and more to provide a rapid application development environment. The platform is more catered to creating internal business applications, such as creating workflow automation, securing data access, setting up data analytics, the required visualizations and so on.
These were a few examples of low code tools and platforms. You might have figured out by now that different low code tools serve different use cases and requirements. No two tools are alike; every tool has its use case and trade-offs, just like open source technologies.
What To Keep In Mind When Picking A Low Code Tool/Platform?
Low code tools come with a trade-off between having control and customizing stuff vs. rapid development. We need to do our research to determine if a certain tool fits our requirements well. Also, the code generated by a low code tool should be comprehensible and extensible.
For adding new behavior and features to the existing code, our code should be designed in such a way that extending it shouldn’t prove to be a nightmare.
Building apps with high code is much more than just creating the UI, adding business logic, and plumbing the APIs together. Things like loose coupling, separation of concerns, encapsulation, design patterns come into play. These design principles make the code easy to understand, test, extend and maintain. If our low code tool does a poor job designing and securing code, we may have to end up re-writing our app all over again in the long run. Besides, designing an app at both high-level (System design) and low-level (Code/OOP design) is a subjective process where a developer’s experience in the domain comes into play. I believe it’s hard to automate such a thing with low code or no code.
When picking a low code tool/platform, the idea should be to choose a tool/platform that generates open source code that is comprehensible, gives us control over our data, has good industry adoption and does not lock us in. It should be easy to migrate our app and data to a different platform anytime we wish.
Limitations Of Low Code
Low code tools have restricted functionality compared with high code primarily because they are proprietary and managed by a single entity as opposed to open-source tech that has regular community contributions.
When developing apps with complex behavior, writing high code hands-on always provides more control to the devs. Also, when it comes to hosting, some low code platforms limit the number of hits their API can entertain in a unit of time, limiting an application’s ability to scale. This is where custom deployments win.
Low code tools must continually keep up with the rapid evolution in technology. If we have a low code platform as our application’s backbone and the platform chooses not to evolve with time, it does not allow integration with a certain product or closes shop. We are stuck.
Will Low Code Replace Traditional Development?
Replace? No. Assist? Yes. Drag and drop WYSIWYG (What You See Is What You Get) tools can only take us so far, and this is not a new idea. No code, low code tools have been around forever. And developers chose to stick with high code because it gives them the flexibility to implement, build upon and tweak things.
Low code has its use cases primarily for generating the boilerplate code, configuring and integrating different components and tiers of applications, something along the lines of what Spring Boot, Roo and JHipster do. MVPs. Internal apps. Simple use cases in general.
When they say Hey, X% of businesses are already leveraging no code, low code, and this is the future. It will replace all kinds of traditional development. They do not tell what kind of apps those businesses are building. Are they internal apps? Excel sheet based apps? Static websites? Or apps as big as Instagram, Facebook? Speaking of numbers, I believe WordPress powers way more websites than the number of complex apps built with high code. Has WordPress replaced traditional development?
If you are looking forward to understanding no code, here is a deep dive into it.
If you are a developer and find it hard to cope with constant changes in technology. You are sick and tired of it. You are looking for ways to jump off that endless upskilling treadmill staying relevant and hireable.
You might want to check out my ebook, DEVELOPER’S ROADMAP TO EXCELLENCE AND BUILDING YOUR OWN THING, where I share with you the roadmap and techniques that I follow to keep my sanity in this ever-changing world of software development without killing myself. In it, you’ll find actionable advice and critical points that will enable you to make informed career decisions and accelerate your career at MACH speed.
> Spotify Engineering: From Live to Recording
> Ingesting LIVE video streams at a global scale at Twitch
> $64,944 spent on AWS, to support 25,000 customers, in August by ConvertKit.
> Read how Storytel engineering computes customer consumption of books transitioning from batch processing to streaming bookmarks data with Apache Beam and Google Cloud.
> How Pokemon Go scales to millions of requests per second?
> Insight into how Grab built a high-performance ad server.
SUBSCRIBE TO MY NEWSLETTER to be notified of new additions to the list. Fortnight/monthly emails.
Looking for developer, software architect jobs? Try Jooble. Jooble is a job search engine created for a single purpose: To help you find the job of your dreams!!
- Web Application Architecture Explained With Designing a Real-World Service
- Wide-column, Column-oriented and Column Family Databases – A Deep Dive with Bigtable and Cassandra
- Design For Scale and High Availability – What Does 100 Million Users On A Google Service Mean?
- How Razorpay handled significant transaction bursts during events like IPL
- Facebook’s Photo Storage Architecture