[webkit-dev] Open Design beyond Open Source

Mike Emmel mike.emmel at gmail.com
Fri Feb 16 07:00:03 PST 2007


I think its time to step back from the details of a project and
explain a bit of a new concept I'm working on. Its  a very short
description but I hope it helps.

The concept is called open design.

The thesis is open source is not good enough.

The reason that open source fails is that the create any significant
new project using traditional programing methods requires the creation
of a huge framework of code to support the project.

X11,WebKit,KDE,Gnome etc etc etc.

These large projects become stratified and locked into design
decisions often made early in the project and competitive open source
projects face a huge uphill battle of creating a new framework to
compete with the old one. New ideas tend to be rejected out of hand
and no one wants to make major changes to the framework because it
would break legacy support.


Open Design goes beyond this model and recognizes that with a complex
project and certain points in the design multiple solutions are
possible thus forks are not only possible but a good thing.

In a project developed using Open Design not just open source you
identify these places where forks can be supported and you code
support for them. Generally this means the creation of well defined
internal api's and careful control of interdependencies in the project
so mutiple api's can be supported.

Open Design strives to ensure that as many projects as possible use
the same core source code and it works hard to identify exactly what
this core is.

In reality what I'm proposing for WebKit is that it adopt Open Design
principals welcome forks and branches.

This will allow WebKit to mature into a Open Design project with a
well defined and tested set of core libraries supporting a wide range
of products and frameworks.

What WebKit should not do is fall in the trap of creating yet another
monolithic framework.

Sure you can create yet another monolithic framework that might be
slightly better than our current ones but in reality your  missing a
opportunity to think outside the box and be different.

Git and git-svn are just a good way to support forks Linus has chosen
open design for the Linux Kernel he just has not told people he has
gone beyond the open source model.
I've just put a name to the process.



More information about the webkit-dev mailing list