Re: Quality control and FOSS rant

2008-01-19 Thread Audrius Meskauskas
I personally see no reason, why Classpath could not have some simple 
code reviewing system.  We may just set up rule that the new patch must 
come with fixes of all regressions it make. If the rule would be 
ignored, the older developers may set up the local Mauve testing 
systems, divide the packages and briefly check if the new coming patches 
do not break the tests.


People who want to try alternative approaches to CORBA or DTD - HTML 
parser implementations are unlikely to contribute to the project which 
only accepts single line bug fixes. If Sun wants to have OpenJDK very 
stable and production ready, some experimental fork likely should be 
set up anyway (its like RHEL and Fedora).


Also, GNU Classpath is already ported into many systems -  with the new 
features ready to come to these systems just after recompiling an 
ordinary Classpath release. Just because this simple reason, it may make 
sense to continue.


Audrius.



Re: Quality control and FOSS rant

2008-01-12 Thread Andy Tripp



Andy Tripp wrote:



Andrew John Hughes wrote:

(snip)
and anything
non-trivial has to be approved formally, again in public.  

Could you provide a link for that? I wasn't aware of that.


OK, last post. A lot of what I said was based on my understanding that 
people
can check in non-trivial changes to Classpath without formal approval or 
review.


Apparently I was wrong, and if anyone would kindly show me the evidence 
of this

formal approval process, I'd appreciate it. I've just reread
http://www.gnu.org/software/classpath/docs/hacking.html#SEC10 and I didn't
see any mention of it.

Andy


Re: Quality control and FOSS rant

2008-01-12 Thread Andy Tripp



Andrew John Hughes wrote:

On 11/01/2008, Mark Wielaard [EMAIL PROTECTED] wrote:
  

Hi Andy,



snip...
  

Again, sorry for the rant/troll.
  

No problem, but remember that it's a troll, because you're commenting
about something you don't know that much about.  Read into things a
little more and you'd probably have a greater appreciation for things,
even if you don't agree with them.



OK, and feel free to let me know which things you think I don't know
much about.
Otherwise, it comes across as a baseless personal attack.
  

I don't think they are baseless.
You have your way of doing business (http://jdkfixes.com/) and we have
our way. You are more than welcome to actually join any of the free
software projects (GNU Classpath, OpenJDK, IcedTea, BrandWeg, GCJ,
Kaffe, etc) and really participate in the community and shape its
directions. We even give you the freedom to do it completely like you
want to somewhere else on your own according to your own standards. If
all you want to do is just argue for argues sake and not actually
contribute to the development of the project I kindly ask you to do so
elsewhere.

He says ...you're commenting about something you don't know that much 
about. Whether that's
baseless or not has nothing to do with my way of doing business, what 
I'm allowed to contribute

to, or even whether I want to just argue for argues sake.



Re: Quality control and FOSS rant

2008-01-11 Thread Andy Tripp



Roman Kennke wrote:

That whole discussion is probably interesting but mostly pointless. Both
approaches (closed and open) apparently tend to produce relatively high
quality code (or really crappy code, happens in both camps), where with
the closed approach the developers (or vendors) have to take over 100%
responsibility (because the end user has no way to interact with the
development), 
That's an odd thing to say. I don't know why you might think that closed 
source developers have any
less customer contact that open source developers. It's true that many 
closed source shops
have some buffer(s) between the software developer and the end user, and 
in those cases

I guess the issue is whether that's a plus or a minus.

which usually makes things very formal and slow, where the
open approach relies very much on the end users reporting problems. 

Again, I don't know why you'd think that closed source doesn't do the same.

In
most active projects these are fixed really quickly, giving both the
developers and the end users a warm fuzzy feeling ;-) 
A quick fix (except for something completely trivial) always gives me a 
nervous feeling, not warm and fuzzy.
Maybe I'm in the minority there, and it probably is related to working 
on projects where the customer

is not a forgiving software-developer-type.

Labelling FOSS as
playground for bored developers is, uhm, strange. 

That was a response to the claim:

   Classpath bugs don't
   have such administration issues due to
   its longer history as a FOSS project and existing community-oriented fun
   development paradigm.

So I'm summarizing fun development paradigm as developer playground.




