Thursday, June 10, 2010

The concept of contributing

Every developer should work in a self-governed open source project team for at least 3 months to understand the concept of contributing, which has the following two sides:
  1. Ownership: in an self-governed open source project, every team member share the ownership of the whole project. If you want a new feature, you shall be able to add/modify any code any where to implement that without impacting other features.
  2. Accountability: You are responsible to make sure every piece of the code you are going to commit is readable, tested. Because other people could work on your code, or has code change that might impact your code at any time.
Many developers only know how to finish a task assigned to them, and thus lack the understanding of ownership and accountability. Plenty of software projects failed because of that.