Developer experiences from the trenches
Thu 29 May 2025 by Michael Labbe
tags product
Many human-computer experiences are based on qualities that are challenging to achieve: cool, light, fast to boot, responsive. It is important to know when to invest in optimizations that deliver these results in meaningful quantities, and when to choose other priorities.
Common knowledge presumes that these qualities improve experiences linearly, but to put it simply: they do not. Human-computer interactions have soft thresholds that map to limits within human physiology. In some human-computer interactions, there are laws such as Fitts’s Law, derived from experimental studies that back an important intuition: thresholds exist in human perception and motor performance.
This has numerous implications for where optimizing engineers should prioritize time on a computer product to achieve the best human experiences and define the product’s position in the marketplace.
I am going to suggest some time durations as I lay out these implications. These are based on my own intuition and experience.
Compile times that exceed roughly 20 seconds prompt the programmer to do something else like read Reddit. This evicts your working memory and results in an absolute productivity cliff.
Framerate and input responsiveness in FPS aiming: related to Fitts’s Law for pointing in two dimensions — aiming benefits from higher framerates. Each multiple of 30 up to 120 has benefits, with 60 being a greatly impactful improvement over 30, but 120 being not much better than 90 fps.
Battery life: “all day” battery life (a guaranteed 8+ hours) means leaving the charger at home and not even needing to think about battery management during the day. An all-day battery may be 200g heavier, but would save a laptop user from carrying a 400g charger. For many users, only hitting seven hours means carrying a charger, whereas eight would not. This crosses a threshold.
Game content creation tool response times affect how much effort the user makes to achieve an intended result. For instance, perfecting environment lighting is a highly iterative process. How many iterations an author is willing to make appears to be bounded by response times:
There are numerous examples with varying rigour, such as the 400 millisecond Doherty threshold, but I would encourage you to experience as much of these directly as you can. As this is a qualitative matter, lean on your own intuition and judgment to draw your own conclusions where possible.
Because human-computer experiences are thresholded, not all optimizations are valued the same. Ask yourself:
You can cross a human-computer experience threshold by choosing which experience to optimize for, thereby building meaningful gains into your product. This can produce superlinear productivity gains, or even just plain enjoyment.
Page 1 / 1