Re: Quality control and FOSS rant

2008-01-11 Thread Andy Tripp



Andrew John Hughes wrote:

(snip)
and anything
non-trivial has to be approved formally, again in public.  

Could you provide a link for that? I wasn't aware of that.

Things
probably have become a little lax of late, I'll admit, 
If you have a formal process which is enforced, then how can it become 
lax? At every project
I've been on, almost every developer would like to bypass the process on 
occassion. If there's

no process to stop that, then it's not much of a process.

Look on the Classpath mailing list archives and you will see evidence
of all this.
  
It's actually  Classpath mailing list archives that makes me feel like 
there's not enough process,
and I don't mean just over the last year or so. I would have expected 
far more substance - like

10x or 100x. Not just quantity but the content, too.

One example: a while ago, the issue of
how closely toString() methods should match whatever the JDK version 
produces. There was a
little discussion followed by a lead person summing it up as each 
developer should just do the
best he can. That could have been handled very differently, with huge 
amounts of discussion,
escalation, surveys of users, reviews of the project's stated goals, and 
maybe even a
completely different all toString() method need to match the JDK 
exactly, and all developers

must spend whatever time it takes to do it outcome under closed source.

I'm not saying one approach is necessarily better than the other. So 
when you say Classpath
has a clear and open development process which allows anyone to join 
in, that sounds good, but
may not be better than the alternative. In the example above, a top-down 
you will be

100% compatible edict could actually work well to help compatibility.

Quality control is not part of the administrative issues I was
referring to.  What I was referring to is the existence of a public
bug database, public patch discussion and a general open and
community-oriented process which are in the pipelines but don't yet
exist.  These are mainly social issues, not technical.  

I consider Sun's bug database public, but OK.

It will take
time for Sun engineers to adjust to growing and working with a FOSS
community around the OpenJDK.  The codebase may be mature and stable,
the community is still nascent.
  
And 'fun' is a very subjective term; I mean it in a very social sense,

of people working together and camaraderie -- no doubt the engineers
in Sun had equally as much fun creating the JDK as we have with GNU
Classpath.  My point was more that, so far, there is still a line
between 'them' and 'us'.  We haven't been invited to the OpenJDK party
inside Sun yet, so our only fun remains in the GNU Classpath project
.
  
Hmmm. Yes, closed source developers do have as much fun as open-source, 
at least in my experience.
As for being invited, I'm not sure what you're waiting for 
specifically, and maybe Sun doesn't either.
And whether or not you're invited, you can participate in OpenJDK any 
time you like. The bug
database is indeed public, the code is GPLv2, Sun employees are happy to 
have email patch discussions,
which you can make public if you like. I'm not sure what else you're 
looking for when you say
a general open and community-oriented process which are in the 
pipelines but don't yet exist, but
if it's something like just give me checking permissions and release 
builds much more often, I wouldn't

hold my breath.

Of course it wasn't a jab at Sun, I wouldn't be able to work on this
to start with if it wasn't for the hard work that's gone into the
OpenJDK release.  But I'm not going to lie and say everything in the
garden is rosy either.  I don't think you can generalise to all FOSS
projects; there are clearly different levels of quality control
required depending on the stability of a project.  If a project is
just starting either from scratch or on a major new release, you'd
expect to see a rash of development as new ideas are experimented
with, etc.  In contrast, you'd expect to see minor changes and bug
fixes to something pretty feature-stable (I guess something like the
coreutils which provide ls and friends).  GCC, for example, spends
more time in regression and bug-fixing mode than in feature addition.
  
Right, so if the quality control is getting in the way of fun, that's 
not going to change.
I guess the fact that you're going to try to patch Classpath is proof of 
that. It's your choice, of

course, but it's a shame to waste your time on that, IMO.

You mention the concept of a release several times.  One of the main
differences between FOSS and proprietary development is that you only
ever see the release in a proprietary project.  
Seems like every time a FOSS developer points out a difference between 
open and closed source,
my response is no, closed source is not that way at all. Why do you 
say that you only
see the release in the proprietary project? You can see every build of 
JDK6, for example.
The fact that OpenJDK is available 

Quality control and FOSS rant

