Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Benson Margulies
On Tue, Sep 11, 2012 at 4:33 PM, Graham Leggett  wrote:
> On 11 Sep 2012, at 10:14 PM, Benson Margulies wrote:
>
>> I don't think it's useful to debate build tools and their builders or
>> tools on this list.
>
> I believe it is very useful. Many new users to maven don't fully understand 
> the problem maven tries to solve, and a discussion like this one will 
> hopefully shed more light on why maven approaches the build problem as it 
> does.

My personal opinion is that any valuable light is overwhelmed by all
the heat. However, as I seem to be unusual in holding this opinion, I
climb back under my bridge.


>
> Regards,
> Graham
> --
>

-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Ansgar Konermann
Am 11.09.2012 22:59 schrieb "Arnaud Héritier" :
>
> I find also such discussion interesting
> it is always good to know what is existing arround and if some inputs may
> drive to improve Maven itself.
> The fact to know also why Maven is here is an important thing to better us
> it.
> This is especially what we did with Nicolas De loof in our French book few
> years ago and readers loved a lot because they were able to understand why
> some choices were done in maven ..
>
> About Gradle, I studied it and tries to use it but for now I'm always not
> convinced about its ideology. I like to be free of my choices but I'm not
> sure that it is always a good thing. Standardization may be seen as a
> limitation but for whom ? For the team using it ? For people who will join
> later the project and will find something known ? For the transversal team
> in a company that will support dev teams ? Depending of the context, the
> "enforced" standardisation may be a good thing. I'm sure that a gradle
> build in experts hands may be magical but how often will it be the case
and
> for how many times ?
>
> What is fun is that this debate Gradle vs Maven makes me think to the
> debate Git vs SVN we have on the dev list.

Me too.

> What do we prefer ? Something
> powerful but perhaps to not put in all hands ? Or a common tool that is
> just doing the job ?

A tool which makes it likely that we achieve our goals easily.

What are our goals?

* issue control about what people do with maven source code?

* ensure plugin users know where their feedback should be sent to or where
to get help? How can this be done without interfering with other goals?

* Make contributing as easy as possible? If so: who are our potential new
contributors? Which tools do they like to use?

* Learn about what our users need? What other ways of doing this could be
advantageous, besides jira?

>
> Arnaud
>
>
> On Tue, Sep 11, 2012 at 10:33 PM, Graham Leggett  wrote:
>
> > On 11 Sep 2012, at 10:14 PM, Benson Margulies wrote:
> >
> > > I don't think it's useful to debate build tools and their builders or
> > > tools on this list.
> >
> > I believe it is very useful. Many new users to maven don't fully
> > understand the problem maven tries to solve, and a discussion like this
one
> > will hopefully shed more light on why maven approaches the build
problem as
> > it does.
> >
> > Regards,
> > Graham
> > --
> >
> >
>
>
> --
> -
> Arnaud Héritier
> 06-89-76-64-24
> http://aheritier.net
> Mail/GTalk: aherit...@gmail.com
> Twitter/Skype : aheritier


Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Arnaud Héritier
I find also such discussion interesting
it is always good to know what is existing arround and if some inputs may
drive to improve Maven itself.
The fact to know also why Maven is here is an important thing to better us
it.
This is especially what we did with Nicolas De loof in our French book few
years ago and readers loved a lot because they were able to understand why
some choices were done in maven ..

About Gradle, I studied it and tries to use it but for now I'm always not
convinced about its ideology. I like to be free of my choices but I'm not
sure that it is always a good thing. Standardization may be seen as a
limitation but for whom ? For the team using it ? For people who will join
later the project and will find something known ? For the transversal team
in a company that will support dev teams ? Depending of the context, the
"enforced" standardisation may be a good thing. I'm sure that a gradle
build in experts hands may be magical but how often will it be the case and
for how many times ?

What is fun is that this debate Gradle vs Maven makes me think to the
debate Git vs SVN we have on the dev list. What do we prefer ? Something
powerful but perhaps to not put in all hands ? Or a common tool that is
just doing the job ?

Arnaud


On Tue, Sep 11, 2012 at 10:33 PM, Graham Leggett  wrote:

> On 11 Sep 2012, at 10:14 PM, Benson Margulies wrote:
>
> > I don't think it's useful to debate build tools and their builders or
> > tools on this list.
>
> I believe it is very useful. Many new users to maven don't fully
> understand the problem maven tries to solve, and a discussion like this one
> will hopefully shed more light on why maven approaches the build problem as
> it does.
>
> Regards,
> Graham
> --
>
>


-- 
-
Arnaud Héritier
06-89-76-64-24
http://aheritier.net
Mail/GTalk: aherit...@gmail.com
Twitter/Skype : aheritier


Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Graham Leggett
On 11 Sep 2012, at 10:14 PM, Benson Margulies wrote:

> I don't think it's useful to debate build tools and their builders or
> tools on this list.

I believe it is very useful. Many new users to maven don't fully understand the 
problem maven tries to solve, and a discussion like this one will hopefully 
shed more light on why maven approaches the build problem as it does.

Regards,
Graham
--



smime.p7s
Description: S/MIME cryptographic signature


Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Benson Margulies
I don't think it's useful to debate build tools and their builders or
tools on this list.

