Hi there,
in the first round of the rant I already tried to find an answer to why
you where using maven in the first place.
Personally, I had my fights with maven; especially wrinting my own
plugins; but with the ecosystem of build
and quality management tools surrounding it I still consider it superior
to the other things I have used.
If you don't like XML, why not look at polygloott maven; it seems you
can write pom files in other languages now;
if Ruby, Groovy and Scala isn't to your liking, maybe zyou can start a
Prolog subproject there ...
Programmers will always waste their time on current things as it pays
the rent and stuff; sometimes something new
and better is invented and we will be wasting our stuff on that.
Personally I have wasted much time on a lot different
technologies, but whenever I felt about something like you feel on maven
I kind of walked away from it. Programming
should be fun...remember ? :)
One thing, if your Prolog based, perfect build tool is ready to be
released; perhaps then you could come back to this rant
and announce it ...
My 0.02€
Andreas
Am 10/23/10 11:15 PM, schrieb Kenneth McDonald:
First, note that I did tag this as repetitive: You don't need to be reading it
if you don't want to be rehashing recent issues.
<beginning of rant>
However, I want to give a concrete example of just why I dislike maven (and all
other XML solutions) so far. I am trying to do what I think should be a
reasonably easy thing to do--upload onto github (or something similar) current
documentation for the project I have hosted on github. So far the best solution
I've seen involves making another branch of my project and including the
documentation there. This is fundamentally wrong (the docs are _part_ of the
project), but I'm not blaming maven here. It's probably a git thing I don't yet
understand.
However, once we get past that, the pom files necessary to upload the docs are
daunting, to say the least.
Even more than that, though, the pom files are fundamentally unreadable. Oh I don't mean
you can't puzzle through them in an afternoon or so if you have the time. Of course you
can. But (and I think this deserves to be in caps), XML FILES ARE FUNDAMENTALLY WRITTEN
WITH THE EASE OF THE COMPUTER, NOT THE HUMAN, AT HAND. I mean, that's just a simple
statement of fact, not an opinion. I just don't get how people can be so oblivious to
this. Would you really want to program in a dialect of XML? How many people do you know
who do so? Do you really think that all of the work that has been done on parsers and
compilers over the last thirty years has been in vain because, realistically, humans
should just program in XML? I open up an XML file, and unless I'm quite familiar with the
"dialect" of XML in use, simply understanding the structure takes at least half
an hour. THEN I need to understand the content. There is too much redundancy, too few
structural cues to indicate meaning, too few keywords (yes, they're important!), too much
nesting, too little ordering in that nesting...I could go on.
Of course people will dispute this. They're wrong. If they were right, we would
have had something like XML for all our programming needs twenty years ago.
Sorry people, you're just plain wrong.
Now, what are the claims made for (or implied by) maven:
1) That it is declaratively, not procedurally, based.
1-a) Whoop-te-do. So are makefiles. Sure, they've accumulated a lot of crud
over the years (and a rewrite _like_ maven was probably necessary to clear this
out), but makefiles are, at their core pretty simple. You have a build target.
It depends on other build targets. You build those other targets, and then you
build what you're working on. Is this revolutionary?
1-b) I've mentioned this before, but Prolog has been doing declarative
programming for years. Without obscure semantics. With lots of extra expressive
power, like list manipulations, arithmetic, etc. etc. With an understandable
syntax. With lots of extra libraries. Would it have really been so bad to base
a declarative codebase on Prolog, a mature, proven technology?
2) XML is standards based.
2-a) Sure. Like Prolog. Or even (choose a variant of) LISP, for god's sake. All of these
"languages" are standards compliant until they're not. XML will suffer the same
fate.
3) XML makes it easy to interoperate with other systems.
3-b) This is the biggest piece of bullshit I've ever heard. It totally confuses a data format
(let's say, "ASCII") with a data standard (let's say, "CORBA", though that's
stretching things.) XML is a data format, pure and simple. No matter how hard it tries (remember
DTDs?), it cannot attain the status of a data standard, because the needs of data standards evolve
and continually require new things. So a data format such as ASCII, can have quite a long life--but
trying to do the same thing to a data standard is a pointless exercise, and will not hold.
4) Apache is wedded to XML.
4-a) This one really pisses me off because I suspect it's absolutely true. I
believe that Apache has a large number of very talented programmers, and I
believe they are, in large respect, wasting their time because they have come
to worship XML. I don't get it. There are things for which XML is appropriate.
There are also so many things for which it's not, that why would you spend all
of your time there? I don't have an answer.
Anyway
</end of rant>
Ken
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]