2008-01-11 Thread Andy Tripp
Give the choice between the meant-to-be-serious guidelines, which I 
think can be paraphrased as:


 We really want to have a pretty open check-in policy. But this 
means that you should be extra careful if you check something in.


...and the meant-to-be-funny chart that shows everything going through 
code review, I think I'd
choose the code review. I hate code reviews as much as the next person, 
but if you're working on a
real-world, widely-used, huge application like JDK, the need for quality 
trumps the individual need to

avoid pain.




Hi Andy,

On Thu, 2008-01-10 at 12:22 -0500, Andy Tripp wrote:
/
// I suppose this is more of a troll than a criticism, sorry about that.

/
No worries. We know trolls and how to deal with them.
We do have a flow chart that people have to follow when contributing to
GNU Classpath. It is all very formal really:
http://gnu.wildebeest.org/~mark/patch.png 
http://gnu.wildebeest.org/%7Emark/patch.png

Seriously, follow the guidelines published at:
http://www.gnu.org/software/classpath/docs/hacking.html#SEC9
And at the developer wiki:
http://developer.classpath.org/mediation/ClasspathFirstSteps
and you will get a long way.

/ Again, sorry for the rant/troll.
/
It was fun. Keep it cool!

Cheers,

Mark




Re: Quality control and FOSS rant

2008-01-11 Thread Andrew John Hughes
On 11/01/2008, Mark Wielaard [EMAIL PROTECTED] wrote:
 Hi Andy,

snip...
Again, sorry for the rant/troll.
  
   No problem, but remember that it's a troll, because you're commenting
   about something you don't know that much about.  Read into things a
   little more and you'd probably have a greater appreciation for things,
   even if you don't agree with them.
  
  OK, and feel free to let me know which things you think I don't know
  much about.
  Otherwise, it comes across as a baseless personal attack.

 I don't think they are baseless.
 You have your way of doing business (http://jdkfixes.com/) and we have
 our way. You are more than welcome to actually join any of the free
 software projects (GNU Classpath, OpenJDK, IcedTea, BrandWeg, GCJ,
 Kaffe, etc) and really participate in the community and shape its
 directions. We even give you the freedom to do it completely like you
 want to somewhere else on your own according to your own standards. If
 all you want to do is just argue for argues sake and not actually
 contribute to the development of the project I kindly ask you to do so
 elsewhere.

 Thanks,

 Mark



I'm not going to further this discussion for the reasons Mark has
already outlined; I don't feel it's getting anyone anywhere fast and
this is not the appropriate place for such a long pointless debate
about such things -- try JavaLobby or Slashdot.  I do however feel I
should respond to your point about this being a personal attack.  It's
an interesting insight into your mindset if you would interpret what
was a mere statement of fact (you're a proprietary software developer
who has not actively participated in a FOSS project before) as such.

Thanks -- some of your comments were mildly entertaining for a little
while, but I think we're all a little bored now and would prefer to
move on.
-- 
Andrew :-)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net



Re: Quality control and FOSS rant

2008-01-11 Thread Mark Wielaard
Hi Andy,

On Thu, 2008-01-10 at 16:40 -0500, Andy Tripp wrote:
 I just want to chime in and question your assumptions about the best
 way to do things, especially if I think they involve assumptions about
 closed source that I don't think are true.

But this is the wrong list for that. This is the mailinglist for the GNU
Classpath developers that want to actually work together on technical
problems around Free Software. It isn't a list for Andy Tripp to have
random rants and trolls about his proprietary closed source fantasy
world.

   Again, sorry for the rant/troll.
  
  No problem, but remember that it's a troll, because you're commenting
  about something you don't know that much about.  Read into things a
  little more and you'd probably have a greater appreciation for things,
  even if you don't agree with them.

 OK, and feel free to let me know which things you think I don't know
 much about.
 Otherwise, it comes across as a baseless personal attack.