On Tue, Sep 11, 2012 at 3:26 PM, Anders Hammar  wrote:
>> If they bring their ideas here, they usually get the kind of advice that
>> leads to good practices.
>
> Well, the problem is that they don't go here. They just happily go on
> trying to invent the wheel (but a square one).
>
> /Anders
>
>> They also have to frame their questions at the goal level rather than the
>> technical level.
>> My only concern is that sometimes the experts here get into the technical
>> solution before asking about the goal.
>> As you point out, Maven can be made to do many things that should not be
>> done. It is hard to do but there is enough expertise in this forum to make
>> it happen.
>>
>>
>> Ron
>>
>>>
>>> /Anders
>>>
>>> On Tue, Sep 11, 2012 at 7:45 PM, Graham Leggett  wrote:

 On 11 Sep 2012, at 7:22 PM, Curtis Rueden wrote:

>> Just let a few juniors touch the build and you are doomed pretty
>> quickly.
>
> I agree, and would generalize this statement to any build system I've
> ever
> designed or worked with: shell scripts, Makefiles, Ant, Maven... it
> doesn't
> matter. A build is a very finicky thing, especially for medium-to-large
> projects, and increasingly so as it adds gravy to the build process.

 A finicky build is a symptom of poor design, and if your design is poor
 no tool, unit test, CI, package, strategy or methodology is going to
 compensate for it. Discipline is the art of knowing why not to do 
 something,
 and is a difficult thing to teach.

 There is a tremendous amount of waste that is perpetrated in software
 engineering, software is built to be disposable, with very short shelf
 lives. Maven challenges this trend by encouraging convention, 
 repeatability,
 and code longevity, and this is a very good thing.

 Regards,
 Graham
 --

>>> -
>>> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
>>> For additional commands, e-mail: users-h...@maven.apache.org
>>>
>>>
>>
>>
>> --
>> Ron Wheeler
>> President
>> Artifact Software Inc
>> email: rwhee...@artifact-software.com
>> skype: ronaldmwheeler
>> phone: 866-970-2435, ext 102
>>
>>
>> -
>> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
>> For additional commands, e-mail: users-h...@maven.apache.org
>>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> For additional commands, e-mail: users-h...@maven.apache.org
>

-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Anders Hammar
> If they bring their ideas here, they usually get the kind of advice that
> leads to good practices.

Well, the problem is that they don't go here. They just happily go on
trying to invent the wheel (but a square one).

/Anders

> They also have to frame their questions at the goal level rather than the
> technical level.
> My only concern is that sometimes the experts here get into the technical
> solution before asking about the goal.
> As you point out, Maven can be made to do many things that should not be
> done. It is hard to do but there is enough expertise in this forum to make
> it happen.
>
>
> Ron
>
>>
>> /Anders
>>
>> On Tue, Sep 11, 2012 at 7:45 PM, Graham Leggett  wrote:
>>>
>>> On 11 Sep 2012, at 7:22 PM, Curtis Rueden wrote:
>>>
> Just let a few juniors touch the build and you are doomed pretty
> quickly.

 I agree, and would generalize this statement to any build system I've
 ever
 designed or worked with: shell scripts, Makefiles, Ant, Maven... it
 doesn't
 matter. A build is a very finicky thing, especially for medium-to-large
 projects, and increasingly so as it adds gravy to the build process.
>>>
>>> A finicky build is a symptom of poor design, and if your design is poor
>>> no tool, unit test, CI, package, strategy or methodology is going to
>>> compensate for it. Discipline is the art of knowing why not to do something,
>>> and is a difficult thing to teach.
>>>
>>> There is a tremendous amount of waste that is perpetrated in software
>>> engineering, software is built to be disposable, with very short shelf
>>> lives. Maven challenges this trend by encouraging convention, repeatability,
>>> and code longevity, and this is a very good thing.
>>>
>>> Regards,
>>> Graham
>>> --
>>>
>> -
>> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
>> For additional commands, e-mail: users-h...@maven.apache.org
>>
>>
>
>
> --
> Ron Wheeler
> President
> Artifact Software Inc
> email: rwhee...@artifact-software.com
> skype: ronaldmwheeler
> phone: 866-970-2435, ext 102
>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> For additional commands, e-mail: users-h...@maven.apache.org
>

-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Ron Wheeler

On 11/09/2012 2:51 PM, Anders Hammar wrote:

I'd just like to add that although Maven encourages convention over
configuration etc etc, it will by no means by itself ensure that you
get good build "scripts" (poms aren't scripts, but I think you know
what I mean). I've seen so many weird/strange/bad/fascinating
solutions incorporated into customers' Maven builds. Possibly, it is a
problem that too many people think that Maven by itself will give you
good standard builds that they don't worry about having just about
anyone go hack the poms.
If they bring their ideas here, they usually get the kind of advice that 
leads to good practices.
They also have to frame their questions at the goal level rather than 
the technical level.
My only concern is that sometimes the experts here get into the 
technical solution before asking about the goal.
As you point out, Maven can be made to do many things that should not be 
done. It is hard to do but there is enough expertise in this forum to 
make it happen.



Ron



/Anders

On Tue, Sep 11, 2012 at 7:45 PM, Graham Leggett  wrote:

On 11 Sep 2012, at 7:22 PM, Curtis Rueden wrote:


Just let a few juniors touch the build and you are doomed pretty quickly.

I agree, and would generalize this statement to any build system I've ever
designed or worked with: shell scripts, Makefiles, Ant, Maven... it doesn't
matter. A build is a very finicky thing, especially for medium-to-large
projects, and increasingly so as it adds gravy to the build process.

A finicky build is a symptom of poor design, and if your design is poor no 
tool, unit test, CI, package, strategy or methodology is going to compensate 
for it. Discipline is the art of knowing why not to do something, and is a 
difficult thing to teach.

