Mark,

Over the years, I have always strived to listen to all the opinions voiced. I also try to accommodate opinions diverging from mine and when it boils down to a matter of taste, I tend to privilege the opinions of others over my own. Certainly, there are examples that go both ways.

From a more general perspective, we have to ask ourselves how we want to see the log4j code evolve. One approach, apparently advocated Curt, consists of religiously preserving 100% and absolute backward compatibility. In my opinion such an absolutist approach leads to either stagnation or to code so convoluted as to be unmaintainable.

Breaking compatibility, even in small ways, causes trouble and headaches. Naturally, non-compatible changes elicit opposition. However, in log4j 1.3, we are facing problems related to the behavior of appenders when they are in an erroneous state. My changes are intended to address this problem. I tried to explain my point of view to Curt over the phone for quite almost an hour. We seemed to have reached an agreement but one which did not survive the night. Obviously, you could not have known this when you wrote your comments.

Your words are quite harsh but I guess it goes with the territory. Keeping everyone happy is not exactly a piece of cake.


At 05:27 PM 2/26/2005, Mark Masterson wrote:
Hello Ceki,

Well, I'm not a committer, so experience tells me you'll completely ignore
my input and pretend as if it had never been voiced.

Nevertheless, as one of those poor schmucks who maintains an Appender
outside of the log4j base, I do have an opinion about this debate, and it's
certainly not favorable for you.

The core of Curt's argument, it seems to me, is that you -- dictatorially --
made these changes without discussing them with the list.

You are now claiming that they were only the beginning of some further
sweeping changes -- changes which you choose not to describe in any further
detail.

You are, in effect, asking the comitters to trust you -- blindly -- to make
infallible judgements with regard to the evolution and design of log4j.
Your changes will "improve the way appenders work", but you make no effort
to describe how, or why.

You are a brilliant developer, and there are plenty of historical reasons
for the committers to grant you the "freedom" that you are asking for.
Perhaps they will do so, as they often have in the past.

Nevertheless, you do not seem to have grapsed that the underlying issue that
this event has triggered is social, not technical.

The question that this argument exposes, I find, is the following:  Is log4j
Ceki's project, on which others may be allowed to work?  Or is it a true
collaborative project, on which Ceki just happens to be the founder?

I assume that the comitters will close ranks with you, and will collectively
force Curt to cease agitating, as has happened with regard to similar events
in the past.  I expect that Curt will "lose" the argument, and that there
will be no change in the way log4j is managed.  I also think that's
regrettable, and detrimental, and I simply couldn't ignore this opportunity
to comment on it.

For the record, I agree almost completely with the technical points that
Curt has raised.  You seem to be displaying an alarmingly casual attitude
towards the distinction between the Appender interface and the
AppenderSkeleton utility class, and your repeated comments, along the lines
of "Curt, today there is not a single appender which implements the Appender
interface without extending the AppenderSkeleton class" reinforce the
impression that, despite a great deal of hype about logging services, the
top level project, and so forth, everything that is not a part of "log4j"
is, from your perspective, a second class citizen.

Cheers,
Mark


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

-- Ceki G�lc�

  The complete log4j manual: http://www.qos.ch/log4j/



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to