KOSH


Translate
KOSH is two weeks old. In that time, we have had over 1000 posts to our mailing lists, around 250 people subscribed, good wishes and serious concerns from around the world, we have an internet services provider, artists, a webgroup, a hardware working group and a logical architecture working group, and a group of Koshans are already moving forwards on preparing a monthly eZine. KOSH, as a community, and as a design for an OS is starting to take shape....and it's all thanks to those of you getting involved, giving support or just checking in.

One of the biggest issues we have had to deal with is the comments of the Linux community following our appearance on Slashdot. They have vehmently defended the open source policy of their community and ...errr....commented unfavourably on our decision not to go open source.

The benefits of Open Source are clear. There are many, but this article, handed to KOSH by Giorgio Gomelsky helps to define them precisely. To the surprise of many, KOSH is not against open source. What KOSH is against is unfocused design and non deadline development.

KOSH, as an object sea environment is defined by its interfaces. It is the interfaces that allow for the objects in the sea to communicate with each other. Now, these interfaces, the object model behind them and the mechanism for communicating between them have to be absolute, otherwise developers cannot rely on anything when developing. It is these elements that KOSH insists on having under centralised control and development because it is these elements that define what the object sea is, how it looks and feels, and how it works.

An object sea though is very different from any other computing paradigm. The object sea really only provides a container and some basic services. We fully expect third parties to populate the object sea and, in fact, we expect third parties to build multiple copies of the various objects that make up the object sea. As long as the interface is maintained, the implementation can be done in anyway. We thus hope to see a rich ecology develop in which the object sea is a taoist element, the core that binds it together and yet almost invisible at the same time.

KOSH recognises however that there are people who will want to build their own object seas, use only the objects they want and write their own objects as they see fit, learning from the efforts of others,and KOSH has no problem with that. Equally though, we recognise that there are many people who want the benefits of KOSH without having to recompile objects, write their own objects, and pull the various pieces from all over the net. For security sake as well, anyone could write an central object with some sniffer or other piece of malign code in it. The hacker community would spot it in an instant but the non hacker community doesn't want to have to go through the worry of even thinking about it. They also want an object sea WHEN it is promised, not when seventy or so teams of volunteers get around to doing it based upon their fulltime job, their holidays, sporting events.

None of this is a sleight on open source or non commercial efforts (far from it), or an attempt to prevent those who want to from building what they want. Rather it is a recognition that there are at least two distinct parts of the community, those who want to be able to take a car apart and put it back together again, and those who want to just get in and drive it without ever seeing the engine.

A possible solution is as follows;
  1. All design and interface work for the core object sea description is fully owned and controlled by KOSH. Since KOSH is community owned anyway, the best ideas of the community will filter into this central description.
  2. KOSH freely allows anyone to implement the interfaces as objects without licence as long as they are open source and are not sold for commercial use or distribution.
  3. KOSH is the only entity that is allowed to create and sell or licence a commercial KOSH distribution in any form, either standalone, bundled or as part of a system or distribution; any product that is sold commercially that contains a piece of KOSH. This allows for those who just want a KOSH system to get a standard, guaranteed and supported product and provides the capital necessary for KOSH to push itself forward in a professional manner.
  4. KOSH reserves the right to take any open source KOSH object and use it in its distribution. In exchange, Red shares or virtual credits will be offered to the originator.
  5. KOSH will distribute source to its objects WHERE it is able to do so. Any use of IP that is shared or owned by a third party may preclude this BUT the spirit of KOSH is that it will provide source where it can.


This solution provides a central guidance, authority and momentum for the development of KOSH. It also provides a common framework and set of mechanisms, the so called "law of the sea". However, it also provides full access to the source code, interfaces, mechanisms and descriptions for anyone who wants to build, replace, improve or add to KOSH. In this way, I believe we get all of the advantages of an open source, volunteer, distributed platform and all the advantages of a closed source, commercial, centrally controlled platform.

Of course, there may be other arguments, for and against, and there may other solutions. KOSH is about the community, and we want to hear the views of those who make it up. KOSH has had a great start, but the start is often the most important part because we must ensure we have the strongest of foundations. We want to make sure KOSH has a great future, and we thank our friends in the Linux community for their insight in helping us to achieve this. As always, KOSH listens.