There is a tremendous amount of waste that is perpetrated in software 
engineering, software is built to be disposable, with very short shelf lives. 
Maven challenges this trend by encouraging convention, repeatability, and code 
longevity, and this is a very good thing.

Regards,
Graham
--


-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org





--
Ron Wheeler
President
Artifact Software Inc
email: rwhee...@artifact-software.com
skype: ronaldmwheeler
phone: 866-970-2435, ext 102


-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Anders Hammar
I'd just like to add that although Maven encourages convention over
configuration etc etc, it will by no means by itself ensure that you
get good build "scripts" (poms aren't scripts, but I think you know
what I mean). I've seen so many weird/strange/bad/fascinating
solutions incorporated into customers' Maven builds. Possibly, it is a
problem that too many people think that Maven by itself will give you
good standard builds that they don't worry about having just about
anyone go hack the poms.

/Anders

On Tue, Sep 11, 2012 at 7:45 PM, Graham Leggett  wrote:
> On 11 Sep 2012, at 7:22 PM, Curtis Rueden wrote:
>
>>> Just let a few juniors touch the build and you are doomed pretty quickly.
>>
>> I agree, and would generalize this statement to any build system I've ever
>> designed or worked with: shell scripts, Makefiles, Ant, Maven... it doesn't
>> matter. A build is a very finicky thing, especially for medium-to-large
>> projects, and increasingly so as it adds gravy to the build process.
>
> A finicky build is a symptom of poor design, and if your design is poor no 
> tool, unit test, CI, package, strategy or methodology is going to compensate 
> for it. Discipline is the art of knowing why not to do something, and is a 
> difficult thing to teach.
>
> There is a tremendous amount of waste that is perpetrated in software 
> engineering, software is built to be disposable, with very short shelf lives. 
> Maven challenges this trend by encouraging convention, repeatability, and 
> code longevity, and this is a very good thing.
>
> Regards,
> Graham
> --
>

-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Graham Leggett
On 11 Sep 2012, at 7:22 PM, Curtis Rueden wrote:

>> Just let a few juniors touch the build and you are doomed pretty quickly.
> 
> I agree, and would generalize this statement to any build system I've ever
> designed or worked with: shell scripts, Makefiles, Ant, Maven... it doesn't
> matter. A build is a very finicky thing, especially for medium-to-large
> projects, and increasingly so as it adds gravy to the build process.

A finicky build is a symptom of poor design, and if your design is poor no 
tool, unit test, CI, package, strategy or methodology is going to compensate 
for it. Discipline is the art of knowing why not to do something, and is a 
difficult thing to teach.

There is a tremendous amount of waste that is perpetrated in software 
engineering, software is built to be disposable, with very short shelf lives. 
Maven challenges this trend by encouraging convention, repeatability, and code 
longevity, and this is a very good thing.

Regards,
Graham
--



smime.p7s
Description: S/MIME cryptographic signature


Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Brian Topping

On Sep 11, 2012, at 8:22 PM, Curtis Rueden  wrote:

> I'm not advocating that junior developers not be allowed to touch the
> build—otherwise how will they learn?—but I strongly recommend code review
> of any changes a junior developer makes to a build system.

Kind of roaming away from Maven v. Gradle, but a process that I've grown 
comfortable with in large groups is a) locking all the POMs for anyone who's 
not a "POM mentor", b) buddying everyone else with a mentor to submit their 
changes, and c) anyone starting a new subproject project gets full access to 
their own POM for the life of their project.

