Nov 7, 2007 at 12:22 AM
Edited Nov 7, 2007 at 12:25 AM
How do you get checkin rights for SLK? Who decides what goes into SLK and what stays out? What is the airspeed of an African Swallow? These and more questions will be answered below.
To become an SLK Member is easy. Create a Codeplex Account. Visit this website. Participate. No invitation is necessary, even friends are optional. A Member can:
* Download and install the Released bits.
* Comment on the documentation pages.
* Post to the Discussion forums.
* Vote (and comment) on the Issues that should be fixed via the Issue Tracker.
* File new Bugs or Feature suggestions in the Issue Tracker.
* Get an enlistment to the SLK source code using the
http://www.codeplex.com/CodePlexClient CodePlex Client (aka CPC) via cpc checkout.
http://www.codeplex.com/CodePlexClient/Wiki/View.aspx?title=Workflow&referringTitle=Home for documentation.
* Make changes to the source code, build your own copy of SLK, and deploy it.
* Share your changes with the community by creating a Patch file (cpc makepatch) and uploading it
* Wait with baited breath for an SLK Developer or Coordinator to accept your Patch and apply it to the official source code.
An SLK Developer is an SLK Member who has established a proven track record of submitting high quality patches. An SLK Developer submits patches like an SLK Member but they also:
* Provide code review & testing feedback on other people's patches.
* Perform Build Validation Tests on their code every time before uploading a patch file.
* Perform the occasional "Good Samaritan" job of investigating and fixing someone else's problem by looking at the Issue Tracker and tackling bugs/features with a high vote count.
* Contributes to the overall quality of the SLK project by improving the build or test processes. Automated unit tests that run consistently are highly though of.
As recognition of this additional level of commitment to the SLK project, an SLK Member will be changed to the Developer Role. Once you're a Developer, you can:
* Approve and submit someone else's patch. (Please do not submit your own patch, we want at least one peer review on all checkins.)
* Add/Modify the documentation/wiki pages.
An SLK Coordinator has the ability to manage all aspects of the SLK project (except changing the license). The Coordinator can promote Members to Developers, change the value of Big G, and warp the time-space continuum. The SLK Coordinator has final say on
"accepted/rejected" features and is expected to "manage the scope creep" of the SLK project to keep it from becoming a place where every little feature gets added and the project becomes unwieldy/unmaintainable.
There should only be a handful (2-3) Coordinators at any time to prevent project whiplash. Coordinators are appointed using a Monarchy system. As the old Monarch steps down from the throne, a new Monarch is appointed from the Court (aka Developers) by the remaining
Monarchs. Those who disagree are swiftly beheaded.
Discussion? If this looks like a good approach, I'll put it in the documentation pages.