My rule of thumb:

When coming from the gutter (meaning, the left edge of the screen), use tabs.
When I've already got something that isn't a tab on a line, use spaces.
When lining up with code on an above line, use spaces as soon as the above line has a non-tab character.

Or, more succinctly: use tabs only for indentation.

Following these rules allows my code to look the same for everyone.  I wish people would stop arguing about tabs and spaces and IDEs would just implement the above rules.  Everyone would be happy.

Oh well, don't want to start a debate.  Everyone has their own way.  But it won't look right on GitHub (or for hrydgard, who uses 2 space tabs) if you line things up with tabs set at 4 column intervals.

-[Unknown]