Why I write open-source code
Recently, I have joined the development team of Citizens, a widely-used server mod for Minecraft. The code for Citizens is open-source, meaning that anyone can view it, fork it, modify it, or even make money off of it. From a business standpoint, I am working for free. Why would I do this?
First off, open source code gets you followers. Future employers, other colleagues, etc. will recognize how good you are at coding by how widely distributed your code is. It shows your ability to work in a team, use Maven, etc. It's like doing community service. No -- it is community service. Doing this shows dedication.
Second, writing open source code augments my skills. I'm learning how to work with others and use the tools of the trade to make everything. I'm learning deprecation and other things you wouldn't learn from a private project. It's like an internship, except you're recognized for your work.
Lastly, I use the code. Linux isn't written by unpaid people who just have a hobby. Linux is written mostly by companies like Novell, Red Hat, IBM, and even Oracle. Other people are helping me write my code in exchange for me sharing my code. It's a win-win situation.
Open source software isn't about doing free work. It's about giving back to the community