I used to use tabs. I still do, but have vi expand them to 4 spaces. Because a guy I was working with liked Emacs, and he was using 4 space tabs too, but my real, saved tabs looked like 8 in Emacs.
Of course if you want to be green (all the rage these days, until the taxes kick in), a tab takes 1 byte, and spaces take as many as you've defined tabs to be, so you're using extra disk space w/o tabs. And when you fill disk, you need another one = more power. When you read file, you have to read more bytes = more CPU, more physical memory, more energy usage. Then again, expanding tabs takes CPU power too...
Oh, woe is me. Nah, really I could care less.
A more fundamental issue is the one of how a function opening should be declared. Old hands will tell you that you put the function return type on one line, and the function name on the next (in column 1). Because that makes it real easy to find the function declaration vs. a mere invocation of the function. But so many people use these fancy programming environments that they don't care. Many of them don't even know how to use a decent text editor. They think nedit is state-of-the-art, when in fact nedit is about as powerful as M$'s notepad.
And they are helpless without the aid of really bad colors showing them what's a string, what's a function, etc.
As a vi aficionado, it irritates me that the latest vim has stupid features to cater to the lowest common denominator. Auto comment continuation is OK, but why make that the default? Colors are OK (not for me), but make that an option they have to turn on if they need that kind of hand-holding. I'm about ready to return to nvi or the original ATT vi to get away from the bloat-ware that vim is becoming.
I have seen young people use they up-arrow key 15 times to find a previous command that was 5 characters in length. Like retyping a command is hard. Or using the search feature inherent in every command line shell (other than anything from M$).
Sigh. I guess I am getting old and cranky.