Let's talk about hazing.
What is hazing? Well, as a former college athlete (and team captain who was forced to attend a workshop on the matter), I could tell you more than you or I ever wanted to know. Though it has been infamized by athletics in recent years, hazing exists in all walks of life. It's purpose, at least theoretically, is to introduce a new member or members to an existing group, and also, and perhaps more importantly, test their ability to join the group. Does making a new frat brother chuck a gallon of water really achieve that? No. But that's a conversation for another time.
Note: I do not in any way condone any/all hazing activities that go on in college, or any other venue really, that are harmful or hurtful.
So why is this relevant to software engineering?
As with many of my posts, this one stems from an interesting conversation I found myself in about a week ago. I was talking to a (male) programmer about hacking culture, and he started the conversation by discussing how hacking is FILLED with hazing. I quickly agreed, without thinking too much of it. And then I stopped...
Wait a minute. Of. Course. It. Is!
Male programmers test, badger, cajole, and downright come to blows with each other ALL THE TIME. They test each other's programming chops, they badger each other over languages, programming ideologies, code format, etc - and honestly, this constant competition is an important part of what creates great code. Constantly being questioned, challenged, etc, can lead to thinking about a problem a new way and innovating a completely revolutionary solution. Where this "hazing culture" breaks down is when a female programmer enters the equation.
"But I can't hit a girl."
While men will test, bother, and argue with each other all day long, there is a complete unwillingness to include women in this process. My guess (and correct me if I'm wrong, guys), is that this is an extension of the whole "I can't hit a girl" philosophy that starts on the playground. While in a literal sense this is a very good rule (a. very. good. rule.), in this particular case, it's misapplied and in fact detrimental.
Here's why: If men are unwilling to treat female programmers in the same way they treat each other - aka badger us, give us grief, question us - we are never really invited to participate because we can never prove our worth. And if we can't prove our worth and aren't in the game? Well, no one ever got any practice or won any metals sitting on the sidelines.
So men, don't be afraid to test a female programmer in the same way you'd test a man. If you think my code is shit, tell me my code is shit! If you think my choice of programming languages is stupid, hassle me about it. Think you can code better or faster than I can? Let's have a pissing match! I won't break, I promise, and I'm not afraid to get my hands dirty! In fact, I'd prefer it. Because that's when the best things happen.