From: tmo...@bix.com (Tom Moran)
Subject: Open-Source and programming style
Date: 1998/11/14
Message-ID: <364d0243.39960214@SantaClara01.news.InterNex.Net>#1/1
X-Deja-AN: 411686767
Organization: InterNex Information Services 1-800-595-3333
Newsgroups: comp.lang.ada

One advantage cited for Open Source Software is that it can be
debugged in parallel by many people.  That would seem to fit the style
of 'code anything, then debug until it works' better than the 'design
it so it works in the first place' style, which seems less amenable to
parallelism.  Comments? 

From: "Jerry van Dijk" <jvan...@ibm.net>
Subject: Re: Open-Source and programming style
Date: 1998/11/14
Message-ID: <01be0ff2$6dd17b60$96a55c8b@aptiva>#1/1
X-Deja-AN: 411825511
References: <364d0243.39960214@SantaClara01.news.InterNex.Net>
X-Notice: should be reported to postmas...@ibm.net
X-Complaints-To: postmaster@ibm.net
X-Trace: 14 Nov 1998 17:15:04 GMT, 139.92.165.150
Organization: JerryWare
Newsgroups: comp.lang.ada


Tom Moran <tmo...@bix.com> schreef in artikel
<364d0243.39960...@SantaClara01.news.InterNex.Net>...

> One advantage cited for Open Source Software is that it can be
> debugged in parallel by many people.  That would seem to fit the style
> of 'code anything, then debug until it works' better than the 'design
> it so it works in the first place' style, which seems less amenable to
> parallelism.  Comments? 

Ever seen a design, much less a requirements document for
Open Source Software ?

-- 
-- Jerry van Dijk | Leiden, Holland
-- Team Ada       | email: jd...@acm.org
-- Ada & Win32: http://stad.dsl.nl/~jvandyk

From: de...@gnat.com
Subject: Re: Open-Source and programming style
Date: 1998/11/14
Message-ID: <72knmb$q79$1@nnrp1.dejanews.com>#1/1
X-Deja-AN: 411849266
References: <364d0243.39960214@SantaClara01.news.InterNex.Net> 
<01be0ff2$6dd17b60$96a55c8b@aptiva>
X-Http-Proxy: 1.0 x3.dejanews.com:80 (Squid/1.1.22) for client 205.232.38.14
Organization: Deja News - The Leader in Internet Discussion
X-Article-Creation-Date: Sat Nov 14 20:03:23 1998 GMT
Newsgroups: comp.lang.ada
X-Http-User-Agent: Mozilla/4.04 [en] (OS/2; I)

In article <01be0ff2$6dd17b60$96a55c8b@aptiva>,
  "Jerry van Dijk" <jvan...@ibm.net> wrote:
>
> Tom Moran <tmo...@bix.com> schreef in artikel
> <364d0243.39960...@SantaClara01.news.InterNex.Net>...
>
> > One advantage cited for Open Source Software is that it
can be
> > debugged in parallel by many people.  That would seem
to fit the style
> > of 'code anything, then debug until it works' better
than the 'design
> > it so it works in the first place' style, which seems
less amenable to
> > parallelism.  Comments?
>
> Ever seen a design, much less a requirements document for
> Open Source Software ?


I don't think you have any basis for assuming that Open
Source Software is any less well designed or less subject
to formal requirements specification than proprietary
software. It is really a completely orthogonal issue. It
is a marketing decision, not a technical decision to make
your sources open. There are well designed OSS applications
and poor ones, and is the case for proprietary designs.

The notion of lots of people debugging in parallel, and
changing the sources with little discipline is merely one
possible model of OSS development, not a very good one in
my opinion. Frankly I have seen lots of proprietary
development which suffered from the same weakness!

Certainly this model is NOT the model we use for GNAT,
where we very carefully consider design issues, and where
of course there most certainly is a requirements document
(it is called the ADa 95 RM :-)

There are those that are highly critical of the OSS
approach. I usually find they are people who have a big
investment in proprietary software, and who, like Microsoft
in the Halloween document, feel, quite understandably and
quite justifiably, under pressure from the OSS phenomenon!

Robert Dewar
Ada Core Technologies

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    

From: Andi Kleen <a...@muc.de>
Subject: Re: Open-Source and programming style
Date: 1998/11/14
Message-ID: <m3sofmf6op.fsf@fred.muc.de>#1/1
X-Deja-AN: 411850192
Distribution: world
Sender: a...@fred.muc.de
References: <364d0243.39960214@SantaClara01.news.InterNex.Net> 
<01be0ff2$6dd17b60$96a55c8b@aptiva>
Organization: [posted via] Leibniz-Rechenzentrum, Muenchen (Germany)
User-Agent: Gnus/5.070044 (Pterodactyl Gnus v0.44) Emacs/20.3
Newsgroups: comp.lang.ada

