March 16, 2017

No-code vs. Low-code – Is there a difference?

Low-code platforms was a buzz word among big companies last year. In fact, in 2016, big players like Google, Microsoft, Oracle, SalesForce staked their claim in this market segment through acquisitions and organic product launches.  However, what are these low-code platforms?

Low-code platforms are app development platforms that allow you to build your apps faster with minimum coding.  These low-code platforms have been in existence for some time now.  They initially sprang up as just-auto code generation tools but have evolved since then into enterprise-grade app development platforms covering the entire app delivery.  Modern low-code platforms speed up the entire app delivery process from requirements to go-live.  Some critical areas in app delivery cycle that get optimized in low-code platforms include the following:

  • Coding is replaced by visual app building, where the developer builds the end-user experience right from the start, using simple drag and drop of UI components
  • All services like database, SOAP and ReST APIs, CRM, security, and other external services are integrated into the application visually using simple, intuitive visual interfaces
  • All the artifacts of the project - front-end and back-end code, configuration files, the executables, etc. are automatically generated based on standard best practices.  This also completely removes human errors during coding.
  • The continuous deployment and integration process is simplified.  The app is moved through various release phases like development, QA, staging, and production through 1-click deployments.
  • Future maintenance and scalability of the deployed app are also automatic through horizontal scalability, where modern lightweight containers with the required app are provisioned in a matter of seconds.

No-code platforms – Is it a new phenomenon?

Of late a new breed of platforms, akin to low-code platforms, have sprung up.  They are called the No-code platforms.  What are they? Are they any different from low-code platforms? Are they one and the same?  

Let’s understand, that during the development phase, low-code platforms score over traditional development approaches because they involve a more intuitive visual development approach.  The visual development approach allows the app builder to drag and drop predefined out-of-the-box components into the work area.  However, many a time, during app development, there are features that require customization.  For instance, when building a particular page of an app, your visual designer would have given an innovative clock widget, in his screen mocks based on the company's standardized widget set, and that is not a part of the default UI widget library of the platform.  In this scenario, low-code platforms like WaveMaker, allow you to extend the platform capabilities by letting you build such a widget and make it available as a drag-n-drop component for future projects.  

However, what if the company employed a team of developers who built a UI widget library based on the company’s approved design template and is made available out-of-the-box in the platform itself.  Then app-building becomes a no-code experience.  

Hence no-code-platforms are more like an evolution of low-code-platforms to particular scenarios, where the coding extensions are taken care of by providing out-of-the-box visual components.  The interesting part is that no-code platforms do not actually guarantee a no-code experience.

So, when does low-code become no-code?

There could be many scenarios in which a low-code platform can start acting like a no-code development platform.  Some of the broad categories include:

  • Industry/Vertical specialization of apps Low-code platform vendors and their partners create industry-specific out-of-the-box components for the platform that makes any industry-specific app closer to a no-code development format.
  • Standardized styling and templatization of UI and integrationsWe have often seen in enterprises that have approved styling (like colors and fonts), third-party software systems and software stacks to be used.  In this case, rapid application development through a low-code platform is achieved through the pre-creation of all these standardized components inside the platform.  This results in an app-building experience closer to a no-code experience. 2-pass development, devised by WaveMaker, is a standard development approach used for low-code development in enterprises.  Here there is a technical-pass team, which is responsible for creating the drag-n-drop components as per the standards set by the IT teams in a company.  Once the out of the box components is ready, the business-pass team will start creating the apps by simple drag-n-drop of these elements.
  • Commonly occurring generalized apps- This category of apps is omnipresent.  They could be a data-driven app to list down a row of data from DB tables or a dashboard app that would present a data visualization interface for the underlying data or a purely API-specific app that works with an entire ecosystem of cloud services like AWS or Google-Cloud.  Most of the time these apps do not require any customizations and the whole app could be done with features available out of the box on the platform.

To Summarize, no-code platforms are no different from low-code platforms.  They are just a specialized version of the low-code platforms, where the customization has been taken care of by pre-building all the required visual components.  The next time a vendor claims to be a no-code development platform, feel free to refer to this article on where they fit in.