We're going to have to start making changes or the adults will do it for us
Tabs vs spaces? Unfortunately there are deeper, uglier issues facing IT
Sysadmin Blog Gentlemen of IT, I think it's time we talked. I hate people who use spaces to indent their code instead of tabs. I don't mildly dislike them. I am not uncomfortable or annoyed by them. I hate them. A goodly number of you have some technical pet peeve that is similar, and that's a huge part of what's wrong with IT.
This is not uncommon. We fight ridiculous holy wars about the stupidest things. We hold grudges – sometimes for decades – because some other person, who we know only by a screen name, likes a different operating system or even a different text editor than we do.
It's insane. It's childish. It creates hostile working environments and to put not too fine a point on it, this is a huge part of why all but the most stubborn of the womenfolk refuse to work with us. I don't know the reasons why other people act this way. After a reasonable amount of soul-searching, I do know why I act this way.
I was bullied as a child. I was too tall, too fat, too slow, too awkward. I liked starships and things that go "whoosh". I didn't care about cars, but found geology and medicine absolutely fascinating. I was nearly everything that it was not OK to be and nobody ever really taught me how to cope with that.
Decades later I'm still too fat, too slow and too awkward. I still like starships and things that go "whoosh". I'm still weird and like science and I still don't fit in everywhere. If I have an opinion – any opinion – fleventy-five trolls will hop out of cyberspace and attack me for it, but having lived my life online all this time all my friends are in the computer.
I went into computers not because I liked them, but because I was "good at fixing them". I wanted to study geology, but despite what my father will tell you, I was used to doing what I was told.
Month after month, year after year, people were mean to me, pushed me around, took advantage of me, and I didn't know how to make them stop. To be perfectly honest, I still don't know how. People tell me I'm a grown-up, and culture tells me that I should have answers to all of this. I still flail about regularly not having a clue what I'm about and feeling the need for an adult.
Computers are different. As long as I avoid Windows, computers do what I tell them to and they don't try to use emotional or psychological judo in order to get me to do something I don't actually want to do. This, I realise, is why they're such an easy catalyst for anger.
Whether it is using the things for writing, or fixing someone else's, computers are how I earn my living. I set up my stuff so that it works for me. If it doesn't work for me, the bills don't get paid. The pets starve. Life goes to hell.
When someone trips along with a new way of doing things my first instinct is fear. Technological evangelism means someone thinks something they are doing is better, and a lifetime's worth of experiences say that they won't express that in an open, welcoming way. Derision, shame, scorn, mocking and an attempt to build a consensus to ostracise those who do things differently are far, far more likely social tools.
In other words: bullying. That thing I still don't really know how to deal with, and where my entire lifetime's worth of conditioning is... unhelpful.
When there is a particularly strong disconnect, things go from bad to worse. When reading code, I find tabs work well in my preferred IDEs. I find code more legible. And, to be perfectly honest, my brain just can't seem to mentally carry alignments in space-indented code. I can't read it.
Put me in a room with a space-indenting evangelist and it will descend into a shouting match. This isn't because I want to push my tab-indenting ways on him, but because I am viscerally terrified that, somehow, he will force his space-indenting ways on me.
I get defensive, lash out, and contribute to this cycle of insanity because under it all I'm still that 13-year-old kid who got stuffed in a locker because he tried to defend a girl he liked from a pair of bullies who, in hindsight, were every bit as insecure and scared as me.
I can be intellectually aware of all of the above and still be completely unable to change my behaviours. I want to change. I am trying to change. I hope, a piece at a time, I am changing.
It's hard to uncouple fear, insecurity and hate. It's harder still when talking about these things is "unmanly", "just not done" and makes you a lightning rod for every sociopath and jerk with something to prove.
But this isn't just "touchy-feely" stuff. The very nature of our industry is changing. Screw-ups in IT cost privacy, livelihoods and even lives. One way or another a diversity of thought, opinion and approaches will be forced on us, because our society can no longer function where the traditional nerderati operate in a vacuum.
If IT can no longer be a refuge for the socially maladjusted, the bullied, the insecure and the fearful then those of us who retreated here are faced with two choices: learn to conquer our demons or find another profession in which we can hide from the world.
How we react to this change forced upon us will determine whether or not we screw up another generation of people by ourselves being horrible to them. What we've done collectively demonstrably isn't working, and if we don't own this problem the adults will choose a solution for us. One we almost certainly won't like.
I have no magical solutions to how to grow up into the kind, compassionate, patient and resourceful adults we were supposed to be. I don't know how to quell those defensive reflexes. I do know that the long road towards not being a dick starts with admitting that at least part of the problem is ourselves. I sincerely hope that, individually and collectively, we have whatever it takes to do so.