I don't think they are baseless.
You have your way of doing business (http://jdkfixes.com/) and we have
our way. You are more than welcome to actually join any of the free
software projects (GNU Classpath, OpenJDK, IcedTea, BrandWeg, GCJ,
Kaffe, etc) and really participate in the community and shape its
directions. We even give you the freedom to do it completely like you
want to somewhere else on your own according to your own standards. If
all you want to do is just argue for argues sake and not actually
contribute to the development of the project I kindly ask you to do so
elsewhere.

Thanks,

Mark




Re: Quality control and FOSS rant

2008-01-11 Thread Dalibor Topic

Mark Wielaard wrote:

You are more than welcome to actually join any of the free
software projects (GNU Classpath, OpenJDK, IcedTea, BrandWeg, GCJ,
Kaffe, etc) and really participate in the community and shape its
directions.
What has the Kaffe project done to deserve such draconian punishment? 
Throwing more

people on a late project won't fix it ... :)

cheers,
dalibor topic



Re: Quality control and FOSS rant

2008-01-10 Thread Mark Wielaard
Hi Andy,

On Thu, 2008-01-10 at 12:22 -0500, Andy Tripp wrote:

 I suppose this is more of a troll than a criticism, sorry about that.

No worries. We know trolls and how to deal with them.
We do have a flow chart that people have to follow when contributing to
GNU Classpath. It is all very formal really:
http://gnu.wildebeest.org/~mark/patch.png

Seriously, follow the guidelines published at:
http://www.gnu.org/software/classpath/docs/hacking.html#SEC9
And at the developer wiki:
http://developer.classpath.org/mediation/ClasspathFirstSteps
and you will get a long way.

 Again, sorry for the rant/troll.

It was fun. Keep it cool!

Cheers,

Mark




Re: Quality control and FOSS rant

2008-01-10 Thread Roman Kennke
Hi Andy,

  Comments and criticisms welcome.

 I suppose this is more of a troll than a criticism, sorry about that.
 
  Classpath bugs don't
  have such administration issues due to
  its longer history as a FOSS project and existing community-oriented fun
  development paradigm.
 Wouldn't it be more accurate to say that Classpath lacks the basic 
 quality controls that OpenJDK has?

Classpath and most FOSS projects for that matter work differently, but
still surprisingly well. From my experience with Classpath I can only
say the following:

- We have an extensive unit testsuite (Mauve) that has been developed
alongside with Classpath. Many bugs got a corresponding Mauve test and a
couple of regressions have been caught that way. While not beeing
mandadory for any patch to go in, many developers have taken the
responsibility to write tests and look out for regressions before
committing. Of course, that has not always been the case, I am myself
guilty of quickly checking in code that has not been checked that way.
- The quick turnaround between the Classpath developers and users
resulted in a much more efficient handling of bugs (IMO). This, together
with the first point, has helped _a_lot_ to keep the overall quality
suprisingly high, despite the apparent lack of formal processes (except
the ones that Mark already mentioned).

That whole discussion is probably interesting but mostly pointless. Both
approaches (closed and open) apparently tend to produce relatively high
quality code (or really crappy code, happens in both camps), where with
the closed approach the developers (or vendors) have to take over 100%
responsibility (because the end user has no way to interact with the
development), which usually makes things very formal and slow, where the
open approach relies very much on the end users reporting problems. In
most active projects these are fixed really quickly, giving both the
developers and the end users a warm fuzzy feeling ;-) Labelling FOSS as
playground for bored developers is, uhm, strange. But yeah, now that
Classpath has lost most of its end users, we might end up like that ;-)
I don't care, I'll continue anyway.

Cheers, Roman
-- 
http://kennke.org/blog/




Re: Quality control and FOSS rant

2008-01-10 Thread Andrew John Hughes
On 10/01/2008, Andy Tripp [EMAIL PROTECTED] wrote:
 
 
  Comments and criticisms welcome.
 
 I suppose this is more of a troll than a criticism, sorry about that.


That's okay -- as Mark says, it's nothing new.

  Classpath bugs don't
  have such administration issues due to
  its longer history as a FOSS project and existing community-oriented fun
  development paradigm.
 Wouldn't it be more accurate to say that Classpath lacks the basic
 quality controls that OpenJDK has?
 Such as the requirement that all changes be peer-reviewed and signed off
 by at least two other developers with knowledge about
 the changed code, and extensive regression testing before incorporating
 into a release.


I'm not implying that quality control is not important -- far from it.
 And, again as Mark says, Classpath does have quality controls.  All