This tends to lessen POM damage as mentors take responsibility for their 
mentees, causes mentees to think harder about whether they really need a POM 
change to move forward (they learn it's certainly more expedient if they 
don't!), but still allows folks entrusted to create new modules the freedom to 
roam, make mistakes with projects that are not part of the mainline build yet, 
and generally get experience with POMs that they wouldn't get with patches 
alone.  

Other tweaks are possible, such as having mentors being required to talk to 
architects for certain classes of changes (such as dependency changes).  Note 
that dependency changes can also be managed by locking down a repository 
manager and disabling auto downloading.

Brian
-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Curtis Rueden
Hi everyone,

> Just let a few juniors touch the build and you are doomed pretty quickly.

I agree, and would generalize this statement to any build system I've ever
designed or worked with: shell scripts, Makefiles, Ant, Maven... it doesn't
matter. A build is a very finicky thing, especially for medium-to-large
projects, and increasingly so as it adds gravy to the build process.

I'm not advocating that junior developers not be allowed to touch the
build—otherwise how will they learn?—but I strongly recommend code review
of any changes a junior developer makes to a build system. In particular,
my experience with most junior developers is that they prefer graphical
tools and IDEs over the command line. So even though Maven is much more
standardized than, say, Ant, it is easy to screw up a Maven build by
editing the POMs using e.g. the Eclipse/M2E tabbed POM editor. (One of many
examples: if you use properties to define dependency versions, the
graphical editor will not know to use them when adding new dependencies.)

[Buildr] was great too in the beginning, but after 3 years the projects
> were insanely broken and we moved them back to maven again.


I definitely agree that making it harder to swim upstream against the
convention also makes it harder to wreck a build. That said, breaking
complex technical stuff will always be extremely doable for the clueless.
CI and unit testing (and someone with a clue) to the rescue!

Regards,
Curtis


On Tue, Sep 11, 2012 at 5:04 AM, Mark Struberg  wrote:

> Gradle allows to hack something much quicker. In Maven you would need to
> write a plugin.
>
> Otoh I've seen a Gradle project which went from great to barely
> maintainable in almost under a year.
> Just let a few juniors touch the build and you are doomed pretty quickly.
> The approach of gradle is not new. Check buildr [1] which does almost the
> same but in ruby instead of groovy. And I think it even predates gradle.
> That was great too in the beginning, but after 3 years the projects were
> insanely broken and we moved them back to maven again.
>
> "With great power comes great responsibility" (Starwars? Kung-fu panda?
> not sure anymore :)
>
> LieGrue,
> strub
>
>
> [1] http://buildr.apache.org/
>
>
>
>
> - Original Message -
> > From: Paul King 
> > To: Maven Users List 
> > Cc:
> > Sent: Tuesday, September 11, 2012 11:30 AM
> > Subject: Re: Arguments for Maven vs. Gradle
> >
> > You will have to make your own assessment but most new projects I see in
> my
> > customer base are moving over to gradle. It offers the same convention
> over
> > configuration advantages of Maven but with some flexibility if you need
> it,
> > plus a whole swag of benefits that are gradle specific. The dependency
> > management story is practically identical to the maven world.
> >
> > Cheers, Paul.
> >
> > On Tue, Sep 11, 2012 at 4:28 PM, Baptiste MATHUS  wrote:
> >
> >>  (Disclaimer: I only know Gradle from outside. I never used it more
> than 2
> >>  minutes, but I read some things about and saw a prez at our JUG.)
> >>  Gradle has a very different approach: where Maven values sometimes not
> much
> >>  flexibility at first sight (to improve build genericity, as already
> said),
> >>  Gradle lets you change anything you want. The good thing is that Gradle
> >>  comes with some standard process if you want to go Maven-style
> (meaning the
> >>  standard fits your needs). But then you can plug whatever you want,
> the way
> >>  you want, anytime you want (using Groovy scripting code).
> >>
> >>  By the way, that last statement is the kind of things that makes Gradle
> >>  appear to Maven-fans as no-good. In fact, for the record, Maven 1 was
> using
> >>  a scripting language (Jelly), and being able to clutter your build file
> >>  with scripts is just a bad idea.
> >>
> >>  About Maven coordinates, yes Gradle can use them. I seem to remember
> >>  they're actually using Ivy as their dependency management tool.
> >>  By the way, you can disable transitive dependencies, etc.
> >>
> >>
> >
> http://gradle.org/docs/current/userguide/dependency_management.html#defineConfiguration
> >>
> >>  Cheers
> >>
> >>  2012/9/10 KARR, DAVID 
> >>
> >>  > > -Original Message-
> >>  > > From: Ron Wheeler [mailto:rwhee...@artifact-software.com]
> >>  > > Sent: Sunday, September 09, 2012 4:43 PM
> >>  > > To: users@maven.apache.org
> >>  > > Subject: Re: Arguments for Maven vs. Gradle
> >>  > &

Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Mark Struberg
Oki, I confess... hang me now

"line on the left, only one cross each person"



;)

LieGrue,
stru



- Original Message -
> From: "Thiessen, Todd (Todd)" 
> To: Maven Users List ; Mark Struberg 
> 
> Cc: 
> Sent: Tuesday, September 11, 2012 2:35 PM
> Subject: RE: Arguments for Maven vs. Gradle
> 
>>  "With great power comes great responsibility" (Starwars? Kung-fu 
> panda?
>>  not sure anymore :)    
> 
> Spiderman. Come on now... You get points for maven knowledge but minus points 
> for missing the Spiderman reference.  Three cheers for Stan Lee ;-).
> 
> -
> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> For additional commands, e-mail: users-h...@maven.apache.org
>

-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



RE: Arguments for Maven vs. Gradle

2012-09-11 Thread Thiessen, Todd (Todd)
> "With great power comes great responsibility" (Starwars? Kung-fu panda?
> not sure anymore :)   

Spiderman. Come on now... You get points for maven knowledge but minus points 
for missing the Spiderman reference.  Three cheers for Stan Lee ;-).

-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Mark Struberg
Gradle allows to hack something much quicker. In Maven you would need to write 
a plugin. 

Otoh I've seen a Gradle project which went from great to barely maintainable in 
almost under a year.
Just let a few juniors touch the build and you are doomed pretty quickly.
The approach of gradle is not new. Check buildr [1] which does almost the same 
but in ruby instead of groovy. And I think it even predates gradle.
That was great too in the beginning, but after 3 years the projects were 
insanely broken and we moved them back to maven again.

"With great power comes great responsibility" (Starwars? Kung-fu panda? not 
sure anymore :)

LieGrue,
strub


[1] http://buildr.apache.org/




