I == Community

A little consideration about the open-source community.

Mattia Tupone
The Reverse Angle
Published in
4 min readNov 12, 2018

--

Guys, we’re in 2018. Nowadays, most of the technologies we use in our production environments are open source software, let’s face it.

Yeah, open source! Did someone call Stallman yet?

But this won’t be an article about freedom, transparency and non-profit software. We’re not gonna talk about Arch, Micro$oft, or any Linux master race user common topic. We’re gonna talk about community, team working and about achieving a result, together.

As I said before, most of the current technologies are open source. This means you can view the source code to study, understand and perhaps contribute to it. What a great time to be alive! And this is happening right here, right now. Go and check yourself.

Where? This is happening right under our eyes.

From enterprise to indie environments, millions of developers every day rely and collaborate on source control systems, and this is awesome. Just choose your platform: VSTS, Github, Gitlab and many others.

Personally, I prefer working on Github. Everyone can interact on Github, it’s like the garden of Eden of collaboration. It’s what it is built for.

Have you found something wrong in the behavior of somebody’s code? Open an issue. Do you want to improve a codebase? Fork the repository, work on it and create a pull request. Everyone can collaborate.

Even if I’m focused on Git especially, these concepts apply to every source control system. It’s not a matter of commands like:

$ git add .
$ git status
$ git commit -m “F**k merge conflicts! Make SVN great again!!!”
$ git push

It’s a matter of collaboration, trust, teamwork, self-confidence, and philosophy. These are the keys to building better software and self-improvement. Wait, did I write “trust” and “self-confidence”? We were talking about collaboration, aborted merges, and open source!

Yes, trust. Open source is not as simple as it would seem. You have freedom, you have transparency, but you got to keep your codebase “clean”. Let’s say for example you create a pull request to one of my repositories. Does it really improve my code? Should I trust you and your code? Open source software is the most reliable, maintained and distributed software just because of its open nature. And this is why the community is so important, to keep things as they are. The community keeps code organized, clean, secure and rock-solid. This is also why I was talking about trust. You will never want to accept a pull request from some lines of code you don’t trust. Here is where self-confidence kicks in.

Are you ready to create a pull request? Are you brave enough to face the bearded ancients maintainers of the community? You have to be sure of what you’re doing before saying “Hey, I wrote a bunch of lines of code to mess up your codebase!”, because your code will be on somebody else repository and accessible to everyone.

This is the power of open source community. There are senior developers and junior newbies who constantly contribute to creating better software, but everyone is treated the same way. Harsh, but fair. This is what gives power to the community: will, passion and respect. And here is also where the magic happens: growth of both individuals and community, where people help each other in continuous improvement and healthy competition.

What? Stack Overflow? The biggest developers community ever?

Just look at it. You can surf Github or Stack Overflow to realize how big and constantly growing the community is. But now imagine there’s no community. Usually, when you have a problem you just google it, and most the times you won’t go at the second page of results (well, if so, you’re in big troubles, my friend). That’s why the community is important. From the development stage to fix a problem in a production environment, the community saves you. If you join actively the community, you will probably save somebody else! Again, this is why community and collaboration are so important.

And if you gaze long into the community, the community also gazes into you…

Truth is, open-sourcing is fundamental for modern software development. Take a look at Google, VMware, Redis or even Microsoft, they are all working on Github with open source codebases (not for every project of course). They are all counting on the community, and at this point, you should be able to figure out why. A powerful army of passionate and skilled developers all coding in the name of one thing: improvement.

Here’s why I love this community, why I love open source and why it is so important to keep it growing and improving. Collaboration is the key to success, and knowledge isn’t made to be closed inside a small circle of minds. Instead, it has to be open sourced exactly as code, and this is what the community does. Sharing is what knowledge is made-for. Sharing is what makes you (us) grow, and sometimes open source community is aka family.

--

--