← Back to context

Comment by maccard

1 month ago

> I think to put this to bed, we need to establish a baseline or at least a list of applications to launch while screen recording, and then literally count frames. It would be funny if this was all perception and it wasn't actually "slow", that is, "seconds to load" is actually like 2 seconds, and not 12...

2 seconds is an eternity. Its 15 round trips from London to New York, 5-8GB read from an NVMe drive, and 7 billion cpu cycles per core - with even the cheapest devices on the market having multiple cores. There’s no really any excuse for things being that slow.

Also I think that this idea that the only number that matters is the synthetic exact frame count from interaction to window for a specific list of operations is how we ended up in the scenario where windows explorer takes over a second to show the window on modern OS’s despite multiple orders of magnitude more computing power being available. Nobody really cares about what the actual performance of the running system is, as long as the exact part they’re responsible for doesn’t trip an alert.

A few years ago I worked on a project for a batch operation that was done a few hundred times a day. It took 15 minutes to run and it was starting to get in the way of things. Another team had hired 2 engineers to spin up kafka and a k8s cluster to queue these operations up, along with a reporting dashboard and metrics for queue length etc.

I ran the code through a profiler and found a hotspot on shutdown where we were searching through an array millions of times to remove a single entry, repeatedly, until the array was finished. I replaced it with a set lookup in reverse, and changed a handful of places where we rebuilt this massive array and did the same thing to use the same data structure and it dropped to under 15 seconds with about a weeks work. I identified enough other wins that would bring it under a second that would negate the need for the entire other project to exist, but it had already been approved and budget allocated for it, so last I heard they’re still taking 15 seconds and spending hundreds of thousands a month on this absolutely gargantuan monitoring system that they don’t need.

In both cases, IMO, a vision holder of “this isn’t good enough” using the product in their own device at home is what’s needed