patches are posted _publically_ for review by _all_ and anything
non-trivial has to be approved formally, again in public.  Things
probably have become a little lax of late, I'll admit, but that's
because Classpath development has been an uphill chase against Sun's
development of the JDK and hence very active with more trivial patches
than most projects (e.g. many patches just provide the code for a
public interface which is largely just copying the method signatures
and creating our own documentation).  You can't apply the same rules
unilaterally.  OpenJDK is a much more stable codebase and as such I'd
expect slower response times and more care to be taken.  Classpath
development was much slower paced when I first started back in 2004,
with patch approval taking at least a week and required on each and
every one as you state.

Each release (which isn't the same as CVS) goes through weeks of
regression testing and bug fixing beforehand.  And of course, we have
a clear and open development process which allows anyone to join in,
whether that's by merely submitting bugs or helping us clear them.
Look on the Classpath mailing list archives and you will see evidence
of all this.

 You may consider these as just annoying administration issues, but
 others consider it basic quality control, as essential
 as being sure that the code compiles.

 And while I'm sure it makes for fun development, I'm not so sure that
 it's good for ensuring quality.

 You might want to consider having Classpath follow some basic quality
 measures. It will make the work
 less fun, but it's also fun to end up with a good quality product. And
 if people only work on the fun stuff,
 the product might never actually finish.


Quality control is not part of the administrative issues I was
referring to.  What I was referring to is the existence of a public
bug database, public patch discussion and a general open and
community-oriented process which are in the pipelines but don't yet
exist.  These are mainly social issues, not technical.  It will take
time for Sun engineers to adjust to growing and working with a FOSS
community around the OpenJDK.  The codebase may be mature and stable,
the community is still nascent.

And 'fun' is a very subjective term; I mean it in a very social sense,
of people working together and camaraderie -- no doubt the engineers
in Sun had equally as much fun creating the JDK as we have with GNU
Classpath.  My point was more that, so far, there is still a line
between 'them' and 'us'.  We haven't been invited to the OpenJDK party
inside Sun yet, so our only fun remains in the GNU Classpath project
.
 I realize you weren't trying to put down Sun and its process, and I'm
 being overly defensive. It's just that
 I don't see how FOSS developers can continually just brush off the
 issue. It takes months to get a fix
 into Java, and only minutes to get a fix into Classpath. The goal of
 Java is to be a complete, stable,
 quality release. If Classpath's goal is just to provide a fun playground
 for developers, that's one thing. But if Classpath's
 goals are the same as Java's goals, then someone's process is wrong.
 Either those
 quality controls are needed or they're not. It wouldn't be a big deal if
 the common thinking was that FOSS projects
 like Classpath are just toys for developer enjoyment, but I frequently
 see claims that FOSS applications are
 on par with the quality in closed source, or even better quality.


Of course it wasn't a jab at Sun, I wouldn't be able to work on this
to start with if it wasn't for the hard work that's gone into the
OpenJDK release.  But I'm not going to lie and say everything in the
garden is rosy either.  I don't think you can generalise to all FOSS
projects; there are clearly different levels of quality control
required depending on the stability of a project.  If a project is
just starting either from scratch or on a major new release, you'd
expect to see a rash of development as new ideas are experimented
with, etc.  In contrast, you'd expect to see minor changes and bug
fixes to something pretty feature-stable (I guess something like the
coreutils 

Re: Quality control and FOSS rant

2008-01-10 Thread Andrew John Hughes
snip...
With
 the closed approach the developers (or vendors) have to take over 100%
 responsibility (because the end user has no way to interact with the
 development), which usually makes things very formal and slow, where the
 open approach relies very much on the end users reporting problems. In
 most active projects these are fixed really quickly, giving both the
 developers and the end users a warm fuzzy feeling ;-)

I think this says it all and is my core point too really.  There's a
lot to be said for feedback and interaction with your users that's
often overlooked.  All the ideas of complicated quality control
processes in the world is not going to make a user feel as loved as
seeing someone responding quickly to their bug and fixing it in a
short space of time. With a proprietary process model, it goes in the
big black box and then you sit and wait to see if it will ever come
out again.  Just look at the IcedTea bug tracker and you will see this
-- lots of bugs waiting on responses from Sun.  The sooner the bug
process is opened up, the better.

Labelling FOSS as
 playground for bored developers is, uhm, strange. But yeah, now that
 Classpath has lost most of its end users, we might end up like that ;-)
 I don't care, I'll continue anyway.


