3 ms·
I have contributed to a number of open source projects over the years, and the number one stumbling block that I have noticed, time and again, is simply this: l
by fit2rule 12y ago
I have contributed to a number of open source projects over the years, and the number one stumbling block that I have noticed, time and again, is simply this: lack of leadership.
It seems to be quite an accepted practice to just push your code out there, wrap it in some nice license, and forget about the project - this can be the difference between whether the project goes forward or sits and stagnates - and stagnate it will, even if you've got an avid following of users. Contributors to the project may well come up with great patches and new features and so on, but it will go nowhere if someone is not sitting at the top of the hierarchy, accepting the patches, making a mainstream branch, and releasing often new versions of the software.
I'm going through this right now with an open source project that is very, very powerful (I won't name it, but you can guess if you look through my comment history) and very, very useful to a lot of people. The project is technically awesome - but the leadership, administratively, leaves a lot to be desired and for those of us struggling to contribute to the project, its extremely frustrating not to have someone holding the gavel and pushing things out there on a regular release schedule.
So its not enough to be a gardener. You also have to have a farmer, a leader type, who will make sure your produce gets to market in a timely manner. If you're going to garden, make sure there's a foreman/farmer type who will take the best of your work and put it on the truck to get to market. If there isn't such a position, overt and available, then the very first thing you should do on the open source project, if you want it to persist and do well, is insist that there be such a role holding the reigns. It really is very important to have leadership in the open source realm.
- tcopeland 12y agoYup. And part of leadership is handing over the reins cleanly once you're no longer engaged in a project. By "cleanly" I mean removing your own admin access, no longer merging patches once you're not really checking them thoroughly anymore, not commenting on tickets based on half-hearted scanning, etc. I mishandled that one time with a pretty popular open source gizmo (https://sf.net/projects/pmd https://sf.net/projects/pmd) and caused some unnecessary static. Live and learn.