The future of web development
The web ecosystem is evolving at an insane speed.
Driven by FOSS projects (Free and Open-Source Software) and following the trends more familiar to web developers, new technologies are coming out every day.
This is great. Developers are getting friendly new tools to create more modern and appealing web apps.
However, there can be a downside. The proliferation of JavaScript frameworks and the push to use the latest technology are putting companies at risk of creating web apps that quickly become obsolete. They hit a dead end where it becomes impossible to develop them any further. When that happens, the only option is to rewrite them completely. That’s expensive and it can have a negative impact on users.
So when you’re developing web apps, it’s important to choose your technologies carefully to help you build apps that last.
Let’s look at the main design principles and technology standards that we use in our web app development at ION.
The Web ecosystem is fluid
A new web front-end framework comes along almost every day, but as yet there’s no standard.
To create apps that you’ll be able to continue developing and evolving for years, you need to avoid hype-driven development, or HDD. HDD is a trap you can fall into when you follow a technology trend blindly without fully understanding its benefits.
That’s why you must never adopt a technology just because it’s considered “hot” in the market or everybody’s talking about it. Solid research and careful consideration are required.
Big product companies need to develop stable, reusable infrastructure to support multiple web apps for years. This helps developers to speed up the pace of delivery. It also makes maintenance easier.
Avoid coupling with any JavaScript framework
A key principle in developing long-lasting web apps is to avoid coupling them to any specific JavaScript framework. Otherwise, you run the risk that one day your chosen framework will cease to be developed or maintained. If that happens, it’ll leave your app stranded.
Instead, stick to the HTML5 standards. Use plain HTML5 or JavaScript to write infrastructure that’s reusable with any JavaScript framework.
For example, if you develop a grid or chart widget in plain JavaScript, it’ll be reusable with any framework now and in the future. You can then expose widgets in a way that’s friendly for the most popular frameworks, such as Angular or React. That simplifies your development, and the widget itself remains decoupled so you can adapt it and reuse it with any new framework in the future.
This means whatever evolution you do in the core of your web app, most of the code can be reused as is. So there’s no risk of hitting a dead end that will require a full rewrite.
Stick to the standards: Web Components
Web Components is a set of web standards that give you the power to extend HTML and expose widgets as standard HTML tags. This is the natural response to one of the major gaps in web programming compared to other UI frameworks: componentization. It’s also one of the reasons behind the uncontrolled rise of so many different JavaScript frameworks.
All the main browsers now support the Web Components standard.
Developing a web framework applying the Web Components standard is a future-proof choice. Any JavaScript framework supports it, and it makes it easier to embrace future evolutions of the standard itself.
On the move
Global mobile data traffic is showing a constant increase in the number of mobile devices accessing the Internet each day. So it was natural for ION to invest in a mobile strategy, in addition to our classic professional desktop applications.
Web app development becomes a sort of “universal bridge for front-ends”, naturally targeting devices with any form factor and features.
To bridge the gaps with native applications, we can apply the progressive web apps (PWA) principles. A PWA app is a web application designed also to work on mobile devices, creating a user experience like native mobile apps.
PWA principles can be applied in various ways, having apps that work offline (important with spotty connections while users are on the move), supporting push notifications to notify users about critical actions, and so on.
In this way, ION has shifted the paradigm from professional desktop applications to fluid and responsive web apps that can also be delivered through mobile devices.
Browser standards: the Microsoft strategy
Web development is evolving so fast that front-end technologies are being pushed to their limits.
For this reason, web browser standards are evolving very quickly to cover the gaps with native applications, both in terms of features and performance.
Microsoft’s recent change in their browser strategy is another clear example of how important it is to support standards properly.
In 2019, Microsoft came to a decision that would have been unthinkable a few years previously: the Windows default web browser, Microsoft Edge, shifted to the open-source Chromium engine, best known for powering the Google Chrome browser.
This revolutionary strategy shows how much the web landscape has changed in the last decade. It also highlights the importance for Microsoft of responding quickly to user frustrations about a lack of support for standards and about performance footprint.
Web apps at ION
At ION, we apply these design principles to develop our web apps.
All ION web apps are based on a common infrastructure, the ION Web framework. This enforces standards and hides complexity in a centralized way, greatly simplifying our web app development.
The ION Web framework is also available to ION clients who want to develop modern and responsive web apps to extend their offering.
To find out more about our ION Web framework, visit Client ConnectION, or speak to a member of our team.