This reminds me of a weird phenomenon I've observed where users seem to have a better opinion of "slower" software. If certain, ostensibly complex operations like generating an output or saving a record take longer in one application than another, the first app is assumed to be "doing more" or "creating better results".
And I've noticed that I'm not immune to it myself. I sometimes catch myself wondering "what am I not doing right?" when I've made a thing that is perceptively instant compared to a competitor taking 5 to 10 seconds to do the same thing.
Indeed, it seems to contradict the studies that companies like Amazon have done to show that "every 300ms of latency leads to X% of users bouncing out." I've only seen people complain about the most egregious of performance issues. People seem to have been trained to expect software to be slow and have come up with an ex post facto rationalization for why that is the case.
It's particularly frustrating because I've only ever worked on small teams, which already receive a lot of bias of the form, "what could a handful of people do compared to the might of FAANG?” When often the reality is that the organizational structure of large corporations frequently leads to the lack of cooperation necessary to make quality software.
I think a likely culprit might be the massive amounts of logging that I don't do, either of user or system activity. When using tools like Logcat to try to debug issues on-device, I notice hundreds of log entries being recorded per second from all corners of different apps and system layers before I finally re-learn how to use the arcane filtering system to get to the stuff from only my app. And that's just system level logging. Throw on top all the Google Analytics stuff some apps do for every click, every page transition, every single thing a user could do, and I suspect it adds up to quite a bit of UI latency, network bandwidth saturation (some ostensibly simple sites become unusable on bad network connections while my own apps seem barely affected), and energy usage.
> This reminds me of a weird phenomenon I've observed where users seem to have a better opinion of "slower" software. If certain, ostensibly complex operations like generating an output or saving a record take longer in one application than another, the first app is assumed to be "doing more" or "creating better results".
I'd speculate that this has more to do with a lack of feedback in the UI than anything.
I observed this phenomenon for myself these days when using igzip. Depending on the file, it can be up to 2-5x faster than gzip for decompressing files even though neither is multi-threaded. I had to compute a checksum on the decompressed file and compare it the output of gzip to be sure that the fast output is the same as the slow output.
And I've noticed that I'm not immune to it myself. I sometimes catch myself wondering "what am I not doing right?" when I've made a thing that is perceptively instant compared to a competitor taking 5 to 10 seconds to do the same thing.
Indeed, it seems to contradict the studies that companies like Amazon have done to show that "every 300ms of latency leads to X% of users bouncing out." I've only seen people complain about the most egregious of performance issues. People seem to have been trained to expect software to be slow and have come up with an ex post facto rationalization for why that is the case.
It's particularly frustrating because I've only ever worked on small teams, which already receive a lot of bias of the form, "what could a handful of people do compared to the might of FAANG?” When often the reality is that the organizational structure of large corporations frequently leads to the lack of cooperation necessary to make quality software.
I think a likely culprit might be the massive amounts of logging that I don't do, either of user or system activity. When using tools like Logcat to try to debug issues on-device, I notice hundreds of log entries being recorded per second from all corners of different apps and system layers before I finally re-learn how to use the arcane filtering system to get to the stuff from only my app. And that's just system level logging. Throw on top all the Google Analytics stuff some apps do for every click, every page transition, every single thing a user could do, and I suspect it adds up to quite a bit of UI latency, network bandwidth saturation (some ostensibly simple sites become unusable on bad network connections while my own apps seem barely affected), and energy usage.