Indeed.  The idea is just too strange to even be worth arguing with --
there are plenty of examples of where its been beneficial other than
to some warped developers that I need not go into here.

 Cheers, Roman
 --
 http://kennke.org/blog/




Thanks,
-- 
Andrew :-)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net



Re: Quality control and FOSS rant

2008-01-10 Thread Robert Lougher
Hi,

I've nothing to add to the defense of GNU Classpath beyond what Roman
and Andrew have already said.  Instead I'd like to point out that Andy
Tripp isn't new to this, and nobody should waste any more time:

http://www.javalobby.org/java/forums/t53790.html

Rob.



Re: Quality control and FOSS rant

2008-01-10 Thread Dalibor Topic

Andy Tripp wrote:

Also, as FOSS developers start to contribute
to OpenJDK, I'm already seeing suggestions for changes where the 
rationale seems to be because that's
how FOSS projects do things, with of course the underlying assumption 
that that makes it a reasonable approach.
That's how discussions with incomplete information work, people make 
assumptions, then discuss them, and
come to conclusions based on the new information they receive during the 
discussion.


At the end of the day, cool code beats heated discussions, so people who 
care about their ideas deeply, will
simply go out and implement them. Discussing actual code beats 
discussing ideas, since the properties of the code

can be measured, while properties of ideas are necessarily speculative.

Properties of administrative processes can be measured by the quality of 
the output, and the output from Sun's processes
is able to run more applications than the output of other processes 
(Classpath, Harmony, etc.), so Sun's process seems to

work just fine for producing this kind of software.

Naturally, opening up the code base leads to opportunities to reevaluate 
such processes in light of the further goals of
the project, and to optimize them accordingly. Sun ended up switching 
its OpenJDK development team away from
(non-free) TeamWare to (FOSS) Mercurial, for example, and that's been, 
for all I've heard from Sun's engineers at
conferences and on IRC, a reasonable and quite useful thing to do, 
beside being the way things are done in FOSS
projects (use the best FOSS tools to get the job done). Similarly, Sun 
now has the opportunity to reevaluate the code
review tools and the bug tracker used for (Open)JDK, and to improve 
their processes further to allow collaboration

to happen at more interaction points more easily, than is currently viable.

Unfortunately, such infrastructural progress, as necessary as it is as 
OpenJDK evolves to tear down the 'fourth
wall' [1], is nothing the FOSS community outside Sun can really help 
much with, other than contributing to the
discussion of different alternatives, as only Sun's engineers can really 
know how their processes need to work
to fit well with what they are doing at their day jobs, beside OpenJDK 
(the non-open JDK product, for example).


cheers,
dalibor topic

[1] http://en.wikipedia.org/wiki/Fourth_wall



Re: Quality control and FOSS rant

2008-01-10 Thread Archie Cobbs
And in case anyone is under any illusions, Sun's record of fixing bugs (and
not re-breaking them) is poor.

The number #1 voted bug* in their bug database has been unfixed for over 5
YEARS!

-Archie

* http://bugs.sun.com/view_bug.do?bug_id=4670071

-- 
Archie L. Cobbs


Re: Quality control and FOSS rant

2008-01-10 Thread Mario Torre
Il giorno gio, 10/01/2008 alle 20.03 +0100, Mark Wielaard ha scritto:

 No worries. We know trolls and how to deal with them.
 We do have a flow chart that people have to follow when contributing to
 GNU Classpath. It is all very formal really:
 http://gnu.wildebeest.org/~mark/patch.png

Oh, dear... Why no one ever told me about that :P

Mario
-- 
Lima Software - http://www.limasoftware.net/
GNU Classpath Developer - http://www.classpath.org/
Fedora Ambassador - http://fedoraproject.org/wiki/MarioTorre
Jabber: [EMAIL PROTECTED]
pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF
Fingerprint: BA39 9666 94EC 8B73 27FA  FC7C 4086 63E3 80F2 40CF

Please, support open standards:
http://opendocumentfellowship.org/petition/
http://www.nosoftwarepatents.com/