Live data from Hacker News

The world could run on older hardware if software optimization was a priority

twitter.com

61–70 of 842 posts

Re: The world could run on older hardware if software optimization was a priority

#61
post #5

Unfortunately, bloated software passes the costs to the customer and it's hard to evaluate the loss. Except your browser taking 180% of available ram maybe. By the way, the world could also have some bug free software, if anyone could afford to pay for it.

What cost? The hardware is dirt cheap. Programmers aren't cheap. The value of being able to use cheap software on cheap hardware is basically not having to spend a lot of time optimizing things. Time is the one thing that isn't cheap here. So there's a value in shipping something slightly sub optimal sooner rather than something better later. > Except your browser taking 180% of available ram maybe. For most business…

> Time is the one thing that isn't cheap here.

Right, and that's true of end users as well. It's just not taken into account by most businesses.

I think your take is pretty reasonable, but I think most software is too far towards slow and bloated these days.

Browsers are pretty good, but developers create horribly slow and wasteful web apps. That's where the optimization should be done. And I don't mean they should make things as fast as possible, just test on an older machine that a big chunk of the population might still be using, and make it feel somewhat snappy.

The frustrating part is that most web apps aren't really doing anything that complicated, they're just built on layers of libraries that the developers don't understand very well. I don't really have a solution to any of this, I just wish developers cared a little bit more than they do.

Re: The world could run on older hardware if software optimization was a priority

#62

Earlier quoted context omitted.

We're stuck with browsers now until the primary touch with the internet is assistants / agent UIs / chat consoles. That could end up being Electron (VS Code), though that would be a bit sad.

I don't think we are gonna go there. Talking is cumbersome. There's a reason, besides social anxiety that people prefer to use self-checkout and electronically order fastfood. There are easier ways to do a lot of things than with words. I'd bet on maybe ad hoc ai designed ui-s you click but have a voice search when you are confused about something.

[deleted]

Re: The world could run on older hardware if software optimization was a priority

#64

Let's keep the CPU efficiency golf to Zachtronics games, please. I/O is almost always the main bottleneck. I swear to god 99% of developers out there only know how to measure cpu cycles of their code so that's the only thing they optimize for. Call me after you've seen your jobs on your k8s clusters get slow because all of your jobs are inefficiently using local disk and wasting cycles waiting in queue for reads/writ…

I'm looking at our Datadog stats right now. It is 64% cpu 36% IO.

Re: The world could run on older hardware if software optimization was a priority

#65
post #5

Unfortunately, bloated software passes the costs to the customer and it's hard to evaluate the loss. Except your browser taking 180% of available ram maybe. By the way, the world could also have some bug free software, if anyone could afford to pay for it.

What cost? The hardware is dirt cheap. Programmers aren't cheap. The value of being able to use cheap software on cheap hardware is basically not having to spend a lot of time optimizing things. Time is the one thing that isn't cheap here. So there's a value in shipping something slightly sub optimal sooner rather than something better later. > Except your browser taking 180% of available ram maybe. For most business…

> The hardware is dirt cheap.

It's not, because you multiply that 100% extra CPU time by all of an application's users and only then you come to the real extra cost.

And if you want to pick on "application", think of the widely used libraries and how much any non optimization costs when they get into everything...

Re: The world could run on older hardware if software optimization was a priority

#66
post #29

Earlier quoted context omitted.

Except we've squandered that 1000x not on bounds checking but on countless layers of abstractions and inefficiency.

Am I taking crazy pills or are programs not nearly as slow as HN comments make them out to be? Almost everything loads instantly on my 2021 MacBook and 2020 iPhone. Every program is incredibly responsive. 5 year old mobile CPUs load modern SPA web apps with no problems. The only thing I can think of that’s slow is Autodesk Fusion starting up. Not really sure how they made that so bad but everything else seems super s…

People conflat the insanity of running a network cable through every application with the poor performance of their computers.

Re: The world could run on older hardware if software optimization was a priority

#67
post #12

I like to point out that since ~1980, computing power has increased about 1000X. If dynamic array bounds checking cost 5% (narrator: it is far less than that), and we turned it on everywhere, we could have computers that are just a mere 950X faster. If you went back in time to 1980 and offered the following choice: I'll give you a computer that runs 950X faster and doesn't have a huge class of memory safety vulnerabi…

I agree with the sentiment and analysis that most humans prefer short term gains over long term ones. One correction to your example, though. Dynamic bounds checking does not solve security. And we do not know of a way to solve security. So, the gains are not as crisp as you are making them seem.

Re: The world could run on older hardware if software optimization was a priority

#68
post #29

Earlier quoted context omitted.

Except we've squandered that 1000x not on bounds checking but on countless layers of abstractions and inefficiency.

Am I taking crazy pills or are programs not nearly as slow as HN comments make them out to be? Almost everything loads instantly on my 2021 MacBook and 2020 iPhone. Every program is incredibly responsive. 5 year old mobile CPUs load modern SPA web apps with no problems. The only thing I can think of that’s slow is Autodesk Fusion starting up. Not really sure how they made that so bad but everything else seems super s…

I think it's a very theoretical argument: we could of course theoretically make everything even faster. It's nowhere near the most optimal use of the available hardware. All we'd have to give up is squishy hard-to-measure things like "feature sets" and "engineering velocity."

Re: The world could run on older hardware if software optimization was a priority

#69
post #35

Earlier quoted context omitted.

There's servers and there's all of the rest of consumer hardware. I need to buy a new phone every few years simply because the manufacturer refuses to update it. Or they add progressively more computationally expensive effects that makes my old hardware crawl. Or the software I use only supports 2 old version of macOS. Or Microsoft decides that your brand new cpu is no good for win 11 because it's lacking a TPM. Or g…

But Carmack is clearly talking about servers here. That is my problem -- the main audience is going to read this and think about personal compute. All those situations you describe are also a choice made so that companies can make sales.

It shows up in different ways, and I agree that some of my examples are planned obsolescence.

I'm not so sure they're that different though. I do think that in the end most boil down to the same problem: no emphasis or care about performance.

Picking a programming paradigm that all but incentivizes N+1 selects is stupid. An N+1 select is not an I/O problem, it's a design problem.

Re: The world could run on older hardware if software optimization was a priority

#70
post #5

Unfortunately, bloated software passes the costs to the customer and it's hard to evaluate the loss. Except your browser taking 180% of available ram maybe. By the way, the world could also have some bug free software, if anyone could afford to pay for it.

What cost? The hardware is dirt cheap. Programmers aren't cheap. The value of being able to use cheap software on cheap hardware is basically not having to spend a lot of time optimizing things. Time is the one thing that isn't cheap here. So there's a value in shipping something slightly sub optimal sooner rather than something better later. > Except your browser taking 180% of available ram maybe. For most business…

Your whole reply is focused at business level but not everybody can afford 32GB of RAM just to have a smooth experience on a web browser.
Post reply on HN