Monday, January 3, 2011

RIF Notes #1

"If it is fast and ugly, they will use it and curse you; if it is slow, they will not use it." -David Cheriton in _The Art of Computer Systems Performance Analysis

“The basic advice regarding response times has been about the same for thirty years [Miller 1968; Card et al. 1991]:
•0.1 second is about the limit for having the user feel that the system is reacting instantaneously, meaning that no special feedback is necessary except to display the result.
•1.0 second is about the limit for the user's flow of thought to stay uninterrupted, even though the user will notice the delay. Normally, no special feedback is necessary during delays of more than 0.1 but less than 1.0 second, but the user does lose the feeling of operating directly on the data.
•10 seconds is about the limit for keeping the user's attention focused on the dialogue. For longer delays, users will want to perform other tasks while waiting for the computer to finish, so they should be given feedback indicating when the computer expects to be done. Feedback during the delay is especially important if the response time is likely to be highly variable, since users will then not know what to expect.
“ - Jakob Nielsen

“Whatsoever I've feared has come to life, And whatsoever I've fought off became my life”


  1. Thanks for the post Jason. Very helpful. This was one of my favorites this year:

  2. There's only one part of that post that matters "you don't need to reason about it unless you are writing unsafe code or doing some sort of heavy interoperating with unmanaged code". After that I could shut of my brain from trying to understand the rest of it.

  3. Yeah, I don't purport to understand it all, but I like to try. I've been scratching at a lot of abstractions lately trying to get to the metal. And I always wanted to get to the bottom of the interview question "Why would you use a struct".