- Original Message -
> From: Paul King 
> To: Maven Users List 
> Cc: 
> Sent: Tuesday, September 11, 2012 11:30 AM
> Subject: Re: Arguments for Maven vs. Gradle
> 
> You will have to make your own assessment but most new projects I see in my
> customer base are moving over to gradle. It offers the same convention over
> configuration advantages of Maven but with some flexibility if you need it,
> plus a whole swag of benefits that are gradle specific. The dependency
> management story is practically identical to the maven world.
> 
> Cheers, Paul.
> 
> On Tue, Sep 11, 2012 at 4:28 PM, Baptiste MATHUS  wrote:
> 
>>  (Disclaimer: I only know Gradle from outside. I never used it more than 2
>>  minutes, but I read some things about and saw a prez at our JUG.)
>>  Gradle has a very different approach: where Maven values sometimes not much
>>  flexibility at first sight (to improve build genericity, as already said),
>>  Gradle lets you change anything you want. The good thing is that Gradle
>>  comes with some standard process if you want to go Maven-style (meaning the
>>  standard fits your needs). But then you can plug whatever you want, the way
>>  you want, anytime you want (using Groovy scripting code).
>> 
>>  By the way, that last statement is the kind of things that makes Gradle
>>  appear to Maven-fans as no-good. In fact, for the record, Maven 1 was using
>>  a scripting language (Jelly), and being able to clutter your build file
>>  with scripts is just a bad idea.
>> 
>>  About Maven coordinates, yes Gradle can use them. I seem to remember
>>  they're actually using Ivy as their dependency management tool.
>>  By the way, you can disable transitive dependencies, etc.
>> 
>> 
> http://gradle.org/docs/current/userguide/dependency_management.html#defineConfiguration
>> 
>>  Cheers
>> 
>>  2012/9/10 KARR, DAVID 
>> 
>>  > > -Original Message-
>>  > > From: Ron Wheeler [mailto:rwhee...@artifact-software.com]
>>  > > Sent: Sunday, September 09, 2012 4:43 PM
>>  > > To: users@maven.apache.org
>>  > > Subject: Re: Arguments for Maven vs. Gradle
>>  > >
>>  > > Moving from Ant to Maven is a change of attitude.
>>  > > You are right that Maven does make builds much more uniform.
>>  > > Once a project is set up, the next guy to work on it only has to 
> write
>>  > > code and add dependencies, the rest of the environment is laid 
> out.
>>  > >
>>  > > Never heard of Gradle so I can not compare them.
>>  > >
>>  > > Maven has a huge following and almost any library that you want 
> to use
>>  > > has a Maven distribution available at Maven Central or in a 
> public repo
>>  > > that you can connect to .
>>  > > Saves a lot of grief.
>>  > >
>>  > > If you go with Maven, get your own repo set up before you unleash 
> the
>>  > > developers.
>>  >
>>  > Thanks.
>>  >
>>  > Not that I disagree with your overall conclusion, but I would point 
> out
>>  > that Gradle makes it easy to specify dependencies through Maven
>>  > coordinates.  I would assume that means it also handles transitive
>>  > dependencies, but I'm not sure.  It's a good idea to 
> "know your enemy",
>>  not
>>  > that I consider Gradle an "enemy" in any way.
>>  >
>>  > > On 09/09/2012 5:20 PM, KARR, DAVID wrote:
>>  > > > At the risk of starting a flame war, what are some arguments 
> for
>>  > > Maven vs. Gradle?
>>  > > >
>>  > > > This is in the context of a change and risk-averse 
> organization that
>>  > > currently has a large Ant build, although with some associated 
> Maven
>>  > > builds.
>>  > > >
>>  > > > I see the ad

Re: Arguments for Maven vs. Gradle

2012-09-11 Thread Paul King
You will have to make your own assessment but most new projects I see in my
customer base are moving over to gradle. It offers the same convention over
configuration advantages of Maven but with some flexibility if you need it,
plus a whole swag of benefits that are gradle specific. The dependency
management story is practically identical to the maven world.

Cheers, Paul.

On Tue, Sep 11, 2012 at 4:28 PM, Baptiste MATHUS  wrote:

> (Disclaimer: I only know Gradle from outside. I never used it more than 2
> minutes, but I read some things about and saw a prez at our JUG.)
> Gradle has a very different approach: where Maven values sometimes not much
> flexibility at first sight (to improve build genericity, as already said),
> Gradle lets you change anything you want. The good thing is that Gradle
> comes with some standard process if you want to go Maven-style (meaning the
> standard fits your needs). But then you can plug whatever you want, the way
> you want, anytime you want (using Groovy scripting code).
>
> By the way, that last statement is the kind of things that makes Gradle
> appear to Maven-fans as no-good. In fact, for the record, Maven 1 was using
> a scripting language (Jelly), and being able to clutter your build file
> with scripts is just a bad idea.
>
> About Maven coordinates, yes Gradle can use them. I seem to remember
> they're actually using Ivy as their dependency management tool.
> By the way, you can disable transitive dependencies, etc.
>
> http://gradle.org/docs/current/userguide/dependency_management.html#defineConfiguration
>
> Cheers
>
> 2012/9/10 KARR, DAVID 
>
> > > -Original Message-
> > > From: Ron Wheeler [mailto:rwhee...@artifact-software.com]
> > > Sent: Sunday, September 09, 2012 4:43 PM
> > > To: users@maven.apache.org
> > > Subject: Re: Arguments for Maven vs. Gradle
> > >
> > > Moving from Ant to Maven is a change of attitude.
> > > You are right that Maven does make builds much more uniform.
> > > Once a project is set up, the next guy to work on it only has to write
> > > code and add dependencies, the rest of the environment is laid out.
> > >
> > > Never heard of Gradle so I can not compare them.
> > >
> > > Maven has a huge following and almost any library that you want to use
> > > has a Maven distribution available at Maven Central or in a public repo
> > > that you can connect to .
> > > Saves a lot of grief.
> > >
> > > If you go with Maven, get your own repo set up before you unleash the
> > > developers.
> >
> > Thanks.
> >
> > Not that I disagree with your overall conclusion, but I would point out
> > that Gradle makes it easy to specify dependencies through Maven
> > coordinates.  I would assume that means it also handles transitive
> > dependencies, but I'm not sure.  It's a good idea to "know your enemy",
> not
> > that I consider Gradle an "enemy" in any way.
> >
> > > On 09/09/2012 5:20 PM, KARR, DAVID wrote:
> > > > At the risk of starting a flame war, what are some arguments for
> > > Maven vs. Gradle?
> > > >
> > > > This is in the context of a change and risk-averse organization that
> > > currently has a large Ant build, although with some associated Maven
> > > builds.
> > > >
> > > > I see the advantages of Gradle as a much better Ant, but I would be
> > > concerned about losing the advantages of Maven, like better integrated
> > > tool support.
> > > >
> > > > One of the disadvantages of Gradle is the same as Ant, which is that
> > > it's very easy to have two people do similar things in a completely
> > > different way.  Gradle makes it easier to reuse things, but it doesn't
> > > seem like it nudges you that hard in that direction.
> > > >
> > > > I can see the possibility of calling Groovy from Maven, but having
> > > that be Gradle code would require the Gradle runtime, and I don't see a
> > > "Gradle Maven plugin" yet (although I believe I've seen a "Maven Gradle
> > > plugin).  Even if you could do this, I'm not sure it makes sense or
> > > provides significant value.
> > > >
> > > > -
> > > > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> > > > For additional commands, e-mail: users-h...@maven.apache.org
> > > >
> > > >
> > >
> > >
> > > --
> > > Ron Wheeler
> > > President
> > > Artifact Software Inc
> > > email: rwhee...@artifact-software.com
> > > skype: ronaldmwheeler
> > > phone: 866-970-2435, ext 102
> > >
> > >
> > > -
> > > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> > > For additional commands, e-mail: users-h...@maven.apache.org
> >
> >
> > -
> > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> > For additional commands, e-mail: users-h...@maven.apache.org
> >
> > --
> > Baptiste  MATHUS - http://batmat.net
> > Sauvez un arbre,
> > Mangez un castor !
> > nbsp;!
> >  
> >  
> >
>


