One of the best lessons I learned was during a hard financial constraint.
Roughly around 1994 I had a new compute- a 486/66MHz with 4MB of RAM. I got LINUX and installed it, and was able to run X windows, g++, emacs, and xterm- but if I compiled while emacs was running, the system would page like crazy (especially obvious in those days when harddrives were very noisy).
I had to work really hard to convince myself to pay the $200 (as an undergraduate, I had many other things I would have preferred to spend money on) to double the ram to 8MB, and then another $200 to 16MB a year later, and finally a last $200 to max out the RAM at 32MB.
Once the system had 32MB of RAM, it performed quite well, with minimal paging, and it greatly increased my productivity. I learned that while RAM can be expensive, making sure your processor is not waiting for disk is worth it.
I probably also spent $1,000s of dollars on modem upgrades (1200->2400, 2400->9600, 9600->19200, 19200->48000, 48000->56K and then switching to DSL and later fiber). Each time was "worth it" but it was expensive and so I really thought hard abotu the upgrade and the value it brought me (a high level of job opportunities in areas I find interesting).
>... if I compiled while emacs was running, the system would page like crazy
The good old days when "eight megs and constantly swapping" was a real issue. I kind of miss them. (But not the modem speeds. Don't miss those at all.)
I go back and forth on this all the time. Generally, I consider applications in browsers an example of the inner-platform effect because I believe native applications are typically better (faster, resource efficient, more consistent UI).
On the other hand, look at ChromeOS: a (previously) successful operating system based on the idea that nearly everything can be implemented in the browser. Microsoft even toyed with this a long time ago, when they made ActiveX controls and integrated Internet Explorer into the desktop. The browser provides a number of security benefits, and allows remote applications (Visual Studio code can be run in the browser, although it looks like the terminal doesn't work, which is a huge probelm).
Personally, I find VS Code's performance to be fine on extremely fast machines, and tolerable on slow machines, but I also think that a truly native VS Code (probably based on Qt) would be 100X better.
Roughly around 1994 I had a new compute- a 486/66MHz with 4MB of RAM. I got LINUX and installed it, and was able to run X windows, g++, emacs, and xterm- but if I compiled while emacs was running, the system would page like crazy (especially obvious in those days when harddrives were very noisy).
I had to work really hard to convince myself to pay the $200 (as an undergraduate, I had many other things I would have preferred to spend money on) to double the ram to 8MB, and then another $200 to 16MB a year later, and finally a last $200 to max out the RAM at 32MB.
Once the system had 32MB of RAM, it performed quite well, with minimal paging, and it greatly increased my productivity. I learned that while RAM can be expensive, making sure your processor is not waiting for disk is worth it.
I probably also spent $1,000s of dollars on modem upgrades (1200->2400, 2400->9600, 9600->19200, 19200->48000, 48000->56K and then switching to DSL and later fiber). Each time was "worth it" but it was expensive and so I really thought hard abotu the upgrade and the value it brought me (a high level of job opportunities in areas I find interesting).