This is very eloquent distillation of the thought process underlying the evolution of my toolset over the last 5 years. After having jumped into Rails and shifting from BBEdit to TextMate as my primary editor overnight back in 2005, when TextMate started withering on the vine I became disillusioned that I had put so much effort into pursuing such a short-lived tool. Reflecting on my history with a UNIX shell going ba…
> not using verbose Java-like languages that require IDEs for the all the boilerplate and rote refactoring. You probably need to revisit your opinion on IDE's, they haven't been used for boiler plate code since the late 90's with Visual Studio. Java IDE's make your more productive and they help you keep your code base in a healthy state with very little technical debt. Not using them would be like preferring a screwd…
Why Everyone Eventually Hates or Leaves Maven
101–110 of 168 posts
Re: Why Everyone Eventually Hates or Leaves Maven
#102Spot on post. Last year replaced a maven shitfest with an old fashioned Makefile which calls javac and manual dependencies. The whole port process took about 2 hours. Integration and test run time has gone from 7 minutes (to drag all the maven plugins and dependencies down) to just over two minutes. This saves us a fortune on build agent capacity as well (we use TeamCity).
Re: Why Everyone Eventually Hates or Leaves Maven
#103I wholeheartedly disagree with this post, though I do like his conceptual framework of composable and contextual abstractions. I've worked on countless Maven builds and have done everything under the sun. Maven's plugin system allows you to ultimately achieve whatever you need out of your build--in the 10% case that you have a need that isn't already covered by the varied plethora of plugins out there. You can even c…
Re: Why Everyone Eventually Hates or Leaves Maven
#104It's not Maven. It's Java and XML. They both end up involving much more overhead than Ruby/Rake.
IMHO, it is XML.
And fuck am I tired of hearing about how saving 10% of your keystrokes during authorship is such a great thing. Most of the time spent on software in in maintenance, so you want better readability than terseness. coffeescript, yaml, etc... are far inferior solutions for most of the uses they get put towards.
Re: Why Everyone Eventually Hates or Leaves Maven
#105Earlier quoted context omitted.
Building java libraries isn't really all that difficult. Not is packaging them. Damned if it doesn't take 30 lines of XML to do it in maven, but these kinds of see-spot-run situations are pretty easy. Extremely difficult in maven and five minutes work in make or ant is things like "running LaTeX to generate a PDF of some of your documentation, because it is math laden and HTML isn't suitable". This is not theoretical…
Or you could use org.codehaus.mojo:latex-maven-plugin, stick your latex and graphics in src/main/latex/ , and watch it 'just work', like I do. I agree that not every maven plugin does exactly what you want it to, but a lot of them get pretty damn close, and as the authors iterate them, they gain a lot of flexibility.
Re: Why Everyone Eventually Hates or Leaves Maven
#106It's not Maven. It's Java and XML. They both end up involving much more overhead than Ruby/Rake.
1) predictability 2) static analysis 3) quality (static typeing vs. duck typing) 4) sophistication/maturity 5) reproducabilty 6) tooling
All that's not always necessary, but if you know the thing you're building has a shelf life of at least 2 years then ruby/rake are pretty shitty tools.
Re: Why Everyone Eventually Hates or Leaves Maven
#107Good article. I like the idea of what Maven tries to achieve but I prefer monkeying with ant because I can get things done. If Maven or its successor ever gets to where things can't get into a mucked up state; I'm in.
mvn archetype:generate ?
Re: Why Everyone Eventually Hates or Leaves Maven
#108"These abstractions apply to tools and frameworks as well, particularly tools that must scale in their power and sophistication along with projects, like build tools. By hard-won lesson, composable build tools scale (in time, complexity, and usefulness) better than contextual ones." And then the person that wrote them leaves and we're fucked. If maven doesn't do what you need to do, then chances are you don't need to…
If what you need to do can be done in Maven you don't need to do anything very difficult. Ant scales poorly; dependencies are a particular headache. Maven scales astoundingly poorly. Here's a very short list of things that are massively obnoxious to do with Maven, but are perfectly reasonable: - submitting code to a code review site like Gerrit. - generating code (for example, a parsed SNMP MIB that you want as a Jav…
We use Maven and it just works. We play with the idea to move to Gradle, but the effort is non trivial and the real benefits not clear.
We use Sonar. We use Clover for code coverage. We use PMD. We use Checkstyle. We use FindBugs.
Re: Why Everyone Eventually Hates or Leaves Maven
#109We use Maven with Bamboo for continuous integration and it just works. We play with the idea to move to Gradle b/c it's more powerful, but the effort is non trivial and the real benefits - beside the 'but it's programmable' - not clear.
Re: Why Everyone Eventually Hates or Leaves Maven
#110Earlier quoted context omitted.
Well in ruby you could use bundler and it becomes gem 'gem-name' # in Gemfile $ bundle install
Until you want to do it on a system you just want binaries. Or until you need to guarentee the version of the library you're bundling Or you want to run on something other than a MAC-in-crap, like Linux. RVM has the same problems. In my opinion, one is for play, and one is for work. If you just want to fuck around and spew code in one long controller that looks like spaghetti, and you don't want to worry about reprod…
gem "thing", "3.0.0.beta3"
gem 'rails', :git => 'git://github.com/rails/rails.git', :ref => '4aded'