I have been sitting on this post by Ken Arnold for months now, trying to figure out a way to write about it. I thought of it again today and decided to carpe blogem with some quick thoughts.
Random Thoughts
- James Duncan Davidson has always been too apologetic and too harsh on Ant. Sure, it isn't perfect and may not have been his finest hour, but it delivered us from 'make'; and for that, I'm forever grateful.
- IMO, Gant may well be the next generation of build tools. I'm not sure that it allows the Unix pipes that Arnold mentions, but it is much closer than Ant will ever be. (My Maven friends will, no doubt, chime in here.)
The quote by GoslingI love the (paraphrased) quote attributed to Gosling:
James Gosling once said that every configuration file becomes a programming language, so you might as well think that way.
First, I should point out that I have not authenticated this quote, but Arnold is a reputable source, and this seems consistent with
Emacs. Presumably, this was well before 2003, the date of Arnold's post.
This quote shows the power of philosophy: without knowing it, Gosling anticipates the success of Rails and Grails over Struts, and to a lesser degree, the possibility of a triumph of Gant over Ant.
True, this doesn't talk about "convention over configuration" or even web frameworks per se, but it clearly suggests that solutions with static configuration suffer an
asymptotic disadvantage, compared to solutions with dynamic, programmatic configuration. The dice are loaded from the start.
Every time I work with Grails or Gant, I think of this quote.