Re: Arguments for Maven vs. Gradle

2012-09-10 Thread Baptiste MATHUS
(Disclaimer: I only know Gradle from outside. I never used it more than 2
minutes, but I read some things about and saw a prez at our JUG.)
Gradle has a very different approach: where Maven values sometimes not much
flexibility at first sight (to improve build genericity, as already said),
Gradle lets you change anything you want. The good thing is that Gradle
comes with some standard process if you want to go Maven-style (meaning the
standard fits your needs). But then you can plug whatever you want, the way
you want, anytime you want (using Groovy scripting code).

By the way, that last statement is the kind of things that makes Gradle
appear to Maven-fans as no-good. In fact, for the record, Maven 1 was using
a scripting language (Jelly), and being able to clutter your build file
with scripts is just a bad idea.

About Maven coordinates, yes Gradle can use them. I seem to remember
they're actually using Ivy as their dependency management tool.
By the way, you can disable transitive dependencies, etc.
http://gradle.org/docs/current/userguide/dependency_management.html#defineConfiguration

Cheers

2012/9/10 KARR, DAVID 

> > -Original Message-
> > From: Ron Wheeler [mailto:rwhee...@artifact-software.com]
> > Sent: Sunday, September 09, 2012 4:43 PM
> > To: users@maven.apache.org
> > Subject: Re: Arguments for Maven vs. Gradle
> >
> > Moving from Ant to Maven is a change of attitude.
> > You are right that Maven does make builds much more uniform.
> > Once a project is set up, the next guy to work on it only has to write
> > code and add dependencies, the rest of the environment is laid out.
> >
> > Never heard of Gradle so I can not compare them.
> >
> > Maven has a huge following and almost any library that you want to use
> > has a Maven distribution available at Maven Central or in a public repo
> > that you can connect to .
> > Saves a lot of grief.
> >
> > If you go with Maven, get your own repo set up before you unleash the
> > developers.
>
> Thanks.
>
> Not that I disagree with your overall conclusion, but I would point out
> that Gradle makes it easy to specify dependencies through Maven
> coordinates.  I would assume that means it also handles transitive
> dependencies, but I'm not sure.  It's a good idea to "know your enemy", not
> that I consider Gradle an "enemy" in any way.
>
> > On 09/09/2012 5:20 PM, KARR, DAVID wrote:
> > > At the risk of starting a flame war, what are some arguments for
> > Maven vs. Gradle?
> > >
> > > This is in the context of a change and risk-averse organization that
> > currently has a large Ant build, although with some associated Maven
> > builds.
> > >
> > > I see the advantages of Gradle as a much better Ant, but I would be
> > concerned about losing the advantages of Maven, like better integrated
> > tool support.
> > >
> > > One of the disadvantages of Gradle is the same as Ant, which is that
> > it's very easy to have two people do similar things in a completely
> > different way.  Gradle makes it easier to reuse things, but it doesn't
> > seem like it nudges you that hard in that direction.
> > >
> > > I can see the possibility of calling Groovy from Maven, but having
> > that be Gradle code would require the Gradle runtime, and I don't see a
> > "Gradle Maven plugin" yet (although I believe I've seen a "Maven Gradle
> > plugin).  Even if you could do this, I'm not sure it makes sense or
> > provides significant value.
> > >
> > > -
> > > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> > > For additional commands, e-mail: users-h...@maven.apache.org
> > >
> > >
> >
> >
> > --
> > Ron Wheeler
> > President
> > Artifact Software Inc
> > email: rwhee...@artifact-software.com
> > skype: ronaldmwheeler
> > phone: 866-970-2435, ext 102
> >
> >
> > -
> > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> > For additional commands, e-mail: users-h...@maven.apache.org
>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> For additional commands, e-mail: users-h...@maven.apache.org
>
> --
> Baptiste  MATHUS - http://batmat.net
> Sauvez un arbre,
> Mangez un castor !
> nbsp;!
>  
>  
>


RE: Arguments for Maven vs. Gradle

