James Dixon’s Blog

James Dixon’s thoughts on commercial open source and open source business intelligence

Microsoft’s Codeplex Requirements

with 6 comments

One of the projects on CodePlex, Sandcastle, has been un-published for not providing its source code. I don’t know what Sandcastle had published in the way of binaries etc so I’m not going to comment on the Sandcastle case. But after looking at CodePlex’s requirements for projects hosted there I have some questions.

These are the criteria that are listed on the CodePlex wiki for projects that are hosted there

What are the requirements for hosting a project on CodePlex?
Your project must meet the following criteria:
  1. You must choose a license for your project (license resources: Open Source License page on Wikipedia)
  2. It must be an ongoing project (no “abandoned” projects)
  3. It must have source code (no non-software projects)

It is certainly good that there are not a lot of criteria. However the vagueness of these terms is problematic. Here are my thoughts:

1. You must choose a license for your project

The requirements state that their resource is a wikipedia page (http://en.wikipedia.org/wiki/Open_source_licenses). This is refreshing from the standpoint that it implies that CodePlex’s view of license seems to be ‘whatever wikipedia says today’. But what happens when the wikipedia page changes? If a license that was listed is dropped do any projects using that license get removed from CodePlex? If not what is to stop me from adding my own funky license to the wikipedia page, creating my project on CodePlex, and then using wikipedia revision history to prove my project’s right to be on CodePlex.

In reality what is on the wikipedia page does not seem to matter. The wikipedia page lists the GPL as a license but does not list specific versions) and the wikipedia page for the GPL lists all three versions of the GPL. So it would seem from this that GPL V3 is an allowed license for CodePlex. However these comments indicate that GPL V3 is not accepted.

weimingzhi wrote Nov 19 2007 at 11:33 PM

just to make sure… am I allowed to use the GPLv3 on this site?

jwanagel wrote Dec 20 2007 at 1:05 AM

The site currently doesn’t have support for the GPLv3 license.

*jwanagel is a Senior Development Lead for CodePlex.com.

CodePlex needs to publish a clear list of allowable licenses in their FAQ.

2. It must be an ongoing project

The comment trail on the page verifies that ‘completed’ projects are ok, but not abandoned ones.

jwanagel wrote May 11 2007 at 7:31 PM

Abandoned means the project has no coordinators involved in the project, or there is no user activity (messages, issue tracker entries, downloads). A completed project is fine if there is still someone who will be the coordinator for the project on CodePlex.

Being able to identify dead and dying projects would be great. Sourceforge provides their ranking system which, despite some deficiencies, is generally indicative of the activity of a project. It would be nice if Sourceforge let you use that as criteria when doing searches.

Does jwanagel mean no messages or no tracker entries or downloads? Or do they mean no messages and no tracker entries and no downloads? By ‘no tracker entries’ do they mean no new entries or no edits either? What time period are we talking about? A week, a month or a year?

I’m not trying to be nit-picky but history and stewardship of some projects is rocky to say the least with long dormant periods and changes of administrators. I’d hate to see projects thrown off CodePlex that were ahead of their time and destined for greatness in a year or two.

If CodePlex is going to have a requirement such as this I think they need to clearly communicate the intent of the requirement. The current wording is insufficient. Without this we cannot gauge whether a given situation does or does not meet the spirit of their intent.
3. It must have source code

Their clarification in parenthesis says “no non-software projects”. What if a project is just starting and only has specifications and design documents so far? I suspect that CodePlex’s intent would be to let this project in but the requirements as stated seems not to. An example I use when talking about the benefits of peer review in open source projects is the pre-source-code days of the Eclipse BIRT project. The specification for BIRT was posted months before the seed code was released. Lots of people participated in disucssions about the specs and the specs improved significantly during the pre-seed period. Not allowing projects in the design and specification phase to be included on CodePlex would be detrimental but their current wording seems to prohibit this.

Written by James

June 7, 2008 at 11:16 pm

Posted in open source

6 Responses

Subscribe to comments with RSS.

  1. CodePlex allows you to select from the following list of licenses: Apache, CDDL, EPL, GPL, LGPL, Ms-PL, Ms-RL, MPL, BSD, and MIT. If a user wants a license that isn’t in that list they can contact us to manually set their project license.

    We don’t have an exact screening criteria for abandoned projects, but typically we look for things such as projects that are six months or older with negligible page views and downloads, and no recent source control check-ins. We then contact the project owner to see if they’re still interested in the project and if they don’t respond in 30 days we remove it. The spirit is we’re looking for projects that have no interest from either the coordinators or any users.

    We haven’t had a case where a valid project needed a design/specification phase, but we would allow that.

    jwanagel

    June 8, 2008 at 5:50 pm

  2. Thank you for the reply.

    I think the licenses you list covers a large percentage of projects.Is GPL V3 now allowed?

    Your reply confirms my guess that the intent behind CodePlex’s requirements are reasonable and fair. I think making your response to my blog post part of the FAQ would be a good idea under the guise of transparency.

    James

    June 8, 2008 at 7:41 pm

  3. After reading this article, I feel that I really need more information on the topic. Could you suggest some more resources ?

    Heartburn Home Remedy

    April 15, 2009 at 11:48 am

  4. Hi HHR,

    There are quite a few issues touched on here. Is there any specific topic you are interested in? – Open source licenses in general? Hosting sites for open source projects? Codeplex-specific issues?

    James

    April 15, 2009 at 1:48 pm

  5. Hello,

    Is there a licence mode where source code is not mandatory ?

    Thanks for your time.

    Best Regards.

    Jeff

    June 23, 2009 at 7:58 am

    • Hi Jeff,

      All of the ‘open source’ or ‘free software’ licenses require that the source code is available. If you want to provide binaries for free but not the source code you are talking about freeware or shareware.

      James

      James

      June 23, 2009 at 12:16 pm


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: