[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[DotGNU]First draft of DotGNU FAQ
From: |
Norbert Bollow |
Subject: |
[DotGNU]First draft of DotGNU FAQ |
Date: |
Sat, 10 Nov 2001 01:11:36 +0100 |
Here is a first draft of a FAQ document for DotGNU. This will
probably soon be merged with the Portable.NET FAQ. Special
thanks to Bill Lance who contributed the link in question 1.0
and several of the questions. BTW I'm still looking for a
maintainer for this FAQ :-)
The DotGNU FAQ
Version 0.0
For general information about DotGNU see http://www.dotgnu.org
The FAQ document convers the following questions:
1.0 What is the motivation behind DotGNU?
1.1 What is DotGNU?
1.2 How can I contribute?
1.3 What programming languages are supported in DotGNU?
1.4 Will C and C++ be supported in DotGNU?
1.5 How do you define "webservice"?
1.6 What about other definitions of "webservice"?
1.7 Are there ethical problems with webservices?
1.8 What are the benefits of using a remote webservice, as apposed to
executing the same program on your own computer?
2.0 What software licenses does DotGNU use?
2.1 Does the linking exception carry over to derivative works?
2.2 What about programs which access each other through network
protocols. Is that a form of linking?
2.3 Is it possible to establish strong copyleft for webservices,
that allows them to be used only by Free Software?
1.0 What is the motivation behind DotGNU?
Microsoft's .NET is a serious threat to the future of the
internet. This is explained well by Richard Hillesley in "Tempted
by .NET?", Linux User No 15 (Oct 2001), p. 15-21
http://www.linuxuser.co.uk/articles/issue15/lu15-Cover_feature-Tempted_by_net.pdf
Then there are also serious privacy and security threats which come
from Microsoft's "Passport" auth system for .NET
The intention of the DotGNU project is to prevent the success of
Microsoft's plans to turn .NET into another effective monopoly.
We want to achieve this by creating a complete set of competing,
better products, and releasing them as GPL'd Free Software.
1.1 What is DotGNU?
DotGNU is a Free Software project to create a platform for web
services that can be written in a variety of different programming
languages including Java and C#.
1.2 How can I contribute?
The best way to get started is probably to subscribe to the three
main mailing lists and send a message to one of them (wherever you
feel it would be most appropriate) saying what kind of thing you'd
like to help with, and what your skills are.
The main mailing lists are:
* http://subscribe.dotgnu.org/mailman/listinfo/developers
* http://subscribe.dotgnu.org/mailman/listinfo/arch
* http://subscribe.dotgnu.org/mailman/listinfo/auth
1.3 What programming languages are supported in DotGNU?
We want to support Java in the same way as C#/CLR (as per Microsoft's
ECMA specs) will also be supported. As soon as Parrot (the bytecode
system of Perl6) is available, it will probably be added to the list
of bytecode systems that we want to support.
Note that with the support for Java bytecode, all other programming
languages that can be compiled to Java bytecode will also be
available, for example Ada95. Also, all programs that are written
for .NET (for example in Visual Basic) should work with DotGNU.
1.4 Will C and C++ be supported in DotGNU?
Code which is written in C or C++ can be used with DotGNU, *if* it
is distributed with DotGNU or otherwise installed on the end
user's PC like you normally install software - it cannot be
transported as bytecode to a Secure Execution Environment (SEE) on a
remote machine, like it will be possible with e.g. Java, Ada, C# and
Perl. Hence C and C++ are fine for implementing parts of DotGNU,
but they will not be an acceptable language for implementing
webservices - at least not until someone solves the difficult issues
of compiling C to some kind of portable intermediate representation.
1.5 How do you define "webservice"?
"Webservices" are any services that are offered on the web
(regardless of what technology is used to provide them).
In order to turn this statement into an actual definition,
these explanations need to be added:
a) With "service" we mean not only that some functionality is
provided, but that there should also be some description of
this functionality, namely how the service should be used and
what it provides.
b) With saying that the service is "offered on the web" we mean
that it's offered on the internet via standard protocols,
i.e. protocols that are open, widely published, and freely
available for anyone to implement.
1.6 What about other definitions of "webservice"?
A definition attempt by the Stencil Group has been discussed in some
detail on the DotGNU developers mailing list, in these messages:
* http://archive.dotgnu.org/pipermail/developers/2001-November/001252.html
* http://archive.dotgnu.org/pipermail/developers/2001-November/001253.html
* http://archive.dotgnu.org/pipermail/developers/2001-November/001254.html
* http://archive.dotgnu.org/pipermail/developers/2001-November/001255.html
1.7 Are there ethical problems with webservices?
It is important that the user must have the freedom to move all
their data to a computer that is operated by the user, and run the
program there. (Otherwise the webservice provider has power over
the user in an unethical way by controlling the user's data.) The
DotGNU webservices platform will make sure that the user has this
important freedom.
1.8 What are the benefits of using a remote webservice, as apposed to
executing the same program on your own computer?
Apart from special circumstances (like when you need to process huge
amounts of data that your local computer cannot handle) there is a
benefit to using a webservice only when the same set of data needs
to be accessed by multiple people, or when a user needs to be able
to access the same set of data from multiple computers.
For example, the straightforward way to implement mailing list
hosting is to do it as a webservice, and that is exactly what the
implementors of Mailman, the GNU mailing list program, have done.
On the other hand there is little benefit from implementing e.g. a
text editor as a webservice unless there are features to allow
multiple users to edit the same file at the same time.
2.0 What software licenses does DotGNU use?
All official software development projects of the DotGNU
meta-project use the GNU General Public License (GNU GPL).
For Libraries which are intended to be linked with third-party
programs that may not have a GPL-compatible license, as a special
exception such linking is allowed.
2.1 Does the linking exception carry over to derivative works?
If you create a derivative work of pnetlib or any library which is
licensed as "GPL plus linking exception", then it is up to you
whether want the linking exception to carry over to your derivative
work. If you leave the exception in the text, then it applies to
your version.
2.2 What about programs which access each other through network
protocols. Is that a form of linking?
No. A GPL'd program can use any kind of webservice regardless
of how the webservice software is licensed, and GPL'd webservice
software can be used by any program regardless of that program's
license.
2.3 Is it possible to establish strong copyleft for webservices,
that allows them to be used only by Free Software?
It is probably not possible to construct a Free Software license
(which operates through copyright law) which would have this effect.
Greetings, Norbert.
--
A member of FreeDevelopers and the DotGNU Steering Committee: dotgnu.org
Norbert Bollow, Weidlistr.18, CH-8624 Gruet (near Zurich, Switzerland)
Tel +41 1 972 20 59 Fax +41 1 972 20 69 http://thinkcoach.com
Your own domain with all your Mailman lists: $15/month http://cisto.com
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [DotGNU]First draft of DotGNU FAQ,
Norbert Bollow <=