I've noticed that singing stops me from daydreaming. I don't know what makes it effective, but it might be the same thing that makes talking to other people effective.
I think it'd be useful any time you're alone- the car maybe?- but I typically sing in the shower because it doesn't seem out of the ordinary to other people.