Here is what I learned when I experienced this “Nerd Culture” (read "Why nerd culture must die”):
- At first I thought I should adapt to it, I should learn to handle it. After reading the article I realized how wrong I was. I shouldn’t adapt to it, I should have stopped it! Doesn’t matter if you are part of the cleaning staff or if you are a Senior or a Junior programmer, you shouldn’t let anybody walk over you with harsh words and comments about your work or even questioning it with comments like “You don’t take your work seriously, do you?”
- It is not wrong or bad to give feedback or to let your colleague know they did something wrong, the challenge is only how you say it. Giving feedback from a position of anger or in an arrogant way doesn’t work. Learning how to give constructive feedback is important.
- There is no “… but I understand his/her frustration” or “we should hire more strong and opinionated people to ballance”. This is the same as: “we support the asshole culture”. Whoever is toxic to the team culture should be told that their behavior is not allowed or accepted and then they have an opportunity to change. Rather than having the rest of the team learning how to handle it, the mis-behavior should stop.
- There is no “my code, my project” or “my way of doing things”, there is the team’s code and project or the team’s way of doing things.
- Everybody is allowed to make mistakes. In my experience, when I faced this problem, nobody was allowed to make mistakes except (interestingly) the aggressive person on the team. Everybody would get yelled at by that person for mistakes but nobody would return the “favor”.
- There is no “…but he/she is often right” or “…but she/he is a brilliant/excelent programmer” or “let him/her be him/her”. Nobody is allowed to be an “asshole” just because he/she is good at what she/he does. This just ensures one thing: you will have a team of gods and rockstars. Good luck dealing with them.
- There is no fun in working with people like that. I got to the point where I was afraid of talking to some of my team members or even to push code to the git repository because I was afraid of what I would hear about it. The anxiety and fear took over any fun I had before. I didn’t even want to sit with some of them in the same room.
- The same way anyone can learn a new programming language, everybody can learn new habits and good behavior.
- Being an “asshole” doesn’t mean being a bad person. This is so clear to me now. I know some “assholes” that are awesome to hang out with, to have around to drink a beer, but I would be afraid of working with them, because the moment you start discussing technical point of views or ways of working...
- “Asshole” behavior does more damage than good. Doesn’t matter if she/he seems to be very zealous for her/his work. Too much zeal makes you sound like a kid, who has its toy and nobody else is allowed to play with it, because it can get damaged and broken or just because the kid doesn’t feel comfortable with it. The end result isn’t good, neither for the team, the person nor the product — if only for the bus factor of 1.
Why this blog post?
If I had realized these points before I think could have done something about it, but I didn’t. That is why I wrote this and I am sharing it. I hope it can save somebody else the trouble of having to find out by themselves.
Note that my experience was not about sexism, even though I’m a girl and sexism is rampant in the tech sector. This could have happened to anyone, at any company and at any team. And it DOES happen.
This is also not to point fingers or to complain “poor me! why God?”, because I’ve learned a lot with this experience. Next time it happens I will know how to handle it and I will remember that is not my fault.
Is there a solution for it?
I also wish that “nuking nerd culture from space” could happen. But until that happens - we have to be willing to change and act towards it.
It will take time but self awareness and listening to others is the first step. Think about how you can improve, talk to your manager and colleagues, ask for feedback. That should help to get a realistic point of view about yourself.
Support and work for a diverse and peaceful work  environment. After all, you probably spend more time with colleagues than with your own family!