“Community: a group of people living in the same place or having a particular characteristic in common.”
It’s a fission reaction! If we consider the whole world as a giant community and start dividing it into subgroups, there would be millions of little groups. Some call it diversity, and some call it poles. Whatever it is, we live in some kind of community, knowingly or unknowingly.
Some communities we choose deliberately because they pique our interest, and some of them are just inevitable. But speaking of the communities that we decide to join, there will always be a reason derived from a sense of adventure, comfort, experience, influence and so on.
Today I’m going to share some thoughts related to tech communities. So buckle up and read along.
Which Community Should I Join
This is a common question that any newbie would ask before joining any community. Eventually, whatever the community they join, there is a strong possibility that they can get carried away within the echo chamber and find solace.
But seriously, which one is the best? To answer this question, there are two ways. One, I can be a polite/neutral/corporate/diplomatic blogger, quoting a bunch of studies and defining pros and cons, and get an A+. Second, I can try to answer that question based on experience in the most pragmatic way possible. I’ll go with the latter.
Whether it’s a hobbyist/open-source tech community or a professional/corporate community, there is no straight way to determine which is the best. Everything’s a perspective, and tech communities aren’t the holy grail.
If you are a total newbie who’s reading this blog and thinks that there’ll only be a flow of knowledge in these groups, you might be disappointed when you join one. Because whatever the geekery we do, at the end we are all humans, and there’ll be politics, ego issues, and disagreements more often than in any other community. The scale might be different and depend on many factors.
Any tech community one joins will always have some sort of influence from the internet or a suggestion from a friend. Due to the ubiquitous nature of the Internet and the people around it, the best community that one joins will always have other influences and distractions.
In the midst of all this chaos, as a newbie and a smart kid, you might think that siding with the one who talks technical would be the best choice for getting career advice, mentorship, or other goals. Well, be cordial and patient; you’ll get what you need, but let me warn you: don’t get subsumed by them and become them. They are neither gods nor demigods; they are just humans with their own biases and experiences, just like you and me.
Bottom line: “A community is always biased, and that’s the reason it got created in the first place. ‘The best’ is just a perspective; people make communities, and the ascendency or downfall depends solely on them.”
Should I Even Join A Community
The short answer is yes. Open source was inevitable (more on that in the next article), and it’s one of the best ways to do software. Even if it’s not an open source project and you want to work on some proprietary technology within your organisation, study groups and community building are important. The reason is pretty simple: even if you are a master coder, you cannot do everything.
The tech industry is a wild west, and no one is master of everything, but everyone is or tries to be master at something. So without community, it’s going to be hard. If you try to do everything, everywhere, and all at once, it’ll result in unfinished projects, an unstable career path, and unbearable frustration.
What’s The Right Path
The right path is seldom easy but rewarding. A simple thumb rule is to put all your eggs in the same basket, quite contrary to the famous idiom. It’s good to randomly join a few communities to test the waters, but once you feel motivated and comfortable with your craft, dedicate a significant amount of time to a particular community to learn, grow, and lead.
A few paragraphs ago, I mentioned getting subsumed into an echo chamber. Let me explain that in a bit more detail. Don’t badmouth other programming languages, don’t mock them, and don’t engage much with the people who compare them, or else you’ll get sucked into them.
Be proficient at what you are doing, be passionate about your community, and have a vision for the future. This helps you learn more about the technology that you are working on and find like-minded people who are equally passionate about the project and who are going to be your long-term friends.
Toxicity
Some people are generally toxic, and so are communities. Sometimes, situations become toxic, and sometimes all the stars align for a catastrophe. I chose to write this under a subheading because, when things are good, there’s no problem; when things are toxic, nothing’s good. As simple as that.
I’m not going to tell you on what parameters you should decide to stay in a community or not, because everyone’s background and experiences are different. Largely speaking, lack of respect, gaslighting, bashing in public, no work, no responsibility or accountability—but only politics—and targeted criticism are some red flags.
Dreamers Are The Best
Don’t stay long in a community if you feel that people are not passionate enough or that there’s no one smarter than you. Leave the community if you find out; people are more busy blowing their own trumpets and talking less about the project goal. Just come out of it if you find out someone less powerful is being attacked and the majority of them support that act. Never ever stay long in a community where people can jump straight into conversations without context, quarrel, and gang up to beat someone. And groupism is a big no-no; it’s irrational and senseless. Only be with dreamers—people who are open to change, flexible, rational, and visionaries.
Too Much Is Too Bad
Some communities are so big or eventually become big that they are really hard to manage. If you are a newbie, you might find it hard to communicate, so my best piece of advice is to never give up and always be curious about learning. If you find that a community has all the good things that I mentioned above and less toxicity, stick to that, try to contribute, and never shy away from asking for help. But on the other hand, if you feel that it’s overcrowded or overwhelmingly large and only a few run the show, it’s time to work hard to climb up the ladder or join or figure out a less crowded echo chamber.
Another aspect of this is unnecessarily joining countless communities in the hope that you are going to engage with everyone and gain extraordinary knowledge. Well, if you really want to determine if that’s the truth, just check your GitHub contributions, blog posts, or projects that you’ve made in the past month. I hope you’ll get the answer. This is something that I’m prone to as well. Incessant group messages or emails could be tiring. If you want to save some space and want mental peace, avoid this trap. There are a lot of choices, and everything is not your cup of tea!
Patience
Patience has become a life skill (even though it sounds exaggerated). You should have patience when someone is talking; you should have patience to listen, to think, and to execute. And remember, you might have the greatest idea, but it might not be viable for the project as a whole. With numerous advantages, there could be one drawback. That is, the project or the deliverables might be delayed, or the process might be slow. But overall, patience wins, maybe slowly but steadily; at the very least, it’s better than impatience!
Engagement
Ideally, engage when it’s absolutely necessary, but lately it’s not mandatory. Communities these days have meme channels or off-topic channels where you can waste your time if you want. But engagement in one way or another is crucial for the development and growth of the community. But again, too much is too bad; don’t consume something so much that you cannot breathe or feel disgust at some point in time.
End notes
Without communities, perhaps technology would not have grown at the pace that it has. The core principle of knowledge sharing has always helped humanity progress. And communities have played a vital role in all this. Maybe it was out of curiosity, passion, or to avoid boredom; whatever the reason, communities have contributed a lot to technology, especially software engineering, and they’ll continue to do so. Choose your card wisely.