Robert The Rebuilder
Joined: 09 May 2006
Posts: 702
Location: Virginia, US
While Cyan is waiting for iMyst to be approved by Apple, I wanted to present what I've learned about open source projects from a leading example: the Second Life Viewer.
The viewer source code was made available on January 2008 [1]; however, it was presented in a read-only format. It was a mirror of Linden Lab's internal repository. People could suggest changes via their bug tracking system [2]. Once they've been recommended by enough members of the community, the LL developers put these changes into maintenance branches. Once QA determines the changes are good, these are merged into the release branch - and eventually merged into the internal viewer code [3].
But the time between a community-provided feature is submitted to seeing it in a released viewer executable was painfully slow - especially if it was a major change. Also, the work on the actual viewer occurred internally, hidden from public view. Some tried creating their own external repositories in order to add their features and make releases available to everyone. However, the nuances of the GNU Public License [4] under which the viewer falls made this difficult to do properly. Many community developers were discouraged by this, and the contributions slackened [5].
Then, at the end of March of this year, one of the LL developers (Philip Linden) posted an announcement of "a new version of the Second Life client in a public repository where we will allow direct committing from community members alongside our own daily work." This viewer will be available for download alongside the 'official' client, once it is made stable [6].
Philip outlined a short term release cycle for this viewer, targeting this June for its first release [7]. He also solicited requests on the SL developer lists for items to include on this new code branch [8]. The response was positive - many popular fixes and features currently stuck in QA purgatory were recommended for inclusion.
Hopefully, Cyan can glean some useful information from this. In the meantime, does anyone else have any lessons they've learned from other open source projects?
---------
The viewer source code was made available on January 2008 [1]; however, it was presented in a read-only format. It was a mirror of Linden Lab's internal repository. People could suggest changes via their bug tracking system [2]. Once they've been recommended by enough members of the community, the LL developers put these changes into maintenance branches. Once QA determines the changes are good, these are merged into the release branch - and eventually merged into the internal viewer code [3].
But the time between a community-provided feature is submitted to seeing it in a released viewer executable was painfully slow - especially if it was a major change. Also, the work on the actual viewer occurred internally, hidden from public view. Some tried creating their own external repositories in order to add their features and make releases available to everyone. However, the nuances of the GNU Public License [4] under which the viewer falls made this difficult to do properly. Many community developers were discouraged by this, and the contributions slackened [5].
Then, at the end of March of this year, one of the LL developers (Philip Linden) posted an announcement of "a new version of the Second Life client in a public repository where we will allow direct committing from community members alongside our own daily work." This viewer will be available for download alongside the 'official' client, once it is made stable [6].
Philip outlined a short term release cycle for this viewer, targeting this June for its first release [7]. He also solicited requests on the SL developer lists for items to include on this new code branch [8]. The response was positive - many popular fixes and features currently stuck in QA purgatory were recommended for inclusion.
Hopefully, Cyan can glean some useful information from this. In the meantime, does anyone else have any lessons they've learned from other open source projects?
---------
[1] "Linden Lab To Open Source Second Life Software" - Press Release
[2] Second Life JIRA
[3] Explanation of branches
[4] Open Source Viewer License
[5] "Kirsten Quits Citing GPL Enforcement Related Stress"
[6] "Intensifying Open Source Efforts"
[7] Explanation of community branch
[8] Second Life Developers List
_________________
Can we rebuild it? Yes, we can - here's how.
Myst Movie coming soon!
KI #: 1299


