Web Technology Industry – My 2021 Perspective and Future Forecast
In the current landscape, the web and technology industry are constantly evolving, striving for innovation. At the same time facing potential disruptive forces that could change their paths.
Rise of hybrid software development, at a cost
… and the cost is native software development.
As an ‘old timer’ software developer, I have closely observed the evolution in fields of web and mobile development. This article doesn’t deeply explore the growth of hybrid development (such as Xamarin, React Native, and Flutter). But year after year, since the first hybrid solution emerged, it has steadily cut into the native market.
This gave rise to a certain breed of developers coming from various landscapes (Javascript, C#) to proceed and create mobile applications. All it was well(until it wasn’t), until they have started to face issues that were already solved in the native world, or there shouldn’t be there in the first place.
In a similar fashion with low-code no-code tools in the web, where you can create very quickly a web application, but as soon as you start to go the custom route, or want to implement something that is not present or supported by the given ecosystem, your progress goes from a slowdown to possible halt.
Back to mobile, all it was good, but when you needed to work with the mobile api’s, with bluetooth, nfc, camera api, the show-stoppers were present. Some were easier to work with(camera) while, others were downright impossible, at times (geolocation).
And now we soon started to see Javascript developers that needed to learn Swift for iOS development, Kotlin for Android. For Xamarin, C# was required, then came Google with Dart and Flutter and so on and so forth. Soon developers became “Jack of all trades, masters of none“.
All because of this hybrid world that has taken over with a promise of increase speed to market, while in the background, the speed was nowhere in sight. Clients still did not understood the limitation or just demanded the same as from native developers.
We could’ve lived right now in a place were developers could’ve been “Jack of all trades, masters of one“. One main language for the specific environment, and general knowledge surrounding the ecosystem of the specific product.
I need to mention the fact that I am all-in for learning multiple programming languages. I personally have about 10 years with Javascript (7 of those with Typescript), a couple of years with Java, one with Python, one with C#, and to much time spent on learning C++. For scripting I love Bash, I do not hate Powershell. With SQL, I have a love-hate, but more on the love side. And this year I gave GO a try, and will come back with an opinion on it in 10 years.
So overall I am a multi domain and programming language advocate, but not how hybrid development force you. That is more like ‘oh s*it, I need to brush up my Java / Kotlin for this app’, and not like ‘hmm, maybe I should try Lisp for a few months’.
New is (not) always better
These hybrid technologies have quickly gained traction in the tech world as they cater to the demand for faster and more efficient app development. However, as stated previously, this shift has not been without its challenges.
These frameworks, while excelling in speed and efficiency for standard applications, impose limitations that become apparent with highly customized solutions. In many cases, developers still prefer the native approach for its flexibility and superior performance capabilities. This shows how disruptions, while promoting innovation and efficiency, may not be beneficial for all aspects of the development process and can bring about long-term challenges or restrictions. And it did, irreparably.
For specialised and performance-driven applications, the necessity of reverting to native technologies emphasises the complexities and trade-offs involved in the ever-evolving landscape of app development.
Why work with a native language that’s usually up to date with the native environment rather fast, when you can work with a framework on top of a framework on top of a framework, that by itself needs to stay up to date with the native environment, rather not so fast.
They were ‘Good enough’ to change everything about web development
New tools that promised everything were rapidly ruining the entire developer experience.
Hybrid software development, while still considered ‘not good enough’, has greatly disrupted the traditional landscape of mobile app development. In the past, creating apps for iOS and Android required separate codebases, a time-consuming and expensive process that demanded specialized skills for each platform. I admit.
However, the new framework has revolutionized the landscape, enabling developers to write code once and deploy it across multiple platforms. In theory, but still a good theory nevertheless.
This has streamlined the development process and reduced time to market. From a business standpoint, this shift towards hybrid development has made mobile app creation more accessible, allowing smaller teams and individual developers to compete with native applications in terms of performance and user experience. As a result, the app market has become more competitive, with lower barriers to entry for new players. For businesses, using a single codebase for both iOS and Android can result in significant cost savings for development and maintenance, while also providing a more consistent user experience across devices.
When all things work as expected, this theory deserves the role of ‘disrupter’.
The hybrid model, combines the best of web technologies with native execution, and has blurred the lines between web and mobile development. In turn has challenged the establishment, the previously dominant position of native development and has forced the tech industry to quickly go back to the drawing board and adapt. As hybrid frameworks continue to improve, offering better performance and more features, the demand for hybrid solutions is expected to grow, further transforming the landscape of mobile app development.
Until something else can disrupt this landscape again.
The Imperative for Innovation
Innovation is the key driving force behind the technology sector, constantly pushing companies to redefine the digital landscape. However, this continuous pursuit can lead to over saturation in the market, making it difficult for truly groundbreaking ideas to make an impact.
But most of the time, innovation gave rives to dozens of duplicates. We see it in every domain, 20 types of bottled water in the super market, 30 apps named ‘calculator’ in the app store. This is truly the peak capitalism, at it’s best, and the pursuit for innovation is one of the reasons for this result.
Failure to innovate or to ‘keep up with the pace’ has however resulted in the downfall of industry giants, emphasising the “innovate or die” mentality that dominates many sectors.
The Dual Challenge of Sustainability and Innovation
The growth of the tech industry has led to a significant impact on the environment, creating the challenge of balancing innovation and sustainability. This can be explained in many areas of tech, and we can give an example even in the web:
Inefficient code, or bloated code will result in more energy used by both the client, and the server. This demand is not noticeable when we imagine one application or a dozen users, but if we imagine tens of thousand inefficient application, hundreds of thousand servers and billion of users, even a 1kb optimization can help reduce impact on the environment. Not to mention that usually optimizations are done in MB per application, and bloat is everywhere.
We are not living in a optimized world, we are living in a bloated one, consuming energy at incredible rate.
Green Computing: A Paradigm Shift
The trend towards green computing is gaining traction as major corporations such as Google and Apple commit to achieving carbon neutrality and promoting sustainability. That is when they are not busy losing lawsuits over privacy or data theft.
It does help, I can sure agree. The adoption of eco-friendly practices is a good one, but in my view, is something that is adopted at a snails pace.
Final thoughts
My focus will remain on studying this constantly evolving environment. I am more pessimistic in writing, but continuously hoping for better.
As mentioned in the title, the article was written in 2021.
Photo by luis gomes from Pexels: https://www.pexels.com/photo/close-up-photo-of-programming-of-codes-546819/