ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Drew Davidson <>
Subject Re: Determine target's name
Date Thu, 28 Feb 2002 19:58:02 GMT
Stefan Bodewig wrote:

> On Tue, 26 Feb 2002, Drew Davidson <> wrote:
> > Why is it such a huge deal and so much resistance to just give the
> > build file access to the current target??
> There is a huge resistance to add any feature unless there is a
> compelling reason to add it.  Every feature that is not needed just
> increases the maintainance burden, the committers tend to add features
> when they are needed, but not in advance.

Well if you want to reduce the maintenance burden then rm -fr * the whole

Ok, that was rude.

The point remains, however, that this is a lame excuse.  Systems built by
accretion (like ant appears to be) mostly end up being chaotic unorganized
piles of junk.  This is because the basic principles and fundamentals of the
code are not well thought out.  Systems that have a basis of well thought out
design usually are a joy to program to: they allow for expansion in natural
ways and you don't end up having to "hack in" stuff to support extra features.

I haven't looked at any ant source so I can't really say that this is
so...just going by your comment that they add features as needed which leads
me to believe that the code is being crafted, not designed.

> Compare with the YAGNI practice of Extreme Programming
> <>.

To which I retort:

This XP business is good and all [I am involved with XP here at eBlox and I
have many good things to say about it], but it looks like it works for small
target applications.  If you are building a system that is more than a toy
then you will have complex interactions between objects and you just can't
dive in and start hacking and expect that the details will take care of
themselves.  The "we can do it later" principle of XP is superceded by the
principle of "if you don't have time to do it right when will you find the
time to do it over?".

Target introspection is a good thing.  I've seen several good reasons on this
list for using it.  Every time it's posted the committers (and their shills)
all pop up with the same lame argument about either (a) "give us a valid use
case" with no idea at all as to what criteria is to be used for validating
this use case and (b) it's not needed (variation on [a] with a "shut up"

- Drew

To unsubscribe, e-mail:   <>
For additional commands, e-mail: <>

View raw message