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.
Sourceforge
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