Evan Martin (evan) wrote in evan_tech,
Evan Martin

latency and predictive interfaces

It's well known that computers are generally "fast enough", at least in terms of throughput, but what I care about more as a user is latency. Latency is hard to eliminate: if clicking a button really does require a bunch of computation (like sorting a list), then you can optimize the algorithm to a certain point and then you're stuck.

Two thoughts on the subject:
  1. Does anybody measure interface latency on native apps? For Ajax apps people put a lot of effort into measuring latency, because it's typically much higher there. But native app latency matters too, and it feels like it's been increasing. See Glen's notes on trying to switch to OS X -- as I commented there, it would seem to me there's probably a window of time where your brain interprets "key press here + visual change there = CAUSALITY" at a very low-level way.
  2. How could you bring latency even lower? Start the computation before the user clicks! If you precompute the result of the most likely actions, then invoking that action can happen nearly instantaneously. This really depends on how much IO is involved, of course, and maybe most latent actions involve IO. But when I'm grumpy about latency, it's for stuff where the IO overhead isn't significant: like running "ls" in a directory right after I "cd" into it, or clicking "compose new mail" in an email client.

  • blog moved

    As described elsewhere, I've quit LiveJournal. If you're interested in my continuing posts, you should look at one of these (each contains feed…

  • dremel

    They published a paper on Dremel, my favorite previously-unpublished tool from the Google toolchest. Greg Linden discusses it: "[...] it is capable…

  • treemaps

    I finally wrote up my recent adventures in treemapping, complete with nifty clickable visualizations.

  • Post a new comment


    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.