Re: Hey, did you know the editor could do that automatically?
crappy-looking K&R code
As a non-programmer I'd be interested to hear how you code Kidnap & Ransom (which is what K&R means in my more security focused world).
PS: only kidding, I haz Google :).
Joking aside and more on topic, there's a difference between code and intent. I use tabs because it signals an alignment decision to my editor (yes, even non-programmers occasionally have to hack code).
It depends on editor and environment if that is converted into spaces, but you are in effect having the same debate that you have when people use a word processor and manually format whole documents instead of using styles which sets the scene for a LOT of extra work afterwards if someone makes a design or layout change (slight aside: IMHO, an introduction to styles and their use ought to be mandatory before people are ever allowed near a word processor, especially if they write more than a single page).
With tabs, I can change how they are represented. When I DID write code in the days of ZX80, Turbo Pascal and Paradox Application Language, indentations were two spaces because 40 or 80 columns is not a great deal of space to work with, and otherwise a printout would suck.
Now an indentation is 3, 4 or even 8 spaces provided you translate into characters, but if you want to change that you have a problem with hard spaces as you have in effect the manual formatting as mentioned before. With tabs it's a matter of changing what they represent (their "style") and voilà, your new formatting awaits.
So I'd venture that tabs are more efficient, not just because of the savings in keystrokes but also in increased flexibility. That's my personal view and experience, but, as I mentioned, I stopped coding around the time people started with object oriented and event based coding so there may well be better arguments out there. I'll be reading a lot, I reckon :)