Wired for experience®

5 pitfalls to avoid when choosing a low-code platform

Today, enterprises are embarking on a journey venturing into new possibilities of application development to meet business demands. The adoption of low-code application development platforms seems to be very popular with most enterprises these days. However, while some have made the transition to low-code application development, there are enterprises out there who are unsure and hesitate in making this change to adapt to a low-code platform. This is understandable, as there are risks involved when it comes to choosing a low-code platform and a wrong choice can be costly. We have put together five pitfalls that an enterprise can avoid while they choose a low-code app development platform.
  1. Assuming all platforms support integrations to build full-stack applications Most platforms offer visual development capabilities. But, it is extremely important to look for features that ease the external integration of data and services. Look for out-of-the-box integrations and verify whether custom integrations can be built and reused across apps while choosing low-code platforms. In addition, choosing a platform that supports open source technologies allows an open and extensible approach to application delivery. This permits developers to create full-stack applications without worrying about vendor lock-in.
  2. Assuming the feature set is standard across all platforms It is key for enterprises to make a detailed study of the features of a low-code platform to understand which ones would best suit their requirements. Out-of-the-box features provided by one low-code platform differ from the other platform. Few things to look out for are :
    • A modern low-code platform should provide ease of use to the user with features like visual development with simple drag and drop.
    • Collaborative development - where a developer can share their work with others and develop an application
    • Support of APIs which are the front and center of business applications and architecture.
    • Choose a platform that allows developers to create, publish and discover APIs with ease.
    • Apart from hosting and release management, look for solutions that allow for rapid and continuous provisioning, deployment, instant scalability, and maximum utilization of resources without hidden costs.
  3. Assuming applications built are compatible with mobile devices Modern applications are required to work on multiple mobile devices, like phones and tablets. For such applications being built on a low-code platform, it does not mean re-building an application to suit the orientation of a phone or tablet. It means the No-code platform must offer cross-platform app development. Which in other words, is the ability to create applications using a single code base that can adapt to any native platform or operating system (which could be iOS, Android, Windows Mobile, BlackBerry/RIM, etc) using a hybrid adaptive design enables applications to be run seamlessly on any device giving it cross-platform capabilities.
  4. Assuming application migration is easy Modern low-code application development platforms offer multiple options of development like cloud and on-premise. Enterprises have frequently changing requirements of development either for their internal use or for their clients and have to adhere to either an on-premise or cloud-based setup. Now, the question arises can an application partly built over the cloud be migrated hassle-free to an on-premise setup of the same low-code platform provider. As development requirements change from cloud to on-premise, the low-code platform you choose should allow easy portability or migration of applications from one development setup to the other.
  5. Maintenance, security, and support For an enterprise, terms like maintenance, security, and support are crucial when they take a decision to invest in a low-code app development platform.
    • Maintainability is a critical aspect of application delivery and is overlooked by many platforms. Verifying the generated code follows:  design patterns, is well-organized, uses standard naming conventions, and generates documentation that enables developers to understand and maintain.  
    • Enterprises crave the right security for their applications. While choosing a low-code application development platform, enterprises need to make sure they can handle flexible authentication and authorization mechanisms to secure users and various tasks within the application. It would be an added bonus if it can provide easy integrations of popular identity management systems like AD, LDAP, SSO, and OAuth.
    • Before investing in a modern low-code platform, enterprises need to make sure that the platform provides adequate support during the usage of the platform and meets all the SLAs promised by the platform to the enterprise.
Benjamin Franklin famously said, "An ounce of prevention is worth a pound of cure". Keeping that in mind, the above pitfalls can be avoided and can help enterprises choose the right low-code platform for their application development needs. WaveMaker’s RAD Platform is designed keeping in mind the requirements of a Software Developer, Citizen developer/business user, IT architect, and CIO. Get Started to find out more about WaveMaker’s modern low-code RAD platform.   

Low-code platforms are the key to providing businesses with the ease and speed of building apps they need with seamless integration between IT teams and business stakeholders.
When we talk about aligning IT with business, we basically describe a situation where information technology and its capabilities and scopes are used to the optimum limit in an organization to achieve business objectives and satisfy customer needs. This also involves getting the maximum return on investments made on IT in the organization.

But aligning IT and Business within an organization isn’t that easy. Business stakeholders and IT professionals often fail to bridge the gap due to differences in objectives, preferences, and methods. This rift generally results in expensive IT systems that do not provide an adequate return on investment. For this reason, the search for Business / IT Alignment is closely associated with attempts to improve the business value of IT investments.

From the Perspective of Business Stakeholders 

Dynamic Business Environment: In today's time Businesses operate in a very dynamic environment. This gives rise to the need for new changes and expectations from the application they use to automate various business functionalities. With old and traditional applications their requirements do not get translated through the apps that they use. These needs rapid customization and features that can be tweaked and changed with minimal IT intervention as and when the need arises,

Time to Market: Applications that are built using traditional methods are complex - there is a long process involved in creating it, using technical expertise and coding. The time taken is long and it often exceeds the requirement of business stakeholders. This results in a delay in the overall delivery of the service.

Shadow IT: The growing need for customized application development has given rise to Shadow IT and the emergence of citizen developers.  When a quick business need arises, people within the enterprise take control to build applications themselves with their know-how of IT. This is commonly known as “shadow IT” – applications built, installed, or rented outside of IT control. This is an impending threat to security and to IT departments in organizations across the globe.

From the Perspective of IT Stakeholders:

Keeping up with the pace of change: Today's business scenario is very dynamic. New innovations are increasing the demand for custom apps and enterprise applications that have the capability to meet the changing business needs of stakeholders. A lot of time, money, and resources are getting wasted in the process of changing applications as per customer needs. IT developers thus need to align their processes with the Business strategy to adapt to the changes and be able to deliver apps accordingly.

 Take back control: Due to the emergence of Shadow IT and Citizen Developers, IT departments in Organisation are realizing the need to take back control, tackle problems related to insecure apps being used, standardize IT policies,  process and this can be only done when IT aligns with modern business requirements.

Do away with Coding:  The need for code is perennial but many IT leaders are realizing that complex coding is simply not suited to meet business needs and deliver applications today. Application development should be user-friendly with less coding involved so that as business reviews development progress, stakeholders can easily make changes without impacting delivery timelines.

Drop Legacy Baggage:  A major chunk of the Organization’s IT budget and resources is spent in maintaining existing applications based on legacy technologies. Moreover, getting an application built on data from a gamut of these legacy technologies contributes to further delays in application delivery thus making business stakeholders unhappy.

Focusing only on enhancing IT skills is not the solution to bridge the gap that exists between Business and IT. We need a platform that can make IT/business collaboration a reality by connecting and engaging all stakeholders: IT leaders, developers, business analysts, citizen developers, business owners, end-users, etc. This can be done through social collaboration and project management features, direct access to the application, end-user feedback mechanisms, etc.

Gone are the days when only highly skilled technology experts could build applications using complex languages and codes. Faced with the need for greater speed and simplicity, organizations now want product managers, analysts, and business development teams to get involved in the app development process.  IT should be imbibing platforms that allow the democratization of app development.
The world is changing and it is clear that traditional development tools and methods are becoming passe. It is important to find a platform that enables rapid, cost-effective, and iterative development of applications.

WaveMaker, Inc. proposes 2-pass development as a new app development methodology that can be used with a low-code platform to do away with all the application development challenges that were mentioned earlier and to optimize the entire app building experience.

2-pass development methodology, as it says, includes two development passes:

2-pass development methodology bridges the missing links brings in the much-needed standardization and process optimization into the app development using low-code platforms with citizen developers,  the business pass and the technical pass bring together IT and Business people who can now take active participation in the app development process in different phases.

Low-code platforms and easy-to-build apps are what will drive success for IT developers and business stakeholders in the days to come.

I have been talking a lot about APIs and their importance in the present day. You can find out the first 2 parts APIs series post 1 & API series post 2.  

This blog post is a continuation of the same series. I intend to take readers through an interesting read on the relationship between Low-code platforms and APIs.  

As discussed in the last post, there are 3 high-level actions for the API lifecycle,

  1. API Publishing to create and deploy APIs
  2. API Management to manage and monetize APIs
  3. API Consumption  to discover and integrate with the APIs

Typically the actions - API Publishing & API Consumption get done in an app development platform and API Management gets done on an API Management platform.  

