Categories
Enterprise Application Development

It’s Time for AppMakers to Become WaveMakers

The life of an application is as long as the platform that supports it. Starting April 15, 2020, new application creation on Google AppMaker will be disabled and on January 19, 2021, the App Maker editor and user apps are shut down. As administrators, end-users, and developers using Google AppMaker search for alternatives, Google put this out in their blog post as choices for migration of applications.

  • If you are using App Maker to automate business processes: Use AppSheet, a new addition to the application development portfolio that has capabilities similar to App Maker. Stored in Cloud SQL and App Sheet, App Maker data supports Cloud SQL databases, allowing you to build an application on the existing database linked to your App Maker app.
  • If you are using App Maker to develop apps: Use App Engine to build and deploy applications on a fully managed platform. With data stored in Cloud SQL, App Maker allows you to build an App Engine application on the existing Cloud SQL database linked to your App Maker app.
  • If you are using App Maker for data collection: Use Google Forms, which has many new features that were not available when App Maker launched.
  • If you are using AppMaker for basic form and simple business process automation: Use Google AppSheet and FormMaker as no code products suit you well. They are good for simple data collection, form generation, and data persistence.

For full-fledged app development, Google is recommending customers to move to AppEngine which is Google’s PaaS platform to build applications in a traditional fashion. This alternative is unlike using a visual app development and delivery mechanism that provides greater productivity and faster time to market. However, the burden will now fall upon development teams to learn, integrate and manage application development and deployment. There are several challenges with introducing new technologies, re-learning takes time and it costs. Finding technical resources such as full-stack developers who will understand end-to-end application development is another challenge that enterprises will have to address. However, if you have a choice of integrating a platform that is user-friendly, requires minimal coding, and ensures upskilling of development teams, migration will be easier.

WaveMaker is positioned uniquely to provide a very good path for application development teams looking to migrate their applications to an open standards-based, scalable low-code platform. With WaveMaker, application development teams are assured of 3x faster productivity, a developer-friendly environment with a fully customized modern code stack, availability of complete app source code, and most importantly no vendor lock-in. Best of all, WaveMaker provides all the enterprise capabilities around web-scale scalability, enterprise security, and CI/CD mechanisms required for continuous and reliable delivery of your applications on any cloud of your choice.

Moreover, WaveMaker has inbuilt support for easy integration with external database SQL sources, RESTful integration, role-based app security controls, widget components library, and the ability to extend them and final deployment options on containers, Kubernetes, or VMs.

To better understand how WaveMaker is easier and better to use, here’s a comparison with Google App Maker:

Features WaveMaker Google App Maker
“No Vendor Lock-in” Applications developed are based on proven open-source technologies and the platform libraries are available under open source license making maintenance of applications easier.. Uses proprietary technologies making the generated code (including platform libraries) difficult to maintain without deep knowledge of how the platform works.
Integrations
  • Supports API and web services integration.
  • Creates and imports databases.
  • Provides a range of out-of-the-box integrations to instantly add powerful functionality to your apps.
  • You can also create custom integrations, called Prefabs, and reuse them across apps.
  • Integrates with Google Analytics and other applications in the G Suite bundle.
  • As multiple tools are used for integration, database integration sometimes requires writing custom Java code.
IDE Interoperability Offers two-way IDE interoperability and an open-source runtime library, making application customization free from lock-in. Its cloud-based IDE does not allow exporting project code to external IDEs and re-import it to the platform.
Customization
  • The platform appeals equally to citizen developers and professional developers or enterprise development teams.
  • Supports the creation of complex, real-world enterprise applications.
  • Supports ‘2-pass development’ that allows business users first to create applications and then enables technical teams to customize, if required.
  • Supports simpler use cases and focuses on citizen developers.
  • Lack of customization and flexibility required by various stakeholders.
Deployment
  • 1-click preview and deployment
  • Packaging for Android and iOS app stores.
  • Supports the flexibility of exporting WAR files of your applications, allowing deployment of applications independently.
  • Provides deployment to a public cloud, private cloud, and on-premise environment.
  • Lacks the flexibility to deploy applications independently.

If you are an existing AppMaker customer, we would love to partner with you on your application development journey!

 

Start Free Trial

Categories
Enterprise Application Development

RAD Architecture Series: Data Model Layer

In continuation of our march towards understanding Rapid Enterprise Architecture, today we will talk about Data Model Layer in WaveMaker.

