Unused RAM is not wasted RAM:


I keep seeing this nonsense being repeated everywhere, be it on online forums, Discord servers, Hacker News, Lobsters, you name it. The nonsense being: Unused RAM is wasted RAM!, it is usually used to defend bad programming practices (in this case extensive memory usage, usually due to non-optimization or bloat) and soyware. In this post I will explain my (contrarian) view:

This idea is not only backwards but also dangerous (to software engineering), I'd actually argue that wasted RAM is when you are using an amount of RAM that is not necessary. This wasted RAM is usually a by-product of using bloated libraries and software such as Electron (one of the worst things to happen to modern software) when we have much better alternatives that are not as resource heavy, such as FLTK and EFL.

Why unused RAM is not wasted RAM: because of the same reason that unused money is not wasted money. RAM is a finite resource and should be treated as such. There is only a maximum amount that can fit into your computer's RAM. But then there are arguments such as: Most people should/have 8GB+ of RAM!, no. That is false. Sadly, the huge majority of people in the world cannot afford such. It is irresponsible to think everyone can afford the same things you can.

Striving for the minimum resource consumption while not sacrificing anything should be a priority in software engineering. What is the solution then? Well, I recognize that most of the bloat modern software (like Discord) suffers from is due to soyware practices (faster development over quality) which is why Electron, for example, is so popular. In an ideal world we would stop relying so much on the web behemoth and start using more native software.

Native software along with non-bloated alternatives for Electron (see FLTK, EFL or less preferably but still better than Electron: QT and GTK) are much better than whatever the dystopian Electron-thing we have now as a trend. Thankfully, I can avoid the software that uses Electron.