In this post, I will address how low-code platforms, as the torchbearers of modern app development tools, have taken the Application Driven Development (ADD)  as a mantra and has made life easier for developers around the world, including citizen developers.

A good low-code platform should be able to enable both API Publishing and consumption and have solid collaboration with an API Management platform as well.  Let's delve  into the details now :

Auto-generation of APIs

For some time now, Low-code platforms have been auto-generating the code based on visual development.  It’s time to do the same for the APIs.  Some of the most common APIs that can be auto-generated can include the services from DB, external services, custom-coded business logic, security services, etc.

For instance, it’s imperative that low-code platforms, at a minimum, should auto-generate CRUD APIs for the associated DB entities.  More advanced platforms can also APIfy the SQL queries and  DB stored procedures allowing total control for the users.

Other services like security and custom code business logic are also great candidates for APIfication.  For instance, if you have a custom coded in your CRM app a function to take return the list of all users from the EMEA zone, then that function should ideally be APIfied, automatically.

Automatic conversion of SOAP to REST

APIs these days are invariably REST-based.  But there are still big remnants, of legacy SOAP-based APIs, and modern low-code platforms would automatically create a REST API endpoint for the app.  This auto conversion is especially imperative in an enterprise setup, where legacy baggage is seen far too often.  The automatic availability of REST APIs is an important step in modernizing legacy apps.  

Easy consumption of APIs in an app

Out-of-the-box integrations and connectors are increasing making its presence in today's market. and a lot of app Development platforms focus on them. But often these platforms do not realize that there is always a custom API requirement for an app. Hence all kinds of integrations - both out of the box and custom should be treated equally.

Ease of design, testing, and sharing in APIs

Another pitfall in many low-code platforms is that they tend to focus a lot on API consumption through connectors and forget about API publishing aspects.  In a connected app world, it is imperative that your own app should have easy ways to create, design, and share APIs.  Inbuilt tools that can design your APIs (for eg, configure path parameters vs query parameters) with ease, test them (through an integrated testing sandbox), and then publish (private, public access) are important features in any other modern low-code platforms.  There should also be easy integration to publish these APIs into the enterprise API management platform so that it's instantly available to the API consumers within an enterprise.

APIs- a tad bit technical.

Modern REST APIs, though simplified, is still quite technical in nature.  There is still technology involved in understanding path versus query parameters, headers, auth headers, API key, etc.  Low-code platforms, which are positioned as app-building tools for business users and citizen developers still find it difficult to work directly with APIs.  A smart low-code platform abstracts these complexities and provides you with a nice UI-based connector to work on.  This is where the out-of-the-box connectors become really helpful.  But even APIs of your own app should also be abstracted the same way.  That is where a 2-pass development approach would be very helpful in terms of creating reusable UI components for the business user.

The above list looks very simplistic.  But a quick glance at various low-code platforms shows you the stark reality. In other words, API Driven Development is still just wishful thinking than a reality among low-code platforms.  This is one space WaveMaker scores far ahead of its competition.  This is one of the features that is going to make you ready for app building in the modern digital world.

In continuation of the RAD Architecture Series, we are going to focus on Client-side Framework in this post.

Good user interface and usability can have a strong positive impact on the adoption of the application by end users. At the same time, it takes good skills to build good user experience. It is not just science but an art that is mastered by a few.

Developing the UI for web applications has been very sluggish, unresponsive and difficult for many years.  However, in the recent past, with the advancement of client-side technology (JavaScript, browsers, standardization, frameworks), it is now possible to create sophisticated UI. However, it  is important that one selects the right combination to make all this work seamlessly and simplify the developer experience. Otherwise it still can get complex and messy for UI developers.

With WaveMaker Platform, the following aspects were evaluated before selecting the right framework:

And finally the most important one was selecting a framework that had support and backup of a large community of developers, users, and enterprise adoption.

With the above considerations, WaveMaker chose to adopt AngularJS client-side framework. AngularJS was created by Google and has a big following among client-side developers and is backed by a strong community. All applications including web and mobile developed using WaveMaker auto-generate AngularJS code for the client-side user interface.

With WaveMaker, all the client-side UI widgets are wrapped using AngularJS directives.

