The Seven Levels of Open Source


This isn't an original idea, but I needed to get it out of my brain.

There are many different definitions of what "Open Source". We can have a lovely argument over a pint as to whether GPLv3 is too open or if a licence which hasn't been validated by the OSI counts. But, more fundamentally, I think Open Source roughly falls into seven levels.

These aren't in any particular order of importance. And feel free to argue in the comments if you think I've radically misunderstood something.

1. Look but don't touch

This is the bare minimum. The source is "open" in that you can look at it, examine it, and possibly even learn from it. But that' is it.

You can't redistribute it. You can't edit it. You can't build on it. But you can see it.

2. Do What Thou Wilt

The source is yours to do with as you please. You can distribute it, build on it, print it out, eat it, use it in a weapons system. There are no restriction.

Have fun!

3. Do As You Would Be Done By

There is ponderous legal language, but it all adds up to one thing - you have to comply with our requirements.

Perhaps they say "only redistribute with this licence" or maybe "you must make everything this touches open". Either way, you aren't quite as free to do what you want.

Have fun - but don't piss off anyone.

4. I'd rather you didn't

These are less often seen, but becoming more common. You are free to do anything you want with this code... unless you're someone we don't like.

Some code says you can't use it for military purposes, others restrict its usage if you're going to be racist with it, and some say it can only be used by a particular class of people.

These licences are controversial. Openness means this is for everybody. Sure, no one likes the thought of their code being in a bomb. But your agents of imperial oppression are my freedom fighters.

5. Contributors Welcome

We're on GitHub! We actively want you to participate! Not only is the code open - but so is the community! Anyone with an IDE and an idea is welcome to pitch in!

Come play!

6. Blessed Contributors

We're open! But only certain people are allowed to contribute. All others will be shunned.

This is the model Google takes with Android - fully open, but good luck getting even a comma changed. There's also a popular open source project which requires its contributors to be religious!

This is open; but only for the chosen few.

7. The Future

There is something coming that you and I cannot understand. Deep in the darkest trenches of the Internet comes a new breed of hacker. Their social norms diverge from ours. They aren't beholden to the old ways and care not for our pettifogging traditions.

The are building a new form of Open Source. Something that reflects the needs and concerns of their generation, rather than the tired problems of ours. Old farts will harrumph and grumble about how it isn't proper Open Source - and moan that the youngling don't fear their elders any more.

But, make no mistake, the future is coming and it doesn't need your old-fashioned opinions.


Share this post on…

2 thoughts on “The Seven Levels of Open Source”

  1. says:

    I'd also add an additional category for "open in spirit", for things that have the community aspect of 5, but where the code itself isn't open source.

    I typically see that around indie video games, where the game is proprietary, but has an active modding scene, and significant dialogue between community and developers that influences the development direction.

    Reply
  2. Sebastian LaVine says:

    There's also a popular open source project which requires its contributors to be religious!

    Was this a veiled reference to SQLite and their Rule of St. Benedict "Code of Ethics"? If so, I think a more relevant mention of SQLite's approach to FOSS would be that they are open -- public domain, even -- but tend to have a policy of accepting no contributions, in order to assure the public domain-ness of it all. I'm not aware of many projects that take such an explicit stance out of policy and not just laziness.

    Reply

What are your reckons?

All comments are moderated and may not be published immediately. Your email address will not be published.Allowed HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <p> <pre> <br> <img src="" alt="" title="" srcset="">