In article <01be0ff2$6dd17b60$96a55c8b@aptiva>,
"Jerry van Dijk" <jvan...@ibm.net> writes:
> Tom Moran <tmo...@bix.com> schreef in artikel
> <364d0243.39960...@SantaClara01.news.InterNex.Net>...

>> One advantage cited for Open Source Software is that it can be
>> debugged in parallel by many people.  That would seem to fit the style
>> of 'code anything, then debug until it works' better than the 'design
>> it so it works in the first place' style, which seems less amenable to
>> parallelism.  Comments? 

> Ever seen a design, much less a requirements document for
> Open Source Software ?

Yes. Lots of them actually.

-Andi

From: "Jerry van Dijk" <jvan...@ibm.net>
Subject: Re: Open-Source and programming style
Date: 1998/11/14
Message-ID: <01be1008$d828fc20$65615c8b@aptiva>#1/1
X-Deja-AN: 411864438
References: <364d0243.39960214@SantaClara01.news.InterNex.Net> 
<01be0ff2$6dd17b60$96a55c8b@aptiva> <m3sofmf6op.fsf@fred.muc.de>
X-Notice: should be reported to postmas...@ibm.net
X-Complaints-To: postmaster@ibm.net
X-Trace: 14 Nov 1998 19:55:03 GMT, 139.92.97.101
Organization: JerryWare
Newsgroups: comp.lang.ada

> > Ever seen a design, much less a requirements document for
> > Open Source Software ?
> 
> Yes. Lots of them actually.

Interesting. Can you point to some of them ?

-- 
-- Jerry van Dijk | Leiden, Holland
-- Team Ada       | email: jd...@acm.org
-- Ada & Win32: http://stad.dsl.nl/~jvandyk

From: "Jerry van Dijk" <jvan...@ibm.net>
Subject: Re: Open-Source and programming style
Date: 1998/11/15
Message-ID: <01be1089$329f0980$50a55c8b@aptiva>#1/1
X-Deja-AN: 412032070
References: <364d0243.39960214@SantaClara01.news.InterNex.Net> 
<01be0ff2$6dd17b60$96a55c8b@aptiva> <72knmb$q79$1@nnrp1.dejanews.com>
X-Notice: should be reported to postmas...@ibm.net
X-Complaints-To: postmaster@ibm.net
X-Trace: 15 Nov 1998 11:13:45 GMT, 139.92.165.80
Organization: JerryWare
Newsgroups: comp.lang.ada


de...@gnat.com schreef in artikel <72knmb$q7...@nnrp1.dejanews.com>...

> > Ever seen a design, much less a requirements document for
> > Open Source Software ?
> 
> 
> I don't think you have any basis for assuming that Open
> Source Software is any less well designed or less subject
> to formal requirements specification than proprietary
> software. It is really a completely orthogonal issue.

I would agree in the general case, but my note was a reaction on
Tom's, who had an -IMHO- implicit link to the bazar style of
development. And as I understand it, in this model software
is not so much designed as, well..., grown, so to speak.

> Certainly this model is NOT the model we use for GNAT,
> where we very carefully consider design issues, and where
> of course there most certainly is a requirements document
> (it is called the ADa 95 RM :-)

:-)


-- 
-- Jerry van Dijk | Leiden, Holland
-- Team Ada       | email: jd...@acm.org
-- Ada & Win32: http://stad.dsl.nl/~jvandyk

From: Andi Kleen <a...@muc.de>
Subject: Re: Open-Source and programming style
Date: 1998/11/15
Message-ID: <m3g1blw9dw.fsf@fred.muc.de>#1/1
X-Deja-AN: 412049590
Distribution: world
Sender: a...@fred.muc.de
References: <364d0243.39960214@SantaClara01.news.InterNex.Net> 
<01be0ff2$6dd17b60$96a55c8b@aptiva> <m3sofmf6op.fsf@fred.muc.de> 
<01be1008$d828fc20$65615c8b@aptiva>
Organization: [posted via] Leibniz-Rechenzentrum, Muenchen (Germany)
User-Agent: Gnus/5.070044 (Pterodactyl Gnus v0.44) Emacs/20.3
Newsgroups: comp.lang.ada

In article <01be1008$d828fc20$65615c8b@aptiva>,
"Jerry van Dijk" <jvan...@ibm.net> writes:
>> > Ever seen a design, much less a requirements document for
>> > Open Source Software ?
>> 
>> Yes. Lots of them actually.

> Interesting. Can you point to some of them ?

