I would have to say that one of my biggest pet peeves in programming is when I use a text editor or an IDE that defaults to inserting "tabs" by inserting a certain number of spaces, instead of inserting an actual tab character. It is incredibly annoying.

Why? Because I tend to switch between editors, computers, and OS's quite often. I could be programming on my Windows XP machine at home using either Visual Studio, SciTE, or Code::Blocks, and then later that same day I could be on campus using a Linux machine using and using Kate as my editor...all while editing the same program or application.

It is annoying to switch between two different editors, and to have to account for how those editors insert their tabs! For example, Visual Studio, SciTE, and Code::Blocks ALL insert some random amount of spaces instead of actual tab characters. You can specify in the IDE's settings to have it insert tab characters instead...but usually you are too late. Usually you have already coded some amount of code before you remember to turn on that setting. Often times you have to turn on that setting EACH time you open the IDE (like with SciTE)...which is really annoying...I believe it is the same with Code::Blocks as well.

So then...going from SciTE or Code::Blocks, which insert spaces, I move over to a Linux machine and open up Kate, and it inserts tabs instead! Of course now all the indentation is going to be off, because half of the code was done using one editor, and the other half using the other editor...and so the code looks like a complete mess now!

If all editors would just insert tab characters instead of their own pre-defined amount of spaces, it would make life so much easier. You could open your code in any editor, and the indentation would all be the same. It would be nice, neat, and organized.

Go tab characters! Why on earth do so many editors default to using spaces?