WaveMaker allows developers to drag and drop these widgets to create a sophisticated user interface. These widgets allow customization using properties and offer greater sophistication in terms of usability and support data binding with any backend sources.  You will learn more about them in the next blog post in this series.

Another advantage of WaveMaker is that developers can customize client-side behavior by writing custom JavaScript as well as importing 3rd-party jQuery or any other JavaScript framework. Head over to the Wavemaker  Rapid Application Development Platform page to learn more about the features and frameworks.

In the next blog post in this series, we will deep dive into the UI widget architecture. Stay tuned!

Debunking yet another set of myths surrounding the world of apps, with  something very essential for technology and business leaders who are trying to take a decision on apps building in the  modern digital world.  With the demand for business applications outstripping the availability of IT resources, business leaders often find IT as a bottleneck to get their apps created quickly. There is no doubt that business innovation can be fostered by mobile and web apps, but misconceptions about business app development remain and  this in turn  can hamper decision-making. Here are seven myths that can stall business innovation in an organization and let’s demystify them for better understanding

Myth #1:  The bigger the app idea, more the time it takes

“There are no limits to imagination and the size of your idea.  The real bottleneck comes in when the you try to appify your idea.” But wait, that's an old saying. New age low-code platforms which offer you rapid application development lets anyone with an idea to build an app quickly.  There might be some intervention by the technical developers, but that doesn’t hinder the initial process of appification of an idea quickly.  

Myth #2:  Apps with compelling UI/UX is an expert’s job

Professional apps built using traditional methods have a very intuitive user experience.  Usually getting those slick user experiences, associated with a great app, involves senior front-end developers who are good at JavaScript, HTML, and CSS.  But with the new tools based on visual development, out of the box templates, one can do away with UI experts.  The finer adjustments can be done with simple DIY hacks.  The effort is also reduced to just hours to days instead of weeks to months together.  

Myth #3:  Apps created by business users cannot integrate with internal business systems  

Most business apps contain data from back-office systems or specific business applications like ERP. Connecting an app securely to these often-legacy systems requires access and integration logic. IT can manage and provide access to these systems via APIs, through API management solutions,  in a secure, reusable, and reliable way. Business users in turn can consume these APIs through low-code platforms like WaveMaker, to intuitively integrate and use them inside an app.

Myth #4: App’s security and DB need expert intervention

Professional apps usually have complex DB design, professional security and coded as per standards.  In traditional development, these qualities cannot be achieved without the involvement of expert developers.  But with new tools and technologies—including automatic table creations, visual DB design, and configurable security means, anyone can build apps and they are almost codeless. This is ideal for business users, product managers, and in general any citizen developers.

Myth #5: Business apps will not be supported by IT

Apps are of multiple types.  One of the categories is core apps that drive the company’s core businesses. And then there are a lot of other apps that are categorized as long-tail-apps scattered all over the organization and are usually those that are driven by business teams.  Traditional IT support only the core apps, and the long tail apps flourished under the shadow of the IT teams.  However modern IT leaders also bring under their control long-tail apps to curtail shadow IT in the organization.  This is done using modern app development platforms that allow centralized control by IT and also ease the building of these apps by business users.

Myth #6: Modern App Development Platforms Are Closed and Proprietary

This is a myth that is almost true. The new-age app development platforms that offer low-code and rapid application development are mostly closed and proprietary.  However, there are few platforms like WaveMaker, which are based on open standards and offer the developers a choice to move away from the platform with the auto-generated app code, which can be migrated and developed in any IDEs like Eclipse. Though there is an understandable fear that developers will get locked into something that they may later want to move away from, these platforms will provide the flexibility that allows developers to make any real-time changes needed.

Myth #7: Cross-Platform Apps Are not fully featured

There is a misconception that cross-platform apps, usually built using hybrid mobile app development, cannot support a lot of features.  It’s true that not all platforms are equal and some may not support the full plethora of feature development, but it's still possible to develop apps that are rich in functionality. Some platforms for example - the RAD platform by WaveMaker make it easy to build apps that have features customized as per business requirements.

Recent times have seen the emergence of many enterprise application platforms that have the capability to address these challenges and make app development work much less tedious than it appears. The WaveMaker platform is one such platform worth mentioning. This platform develops & Deploys custom apps with multiple functionalities in a cost-effective and less time-consuming manner.