The Right Way
It’s a word that a lot of people like to throw around as something they believe in. It’s a fuzzy word that makes humans feel warm and fuzzy inside. It is a way for a group of individuals to co-exist in a space of shared values.
Communities are useful, they unite us. They define a common goal or purpose. They often define social norms. They create entry points for newcomers to become familiar with any given subject of interest.
Communities are dangerous. They divide us. They create biases, power structures, pride.
In almost every programming related community, there will be an idea of what it means to be right. Quite often it will be defined by the local status quo. It will be amplified by the leaders of the community.
This sense of righteousness becomes present in the members of the community. It becomes a part of their identity. And by virtue of being right, there is a form of arrogance that may not always be apparent, especially from within. It exists nevertheless.
Being Right becomes a matter of Not Being Wrong. Because we all know who is wrong: The Others are.
We are never right
The Only Sure Thing in Computer Science is :
Everything is a tradeoff.
Being right is a myth. It implies absolutes. It implies having a grasp on computation, which frankly, has not been achieved yet by humanity.
One of the reasons we may be attracted to absolutist answers is that they are convenient. It’s so much easier to ignore the messiness of reality and follow a Few Simple Rules.
Just Practice TDD. Just Use OOP. Just Follow This Coding Standard. Just Use This Framework. Just Use This Library. Just Use This Tool.
These simple absolute truths are very seductive. But so is Fox News . Err, I mean Hacker News.
Let’s be wrong
Being right is playing it safe. Being right is not challenging yourself. Being right is not trying new things.
Try new things. And while you’re at it, try some old things too. Dig in the past. Look around you. Look at other languages, what approaches are they taking?
Challenge authority. Just because someone is loud and has 20K twitter followers does not mean they cannot be challenged.
Most of all, experiment. Make mistakes. Talk about them.
If more of us start treating programming as an art form, our communities will become more colourful, diverse and awesome as a result.