2012-09-10 Thread KARR, DAVID
> -Original Message-
> From: Ron Wheeler [mailto:rwhee...@artifact-software.com]
> Sent: Sunday, September 09, 2012 4:43 PM
> To: users@maven.apache.org
> Subject: Re: Arguments for Maven vs. Gradle
> 
> Moving from Ant to Maven is a change of attitude.
> You are right that Maven does make builds much more uniform.
> Once a project is set up, the next guy to work on it only has to write
> code and add dependencies, the rest of the environment is laid out.
> 
> Never heard of Gradle so I can not compare them.
> 
> Maven has a huge following and almost any library that you want to use
> has a Maven distribution available at Maven Central or in a public repo
> that you can connect to .
> Saves a lot of grief.
> 
> If you go with Maven, get your own repo set up before you unleash the
> developers.

Thanks.

Not that I disagree with your overall conclusion, but I would point out that 
Gradle makes it easy to specify dependencies through Maven coordinates.  I 
would assume that means it also handles transitive dependencies, but I'm not 
sure.  It's a good idea to "know your enemy", not that I consider Gradle an 
"enemy" in any way.

> On 09/09/2012 5:20 PM, KARR, DAVID wrote:
> > At the risk of starting a flame war, what are some arguments for
> Maven vs. Gradle?
> >
> > This is in the context of a change and risk-averse organization that
> currently has a large Ant build, although with some associated Maven
> builds.
> >
> > I see the advantages of Gradle as a much better Ant, but I would be
> concerned about losing the advantages of Maven, like better integrated
> tool support.
> >
> > One of the disadvantages of Gradle is the same as Ant, which is that
> it's very easy to have two people do similar things in a completely
> different way.  Gradle makes it easier to reuse things, but it doesn't
> seem like it nudges you that hard in that direction.
> >
> > I can see the possibility of calling Groovy from Maven, but having
> that be Gradle code would require the Gradle runtime, and I don't see a
> "Gradle Maven plugin" yet (although I believe I've seen a "Maven Gradle
> plugin).  Even if you could do this, I'm not sure it makes sense or
> provides significant value.
> >
> > -
> > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> > For additional commands, e-mail: users-h...@maven.apache.org
> >
> >
> 
> 
> --
> Ron Wheeler
> President
> Artifact Software Inc
> email: rwhee...@artifact-software.com
> skype: ronaldmwheeler
> phone: 866-970-2435, ext 102
> 
> 
> -
> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> For additional commands, e-mail: users-h...@maven.apache.org


-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-09 Thread Brian Topping

On Sep 10, 2012, at 4:15 AM, Graham Leggett  wrote:

> On 9 Sep 2012, at 22:20, "KARR, DAVID"  wrote:
> 
>> One of the disadvantages of Gradle is the same as Ant, which is that it's 
>> very easy to have two people do similar things in a completely different way.
> 
> This to me is the fatal flaw in ant and all tools like it. Ant allows the 
> developer to do whatever they like, and so they do, unnecessarily different 
> to everyone else, and this difference must be debugged, documented and 
> learned, over and over again, wasting countless hours and money.
> 
> In contrast, Maven represents discipline.
> 
> To understand maven one first has to understand discipline in software 
> engineering, why there is no value in solving a solved problem in a way that 
> is different but no better than solutions that have gone before. Why the best 
> documentation is simply no documentation at all. Why the gift of a repeatable 
> build is priceless to the person who has to fix a bug under stressful 
> conditions.

Well said by Ron and Graham. 

With the knowledge as the person that wrote the "associated Maven build" 
(shameless plug ;) and without disclosing anything, I think you can see based 
on it's dependencies that it's not going away anytime soon.  There was a lot of 
resistance to it in the first place, to the point that I was seriously asked a 
few times why the build couldn't be ported to Ant.  

What that says to me is there is a lot of organizational inertia around not 
doing the same thing multiple ways.  In interviewing stakeholders, nobody was 
attached to Ant, they just knew it's warts and how to get around.  It was a 
sunk cost.  Totally reasonable.  

