Gartner believes that Cloud Client is one of the Top 10 Strategic Technology Trends for 2015. The convergence of cloud and mobile computing will continue to promote the growth of centrally coordinated applications that can be delivered to any device.
A Changing Landscape
The big tech companies of the world (Facebook, Google, Apple, Microsoft, Uber) are setting a high standard for their applications.
The apps of those big tech companies (Google Apps, Facebook Apps, Uber, Instagram, …) deliver a unified and highly interactive online & offline experience to their users, which are extremely satisfied.
Those innovative applications have a modern UI/UX, stateful, and run on all major devices and browsers. They no longer use the concept of ‘pages’.
They are able to deliver those apps right now because they have huge budgets and they can attract the smartest developers.
They try to outpace the competition in their sector with this strategy.
An important consequence of this situation is that everyone now expect that every other company in the world also delivers apps with those excellent characteristics. This results in a serious backlog because most companies do not have the skilled developers or expertise to build these modern apps. And most are not capable budgetwise to develop an app for each platform (Android native, iOS native, web apps for the browser). Note that this applies to enterprise apps, B2C apps and B2B apps.
Many frameworks to build websites and static apps cannot deliver applications that live up to those expectations. I’m talking of Classic MVC frameworks such as LAMP (PHP Laravel,…), ASP.NET, Java JSP JSF, … These apps typically consist of pages, forms and links and operate using the HTTP Request/Response pattern with basic interactivity on the client side. These systems basically pump HTML to the browser client.
The first step to a real solution for this dilemma are SPA’s (Single Page Applications). These apps are typically designed according to the MVVM (Model View ViewModel) pattern on the client side and communicate with the backend using an API (typically not a REST API). A typical SPA is highly interactive and no longer uses the concept of Request/Response. The screens are generated in the same browser view.
What is missing in SPA v1 is the concept of Cloud Client. In a Cloud Client architecture, the centrally coordinated applications are divided in several parts. The app service is running on the backend and each device runs the frontend part of the App. The data is synchronized seamslessly between the backend and the frontend (think Google Firebase and Meteor). The backend maintains a realtime state of each client/device (typically using Sockets).
Each architecture typically has its own set of developer tools. Thinks of the era’s mainframe / mini / windows / LAMP / … So it is proper to think that the Cloud Client architecture will have its own set of developer tools very soon.