It's a good day when I get to chat with a dev about code: what they are working on, and what's exciting them at the moment. Honestly, it is rare for me to meet a developer who I will not love chatting with. There will always be common ground.
Open up Twitter, Stackoverflow, or any dev forum really. Have a little scroll, and it will not take you long at all to find developers being unpleasant to each other. The unpleasantness can generally be distilled down to one key theme; shaming one another for not working in a prescribed way.
The endemic rot of shame is perpetuated throughout the industry. Prevalent dev publications seem to fan the flames with their style of journalism, and there are powerful developers on Twitter with a lot of followers who seem to do the same.
It is exhausting to read, and the thing is that it is so commonplace that it is essentially completely normalised.
It takes a certain kind of person to be a developer, and one of those things is the ability to eat a lot of s**t from other developers. I genuinely believe it is one of the key reasons we have trouble attracting women and minority groups to the field. People who are already nervous and perhaps feeling a little vulnerable putting themselves out there can be put off the industry for good.
This culture seeps from the internet into the offices and dev rooms of the world, infecting all those it touches. Even the nicest people who would never dream of shaming someone publicly on the street will soon drop WTFs as they review somebodies code, and so the cycle continues.
Don't get me wrong. I am all for setting standards within teams of developers who agree to them amongst themselves. This is fundamental to a successful dev team, but if somebody fails to meet these standards, they need to be nurtured, not belittled.
It makes people scared to put themselves out there and make mistakes. If people are scared of making mistakes, they will not take risks and will not innovate. It is stifling.
There will always be good ways to do things and terrible ways to do things, and developers will always disagree about what they are. But before you start hammering out shame laden response to some code you do not like, please ask yourself. Could I be a little kinder about this?
Collectively we must do better.