Member-only story
Developers, Stop Making Bloatware
It’s okay to make hybrid desktop apps. But never let them become bloatware

About a decade ago, we had a golden era with pure native desktop applications. However, hybrid applications became popular over native applications due to the easiness of development, beautiful graphical user interfaces, and impressive cross-platform support. Native applications are undoubtedly great from the technical perspective because of their great resource usage, unlike hybrid applications. We all can use hybrid applications without any visible problem because our powerful hardware solves performance issues coming from common hybrid apps.
A few years ago, I tried to use the desktop application of Slack. Thereafter, I found that it was written using the Electron framework which ships a whole browser and a runtime (Node.js) along with each application. This situation popped out a nice question. Why do I need to install a web browser again even if I already have a web browser installed?
Bloatware is bad
If a particular software abnormally uses a lot of the physical resources of the computer over the usability, the specific software is often identified as bloatware. In fact, every software that consumes a lot of resources is not bloatware. For example, if a video editing software takes more resources during the rendering process, we cannot put it into the bloatware bucket. But how about if a normal program takes a lot of space in physical memory?

Nowadays, almost all developers tend to make their desktop applications using the Electron framework mostly due to the easiness of the development and fast delivery. Unfortunately, they don’t care about performance and efficient resource usage because their main goal is to make a fancy desktop application. But in reality, those hybrid apps become bloatware because more resources are needed just to drive hybrid applications than the actual resource usage of the particular application. Hybrid applications are fine since modern computers are powerful enough to render web-based interfaces fast to give the same look and feel…