To gather insights on the state of web application development today, we spoke with 12 executives who are familiar with the current state of the industry and asked them, “What are the most significant changes to the development of web applications?" Here’s what they told us:
Modern UI frameworks like React.js and hyper-personalized chatbot interactions like Alexa Voice have dramatically raised expectations for usability and intelligence. Web application developers need to think more about collaborating with business operations to ensure alignment of data, process, and business rules with new customer experiences. A model-driven, low-code platform puts IT and business on the same page while future proofing your application logic for whatever UI comes next.
We now have zero-downtime deployments. I’ve switched from Java, large and “enterprisey,” to Node.js which is more modular for smaller frameworks.
We’ve moved to a microservices model with a bunch of single-pane apps loading to a page skinned with Angular or a single page application.
Prevalence of microservices. Companies are either implementing microservices or exploring the use of them. The backend is more complicated. Introduce API gateways to ensure everything integrates smoothly. The rise of DevOps and shifting left. Developers are picking up new skillsets for Ops around automation with Chef and Puppet and microservices and containers with Kubernetes.
The move to microservices and micro-like services. We see this in push notifications and the need for services to provide that. Alexa calls into services and sees an integration point to integrate with other applications. Less emphasis on full-scale and more emphasis on integration. Microsoft and Amazon are encouraging their AI assistants to talk to each other. Google is adding a lot of features to Google maps. Combining things together in a way that makes sense to the end user.
The impact of the shift to mobile access is still being felt. We are in the middle of a transition that has had several phases. At first, developers jumped on mobile-specific frameworks that didn’t work on desktops, then onto so-called "mobile first" frameworks that had a desktop UI, just a very poor one. Enterprise developers are slowly waking up to the fact that, for enterprise apps, desktop use is still very common, and underpowered components are not acceptable on the desktop or even on tablets and larger phones. The leading frameworks now support using a single set of components across desktop and mobile, with features to allow automatic adaptation.
Combination of web assembly and progressive web apps (asks if you want to receive notifications). If it loads on mobile devices, it has the look and feel of a mobile app.
The concepts of open source have provided the most notable impact on web application development. Open source software is an expression of patterns that developers encounter on a day-to-day basis. In the early 1990s, having login capability and user management was a unique and time-consuming feature for web application developers. Today we have a host of frameworks powered by open source that can be leveraged to provide this functionality in a more robust and secure implementation than creating from scratch. Over the years, developers have been able to come together around open source projects to share patterns like logging in and user management so that the result is a better experience for the end user as well as the implementation team. Today, we see similar concepts in the world of cloud-based computing and development lifecycles. Organizations like Google, Amazon Web Services, Microsoft, IBM, Cisco, and Intel are forming alliances collectively to solve the patterns in systems and delivery under the same open source principles that helped web application developers deal with login forms and user management. Shepherded by organizations like the Cloud Native Computing Foundation, we see revolutionary communities creating tools that directly affect hosting environments, deployments, and systems. The net effects for web application developers include the ability to focus more on application creation and less on the effort of delivering in a consistent, performant, resilient, and secure manner.
What do you believe are the most significant changes to web application development?