In any modern day enterprise, there are many data sources that applications integrate to, and these data sources are distributed, diverse and provide varying degrees of real time data.

Modern day applications need easy and sophisticated mechanisms for Data Manipulation and Data Management. WaveMaker abstracts out all the complexity, low level data manipulation needs and presents a unified REST API Layer for any type of Data Source, thereby significantly improving the productivity of an application developer dealing with data management and data integration.

In case of WaveMaker, application can integrate to a variety of data sources. They include,

  • All standard SQL Databases
  • SQL Queries, Stored Procedures
  • REST APIs
  • Web Service APIs
  • Web Sockets
  • RSS Feeds
  • Custom Data Source (Written using Java APIs)

The diagram below shows a unified architecture, that allows all the data sources (irrespective of its type) to be surfaced to the application as REST APIs.

As an Application Developer, one need not worry about the underlying complexity of the Data Source. WaveMaker simplifies it by presenting a REST APIs / Endpoint to connect to the Data Source and manage it seamlessly.

As mentioned in the previous blog, the data source is then managed by Variables from the application. The Variables are bound to the UI Widgets. In this way, all the complexity of the data source and business logic is hidden from the UI developer and applications can be developed in a faster pace.

When it comes to Database as the Data Source, WaveMaker has built-in features that makes it easier to manage the information model. WaveMaker supports a built-in Database Designer that makes it easy to model the database schema using drag and drop mechanism.

WaveMaker supports auto generation of the ORM layer for the database tables. The objects are then abstracted using a DAO as well as a Service (REST) Layer as shown below.

WaveMaker enables extreme productivity in developing Data Driven Applications. Most of the data driven applications needs faster response, responsive UI, easy data management and real time data visibility. Using the above architecture, WaveMaker easily supports creating UI Widgets (forms, grids, lists, charts etc.) that can be easily bound using REST APIs to any data source on the back-end. Also since all the interaction is REST based, the user experience is seamless by using SPA UI pattern.

Categories
Enterprise Application Development

RAD Architecture Series: User Interface Widgets

Let’s continue our march towards understanding Rapid Enterprise Architecture, in this blog we will cover one of the most visible aspect of modern applications being the User Interface Widgets.

User Interface Widgets play a very important role in both the User Interface Design and the User Experience of the application. Both UI Design and UX Design if done right with users in mind, can make or break application usage.

WaveMaker Platform provides a number of User Interface Widgets out of the box for developers. In case of WaveMaker, the User Interface Widgets not only help in providing beautiful UI out of the box but also are designed to increase the overall productivity of Widget Interactions. For example, by default many of the Widgets give out of box pagination, default selections, security, templates etc.

In doing so, WaveMaker UI Widgets play a critical part in enabling rapid development of applications by enabling a lot more tasks than just front end UI development.

User Interface:
Modern apps dictate both sophistication and variety in terms of out of box widgets. Different use cases dictate various forms of the widgets being used. Widgets need to take care of flexibility and advancement in both form and function. Finally every widget needs to be responsive.  WaveMaker provides all the standard HTML5 widgets from lists, grids, containers, charts, forms, panels, and all other HTML5 controls that an app requires by default in responsive form. Explore the list of widgets. 

Back-end Integrations:
In case of WaveMaker, the widgets also handle the following common functions required in a full stack application,

  • Auto Wiring to back-end services
  • Managing CRUD Operations
  • Configuration of Widgets
  • Templates that provide default properties
  • Security (Visibility, Accessibility of individual fields etc.)
  • Pagination

WaveMaker leverages the concept of Data Binding by Angular, to bind Widgets with Data (View & Model). Widgets can be configured to bind UI Elements to specific fields of the Data Model provided by Variables.

The Variables provide data integration for the widgets. Performs updates and synchronization to the actual data services in the backend. Manages client-side memory efficiently with scopes.
The Variables,

  1. Holds the actual data rendered by the widgets
  2. Data structure used for binding, with attributes and related objects
  3. API source from where the model object is obtained (DB, REST API or Java Services)
  4. Events that control the updates between widgets and actual service, vice versa

In summary, WaveMaker Widgets are highly sophisticated that not only enable creating  beautifully looking UI out of the box for Web and Mobile Apps but also due to its backend functionality they can greatly increase the productivity in developing the applications.

Head over to WaveMaker Rapid Application Development Platform page to learn more about the features and frameworks.