3 ms·
While my hardware isn't that old or that low-powered, I strongly agree with the sentiment that software developers are notorious for under-appreciating the impo
by bhauer 8y ago
While my hardware isn't that old or that low-powered, I strongly agree with the sentiment that software developers are notorious for under-appreciating the importance of performance. One of our luminaries once opined about optimization in such a way that some of us incorrectly think performance optimization is something we should de-prioritize. Knuth's commentary has value, but he is not a deity and his advice left us with an ambiguous notion that you must know when to optimize and, for many pieces of software, optimization ends up never happening or happening far too late, yielding a bad user experience. His advice should be framed not as when to optimize, but how: profile, focus on low-hanging fruit that yields the maximum performance benefits first, and only as needed dig into the lesser bottlenecks.
Despite this confusion about when and how to focus on performance, many of us instinctively know software is, in the large, too slow. Microsoft Office, a slew of web sites and web apps, music players, most Electron apps, etc. As developers, we sometimes get clever and use animation to hide slowness (or, pathologically to mistakenly add slowness). As the OP mentions, some of these apps end up with "good enough" performance on high-end hardware, but that "good enough" isn't in fact good enough.