Inference Group

Search :

Dasher meeting 10/07/2002

These notes are based on discussions between David MacKay (DJCM), Phil Cowans (PJC) and Iain Murray (IAM).

Management of the Project

Quick Note on Development

IAM will be developing Dasher full time for the next ~2 months until mid-September 2002. DJCM is looking into support for the project beyond that. The commitment required will depend on the amount of help we can obtain from the Open Source community, though we probably want someone in the group to manage the project.

First Target

IAM will address the most pressing needs of Dasher 2.x. For example the zoom-rate of the Dasher interface needs to be controllable rather than a constant. Some other parts of the user interface needs attention, but it must be kept simple to use. Once DJCM is happy that the current source tree is usable and license issues are sorted out we can make our first release on Sourceforge. By this stage we have not necessarily finalised the class interfaces. Therefore we must emphasise that people should not rush into building ports around this version, but instead ask for comments and bug reports. DJCM will email people that have expressed interest in Dasher in the past about this release. The source to 1.6.8 could be released at the same time.


The advantages of using Sourceforge are apparent:

  • Well integrated project management with file distribution, bug-tracking, source-tree and other features.
  • They know how to set up a read-only CVS server for use by all in a secure way better than we do.
  • Bug tracking can move to there if it is as good as our current Bugzilla setup. This needs investigating.

However, for the moment Sourceforge is unfamiliar and IAM is not ready to interact with other contributers yet. We will continue to use CVS on coll. DJCM, PJC, IAM and DJW will have write access. The rest of the group will have read access. Until the CVS is moved to Sourceforge we will have to provide regular archives of the source so that any contributed diff's will be useful.

Second Target

After the initial release IAM will work through his TODO list (coll:~iam23/Dasher2do.txt), which is based largely on Bugzilla and the Dasher site. It is desirable to make the code completely Windows independent. Ideally a Dasher library could be used by any application on any system.

We would like to publicise Dasher as widely as possible. Perhaps on Slashdot and FreshMeat. We are likely to get the best response from these audiences if an up-to-date Linux version is available.

Cross-Platform Interface

IAM will look seriously at producing an interface to a Dasher library using wxwindows. This is a set of C++ libraries that could allow easy support for Windows, Mac and UNIX simultaneously. The Pocket PC version should be addressed too.

Adaption Rule

If IAM has time he will look into a new approach for updating the zoom-rate of the interface.

License Issues

Currently we have no plans to trademark the name Dasher. The license and copyright notices attached to the Dasher source-code are still undecided. Features of the required license include:

  • Perpetual free use of Dasher and all "derived" versions for the group, all academics. Ideally individuals and commercial bodies would have these rights as well.
  • Sale and resale should be allowed to enable (for example) use by companies providing a bundled computer package for the support of disabled people.
  • It should be clear where the software has come from and a donation to the University of Cambridge suggested.

Discussions so far have centred around the GNU General Public License, the GPL, and its Lesser variant, the LGPL. A BSD-style license was rejected as it does not ensure derivatives make their way back to the group. At the moment we have not had a chance to look into other open source licenses.

There is concern that a license with GNU in it may put of some potential backers of the project. In particular Microsoft's support may be important as the provider of the most popular desktop operating system. We need to find out if this will be an issue. Releasing the code under the GPL is irreversible, so we need to be very sure before we do so. Otherwise the GPL could be appropriate for Dasher as a whole. It allows people to charge for distribution and anyone to use it. In addition it guarantees perpetual access to the source for all.

It is possible that the core of Dasher, made available as a library, could carry different license terms to its graphical user interface (GUI). We believe that the GPL could also be appropriate for an application that can embed itself into other applications, for example using OLE under Windows, or Bonobo under GNOME. However, we will consider the LGPL for a core library version of Dasher.

Since the meeting IAM has noted Free Software Foundation (FSF) advice to include a sound copyright notice. Only the copyright holder of a work is able to take action if the GPL is violated. In fact the FSF insists that any contributions to its software are donated to them and advises others do the same (The rest of the FAQ is useful too). Also the LGPL, although not preferred by the FSF, may be appropriate if our aim is to ensure widespread use:

We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs...
...on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard.

Iain Murray 07/10/2002

An instance of an LGPLed program can be converted into a GPLed one at any time. Once that happens, you can't convert that instance, or anything derived from it, back into an LGPLed program.
from p.183: Open Sources, ed by DiBona, Ockman and Stone

The Inference Group is supported by the Gatsby Foundation
and by a partnership award from IBM Zurich Research Laboratory
David MacKay
Site last modified Wed Jul 23 01:35:20 BST 2003