A journey through Maven Land
No, this is not one of my Maven rants, though it could easily be. This is however a short tale on how the Velocity site has been set up using Apache Maven 2 and a number of plugins written for Maven 2.
What I wanted to have is a site that pulls some information out of the Site POM and still uses the Maven 2 Site plugin and the reports to build.
In the end, I wrote for the site
- A Plugin that allows the Maven 2 renderer (Doxia) to render pages generated from Velocity templates (this is after all for the Velocity site…)
- A custom skin to get the look and feel of the old Velocity site, though it is already discusses as “antiquated”. But now it is only a simple matter of changing a CSS file. And generating the site with its own custom skin, allowed us to sneak in a RSS feed that you can subscribe to if you want to keep up to date with Velocity news.
- And finally a plugin that reads an XML formatted news file and builds teaser elements, a news page and (by using the amazing powers of the Rome library) create an RSS 2.0 feed about the news.
Nothing of that stuff is really Velocity specific, though it got created for the Velocity site and will stay here (under site/tools) for a while. Brett suggested the Maven sandbox but having experienced how stuff in Maven land moves like a quagmire in a hail storm, I do not want to put essential site building tools there (yet?).
Ah well, in the progress of that, I learned more about Maven, Plexus, Doxia and the rest of the zoo than I really wanted [1, 2, 3, 4, 5, 6, 7] and in the end I had to rewrite a part of the Doxia Decoration Model to get my reactor built site to get all the links and breadcrumbs right (You never heard of the Doxia Decoration Model? That is not really surprising. There are zero docs about it). But I said that I do not want to rant.
So in the end, yes: The resulting site is satisfying to me and hopefully also to our users. Comments welcome.
apache code maven velocityWhat is project vitality?
In a recent Article to the Velocity Development list, the project was brandmarked as being “dead” because there seems to be not much traffic on the development list. What the original author is missing, however is the amount of traffic going through other channels like face-to-face meetings, water cooler discussions or just personal mail.
So what really describes “project vitality”? Is it the number of downloads happening? The number of hits to a web site? If a project really is stable because it is “good enough” and the active developers agree on being picky with patches, does this amount to failing project vitality?
After all, this is open source. And even under a very generous license. So if you need a feature that the code developers won’t implement, why not fork it off? Either internally or in public. Has happened before, will happen again.
apache open source velocityAnother Revusky Incident
Hm.
Just been called Liar in public by Mr. Revusky (he referred to me as a clown before).
And why that? Because I don’t care about his personal pet-peeve: FreeMarker, but prefer to work in a community that is not as hostile (or “competitive”).
It’s not even that I don’t like FreeMarker. I do consider it a nice and very versatile tool. However if I wanted to use it for anything beyond toying around, I’d have to get in touch with the community, something that even community leaders told me not to do because “community and culture is completely incompatible with individuals such as yourself”. Where does this hate come from?
In my opinion, there seems to be some sort of deep-seated inferiority complex over the popularity of Velocity, a project perceived as competitor. Well, guess what? This is not corporate business. Competition is not only good; it is healthy in the open-source community and it helps keeping projects afoot.
So why is there a (perceived?) popularity issue of Velocity over FreeMarker? Is it because the Velocity people go around and advertise how great their product is? I strongly doubt that. Is it because they belittle other projects? Surely not. So why is a small, quite inactive project like Velocity so much more popular than FreeMarker, WebMacro and all the other templating engines? Or is it not and it is just a perception issue?
Gee, it seems that some decisions are neither feature nor competition driven…
It is not that Mr. Revusky doesn’t have a point. But in my opinion, you shouldn’t piss at the people that you want to persuade to use your tool. Just bible-thumping that your tool is much superior to anything and everyone should fall over their feet just to get it, never brought anyone anywhere. Getting other projects to embrace your stuff is the way to go.
Something in which the ASF is extremely good at. And not just because it has a high profile. But because it attracts people who share these ideas. And that is not just mythology.
apache freemarker velocity