Gradle not only allows the same thing to be done multiple ways (like Ant), but 
now you would be introducing all of Gradle's multiple ways in it's own 
different way.  You'll have one paradigm that is "hard" but can't and won't be 
removed, one that is almost universally deprecated (I can't remember the last 
time I've seen a new project using it), and another that is some hybrid of the 
two, but with completely different syntactic sugar.  Given the resistance to 
adding one new build tool, adding a second for a total of three doesn't sound 
likely.

Also do not forget about plugin support necessary for target environments.  I 
did do the thought experiment at the time why the build could (or should) not 
be rewritten in Ant (welcome to the world of being a good contractor!), and the 
final reason Ant couldn't be used was target product plugin support for Ant 
wasn't there.  If you dig into the plugin context that is available when a 
plugin runs, one wouldn't seriously attempt to run Maven plugins in an Ant 
build.  I theoretically could have ported the plugin(s) to Ant task(s), but one 
key vendor plugin was proprietary.  This same problems will haunt you in Gradle 
until all vendors have equal support for Gradle as they do for Maven.  

While I think I only wrote one plugin for that build, such internal plugins can 
be used in builds across the company.  This is another reason to standardize on 
a single build environment.

This isn't to say that you won't need to do some plugin work to get your new 
build in robust working order.  When I did the (now apparently missing) POC of 
it, I remember that there was some issues that were not solvable with five 
minutes of Maven foo (and why I stopped working on it).  But it wasn't weeks of 
work either.  

HTH, Brian



-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-09 Thread Graham Leggett
On 9 Sep 2012, at 22:20, "KARR, DAVID"  wrote:

> One of the disadvantages of Gradle is the same as Ant, which is that it's 
> very easy to have two people do similar things in a completely different way.

This to me is the fatal flaw in ant and all tools like it. Ant allows the 
developer to do whatever they like, and so they do, unnecessarily different to 
everyone else, and this difference must be debugged, documented and learned, 
over and over again, wasting countless hours and money.

In contrast, Maven represents discipline.

To understand maven one first has to understand discipline in software 
engineering, why there is no value in solving a solved problem in a way that is 
different but no better than solutions that have gone before. Why the best 
documentation is simply no documentation at all. Why the gift of a repeatable 
build is priceless to the person who has to fix a bug under stressful 
conditions.

Regards,
Graham
--


-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Re: Arguments for Maven vs. Gradle

2012-09-09 Thread David Hoffer
+1

On Sun, Sep 9, 2012 at 5:42 PM, Ron Wheeler
wrote:

> Moving from Ant to Maven is a change of attitude.
> You are right that Maven does make builds much more uniform.
> Once a project is set up, the next guy to work on it only has to write
> code and add dependencies, the rest of the environment is laid out.
>
> Never heard of Gradle so I can not compare them.
>
> Maven has a huge following and almost any library that you want to use has
> a Maven distribution available at Maven Central or in a public repo that
> you can connect to .
> Saves a lot of grief.
>
> If you go with Maven, get your own repo set up before you unleash the
> developers.
>
> Ron
>
>
> On 09/09/2012 5:20 PM, KARR, DAVID wrote:
>
>> At the risk of starting a flame war, what are some arguments for Maven
>> vs. Gradle?
>>
>> This is in the context of a change and risk-averse organization that
>> currently has a large Ant build, although with some associated Maven builds.
>>
>> I see the advantages of Gradle as a much better Ant, but I would be
>> concerned about losing the advantages of Maven, like better integrated tool
>> support.
>>
>> One of the disadvantages of Gradle is the same as Ant, which is that it's
>> very easy to have two people do similar things in a completely different
>> way.  Gradle makes it easier to reuse things, but it doesn't seem like it
>> nudges you that hard in that direction.
>>
>> I can see the possibility of calling Groovy from Maven, but having that
>> be Gradle code would require the Gradle runtime, and I don't see a "Gradle
>> Maven plugin" yet (although I believe I've seen a "Maven Gradle plugin).
>>  Even if you could do this, I'm not sure it makes sense or provides
>> significant value.
>>
>> --**--**-
>> To unsubscribe, e-mail: 
>> users-unsubscribe@maven.**apache.org
>> For additional commands, e-mail: users-h...@maven.apache.org
>>
>>
>>
>
> --
> Ron Wheeler
> President
> Artifact Software Inc
> email: rwhee...@artifact-software.com
> skype: ronaldmwheeler
> phone: 866-970-2435, ext 102
>
>
>
> --**--**-
> To unsubscribe, e-mail: 
> users-unsubscribe@maven.**apache.org
> For additional commands, e-mail: users-h...@maven.apache.org
>
>


Re: Arguments for Maven vs. Gradle

2012-09-09 Thread Ron Wheeler

Moving from Ant to Maven is a change of attitude.
You are right that Maven does make builds much more uniform.
Once a project is set up, the next guy to work on it only has to write 
code and add dependencies, the rest of the environment is laid out.


Never heard of Gradle so I can not compare them.

Maven has a huge following and almost any library that you want to use 
has a Maven distribution available at Maven Central or in a public repo 
that you can connect to .

Saves a lot of grief.

If you go with Maven, get your own repo set up before you unleash the 
developers.


Ron

On 09/09/2012 5:20 PM, KARR, DAVID wrote:

At the risk of starting a flame war, what are some arguments for Maven vs. 
Gradle?

This is in the context of a change and risk-averse organization that currently 
has a large Ant build, although with some associated Maven builds.

I see the advantages of Gradle as a much better Ant, but I would be concerned 
about losing the advantages of Maven, like better integrated tool support.

One of the disadvantages of Gradle is the same as Ant, which is that it's very 
easy to have two people do similar things in a completely different way.  
Gradle makes it easier to reuse things, but it doesn't seem like it nudges you 
that hard in that direction.

I can see the possibility of calling Groovy from Maven, but having that be Gradle code would 
require the Gradle runtime, and I don't see a "Gradle Maven plugin" yet (although I 
believe I've seen a "Maven Gradle plugin).  Even if you could do this, I'm not sure it 
makes sense or provides significant value.

-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org





--
Ron Wheeler
President
Artifact Software Inc
email: rwhee...@artifact-software.com
skype: ronaldmwheeler
phone: 866-970-2435, ext 102


-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org



Arguments for Maven vs. Gradle

2012-09-09 Thread KARR, DAVID
At the risk of starting a flame war, what are some arguments for Maven vs. 
Gradle?

This is in the context of a change and risk-averse organization that currently 
has a large Ant build, although with some associated Maven builds.

I see the advantages of Gradle as a much better Ant, but I would be concerned 
about losing the advantages of Maven, like better integrated tool support.

One of the disadvantages of Gradle is the same as Ant, which is that it's very 
easy to have two people do similar things in a completely different way.  
Gradle makes it easier to reuse things, but it doesn't seem like it nudges you 
that hard in that direction.

I can see the possibility of calling Groovy from Maven, but having that be 
Gradle code would require the Gradle runtime, and I don't see a "Gradle Maven 
plugin" yet (although I believe I've seen a "Maven Gradle plugin).  Even if you 
could do this, I'm not sure it makes sense or provides significant value.

-
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org