Of the OSS projects I followed for example the Linux-PAM ('Pluggable ]
Authentification modules') project was very well spec'ed/designed/documented 
from the beginning. Another example is gcc/egcs, although the requirement/new
design documents usually only apply to part of the source because they're
already working with a very large code base. A lot of OSS projects implement
based on existing specifications, e.g. like Robert pointed out GNAT based on
the ARM, Orbit/MICO (OSS CORBA ORBs) based on the CORBA specification, etc.

There are of course projects too that work more in 'explorative programming
mode', you just can't generalize.

-Andi

From: tmo...@bix.com (Tom Moran)
Subject: Re: Open-Source and programming style
Date: 1998/11/15
Message-ID: <364f3bbe.214201@SantaClara01.news.InterNex.Net>#1/1
X-Deja-AN: 412164236
References: <364d0243.39960214@SantaClara01.news.InterNex.Net> 
<01be0ff2$6dd17b60$96a55c8b@aptiva> <72knmb$q79$1@nnrp1.dejanews.com> 
<01be1089$329f0980$50a55c8b@aptiva>
Organization: InterNex Information Services 1-800-595-3333
Newsgroups: comp.lang.ada

>implicit link to the bazar style of
>development. And as I understand it, in this model software
>is not so much designed as, well..., grown, so to speak.
My original question came after contemplating the "Halloween" memo.
  If debugging time costs as much, in both calendar and man-hours, as
design time, and an extra hour of design can prevent multiple hours of
debugging, then clearly more design/less debugging is the reasonable
way to go.  But if you have an environment where design is expensive
and debugging cheap, then less design/more debug seems clearly the
rational tradeoff.  (That is, after all, what Darwin tells us Mother
Nature has been doing, with rather spectacular success.)
  It's also my understanding that the big OSS projects have been in
situation where the spec was already pretty well understood by many
people (eg, Unix, the Ada LRM) rather than needing specs for a
completely new, never been done before, undertaking.  The latter
seems more in need of a very small design team than the former. 

From: Andi Kleen <a...@muc.de>
Subject: Re: Open-Source and programming style
Date: 1998/11/15
Message-ID: <m31zn4wr4n.fsf@fred.muc.de>#1/1
X-Deja-AN: 412245639
Distribution: world
Sender: a...@fred.muc.de
References: <364d0243.39960214@SantaClara01.news.InterNex.Net> 
<01be0ff2$6dd17b60$96a55c8b@aptiva> <72knmb$q79$1@nnrp1.dejanews.com> 
<01be1089$329f0980$50a55c8b@aptiva> <364f3bbe.214201@SantaClara01.news.InterNex.Net>
Organization: [posted via] Leibniz-Rechenzentrum, Muenchen (Germany)
User-Agent: Gnus/5.070044 (Pterodactyl Gnus v0.44) Emacs/20.3
Newsgroups: comp.lang.ada

In article <364f3bbe.214...@SantaClara01.news.InterNex.Net>,
tmo...@bix.com (Tom Moran) writes:
>   It's also my understanding that the big OSS projects have been in
> situation where the spec was already pretty well understood by many
> people (eg, Unix, the Ada LRM) rather than needing specs for a
> completely new, never been done before, undertaking.  The latter
> seems more in need of a very small design team than the former. 
 
I think there is a confusion of terms here: Open Source Licensing does not
require bazaar style development (an example is GNAT which
is managed cathedral like). On the other hand bazaar style development
is in principle possible for proprietary software, although that is seldom
done because few organisations have the man power needed for it. Because 
of this reason more OSS projects are done bazaar style - simply because
it is possible (enough volunteers available) and well understood. But it 
is not required. 

Regarding your assertion that big Open Source software always have a fixed
spec because they're cloning something: good counter examples are GNU emacs
and PGP (before it went commercial) 

-Andi

From: Corey Minyard <miny...@acm.org>
Subject: Re: Open-Source and programming style
Date: 1998/11/15
Message-ID: <m27lwwrzb2.fsf@wf-rch.cirr.com>#1/1
X-Deja-AN: 412295852
Sender: miny...@wf-rch.cirr.com
References: <364d0243.39960214@SantaClara01.news.InterNex.Net> 
<01be0ff2$6dd17b60$96a55c8b@aptiva> <72knmb$q79$1@nnrp1.dejanews.com> 
<01be1089$329f0980$50a55c8b@aptiva> <364f3bbe.214201@SantaClara01.news.InterNex.Net> 
<m31zn4wr4n.fsf@fred.muc.de>
Organization: Wonderforce Research
Reply-To: miny...@acm.org
Newsgroups: comp.lang.ada

Andi Kleen <a...@muc.de> writes:

>
> Regarding your assertion that big Open Source software always have a fixed
> spec because they're cloning something: good counter examples are GNU emacs
> and PGP (before it went commercial) 
> 

Even if part of a piece of software is well-understood, it doesn't
mean that the whole thing is.  For instance, for gcc, the front-end
was well defined but the back-end is, well, quite unique.  And quite
powerful, too, once you understand it.  So the front-end design had a
defined specification but the back end is RMS's own scheme.  At least
that's how I understand it, I don't think it was stolen from anywhere.

-- 
Corey Minyard               Internet:  miny...@acm.org
  Work: miny...@nortel.ca       UUCP:  miny...@wf-rch.cirr.com

From: ken...@lab.ultra.nyu.edu (Richard Kenner)
Subject: Re: Open-Source and programming style
Date: 1998/11/19
Message-ID: <731eia$9dn$1@news.nyu.edu>#1/1
X-Deja-AN: 413535393
Distribution: world
References: <m3sofmf6op.fsf@fred.muc.de> <01be1008$d828fc20$65615c8b@aptiva> 
<m3g1blw9dw.fsf@fred.muc.de>
X-Complaints-To: usenet@news.nyu.edu
X-Trace: news.nyu.edu 911490442 9655 (None) 128.122.140.194
Organization: New York University Ultracomputer Research Lab
Newsgroups: comp.lang.ada

In article <m3g1blw9dw....@fred.muc.de> Andi Kleen <a...@muc.de> writes:
>Another example is gcc/egcs, although the requirement/new
>design documents usually only apply to part of the source because they're
>already working with a very large code base.

I think gcc/egcs is actually a bad example, especially in terms of
requirement documents.  It's not like people get together and discuss "well,
what should we put in during Q1 99?".  It's much more of a "Hey great!
Somebody just contibuted most of a new FOOBAR optimization pass!  Let's hack
it into working shape!".

In terms of specifications, of course the base compilers are implementing
precisely specificied languages, but the internal interfaces are indeed not
well specified and this lack has been a serious problem with these
development models. 

A serious problem in a volunteer-based project is that people will volunteer
to do those things they find fun and few people find documentation, code
cleanup, and writing specifications to be fun.  The only way these things get
done is if some central controlling person or group says "You want your code
to be used?  Then you're going to have to do the documentaiton and cleanup we
ask."  In the long term, the success or failure of such projects depends on
the success of that sort of coercion.

From: ken...@lab.ultra.nyu.edu (Richard Kenner)
Subject: Re: Open-Source and programming style
Date: 1998/11/19
Message-ID: <731eqv$9ff$1@news.nyu.edu>#1/1
X-Deja-AN: 413543313
Distribution: world
References: <01be1089$329f0980$50a55c8b@aptiva> 
<364f3bbe.214201@SantaClara01.news.InterNex.Net> <m31zn4wr4n.fsf@fred.muc.de>
X-Complaints-To: usenet@news.nyu.edu
X-Trace: news.nyu.edu 911490719 9711 (None) 128.122.140.194
Organization: New York University Ultracomputer Research Lab
Newsgroups: comp.lang.ada

In article <m31zn4wr4n....@fred.muc.de> Andi Kleen <a...@muc.de> writes:
>Regarding your assertion that big Open Source software always have a fixed
>spec because they're cloning something: good counter examples are GNU emacs
>and PGP (before it went commercial) 

Actually, GNU EMACS was a clone of ITS EMACS, though that was also 
Open Software (in a sense) and written by the same person.

From: ken...@lab.ultra.nyu.edu (Richard Kenner)
Subject: Re: Open-Source and programming style
Date: 1998/11/19
Message-ID: <732b7b$dct$1@news.nyu.edu>#1/1
X-Deja-AN: 413691604
References: <364f3bbe.214201@SantaClara01.news.InterNex.Net> 
<m31zn4wr4n.fsf@fred.muc.de> <m27lwwrzb2.fsf@wf-rch.cirr.com>
X-Complaints-To: usenet@news.nyu.edu
X-Trace: news.nyu.edu 911519787 13725 (None) 128.122.140.194
Organization: New York University Ultracomputer Research Lab
Newsgroups: comp.lang.ada

In article <m27lwwrzb2....@wf-rch.cirr.com> miny...@acm.org writes:
>Even if part of a piece of software is well-understood, it doesn't
>mean that the whole thing is.  For instance, for gcc, the front-end
>was well defined but the back-end is, well, quite unique.  And quite
>powerful, too, once you understand it.  So the front-end design had a
>defined specification but the back end is RMS's own scheme.  At least
>that's how I understand it, I don't think it was stolen from anywhere.

Well, it wasn't "stolen" and there were plenty of new concepts in the GCC
back end, but as RMS says in the GCC manual:

    The idea of using RTL and some of the optimization ideas came from the
    program PO written at the University of Arizona by Jack Davidson and
    Christopher Fraser.  See ``Register Allocation and Exhaustive Peephole
    Optimization'', Software Practice and Experience 14 (9), Sept. 1984,
    857-866.