Thursday, 31 January 2008

Guilder POM and Properties

One of the things I have most problems with is how to define the Project Object Model and then allowing users to set properties the Maven 1 way. I create a POM by just using a Groovy script that contains other POM elements and so creating the Object Model tree. The base instance each of the POMs' must extend is a POM class which also will contain a method that lets one POM being incorporated into another one. This method will add any properties and POM elements which are not already set in the other POM. I indent to allow 3 different POMs:

  • User level POM which is resides in the user's home directory
  • Project POM which is inside the project root directory
  • Local POM which is inside the project root directory allowing local settings and which should not be included into a VCS
  keep on reading here

Posted by schaefera at 9:39 AM in Groovy

Tuesday, 29 January 2008

First Major Step taken with Guilder

This morning after some frenzy coding the first demo of the Guilder worked and I could build Guilder with itself; hail scripting. There were several stepping stones along the way but most notable was using as little dependencies as possible and to make dependency downloading easy using Ivy. Still the project is far from an alpha release because it can only build itself with various hacks and tweaks. That said the major issues are at least sketched out and so I can focus on making things right. These are the next steps:

  keep on reading here

Posted by schaefera at 10:10 PM in Groovy

Thursday, 24 January 2008

Playing and Learning Groovy can be Fun

A friend of mine Jim White has a little project called Groovy for OpenOffice and it indents to enable Groovy scripts execution within OpenOffice. Even though I don't indent to use scripting in my OpenOffice documents I found another nice and really fun usage for it which could also become a teaching tool for Groovy which is much more efficient that the good old Wiki.

The Groovy for OpenOffice comes with a demo document, Wings, which enables a user to create a Groovy paragraph in which he or she can add Groovy script and execute it right inside this paragraph and the output is listed below. If you are familiar with Mathematic then you know what I am talking about. The great thing is that anyone reading such a document does not have to copy and past the script code into, for example, Groovy Shell and then execute it and see what is going on. But it also enables the writer, as well as the reader, to annotate the code and discuss the output right on the same spot. This screenshot shows an evaluation of how in Groovy a programmer could intercept a method call similar to AOP and maybe change the call as we did:

  keep on reading here

Posted by schaefera at 10:57 PM in Groovy

Tuesday, 22 January 2008

Team Slayer Fun

Today I took a short break from work and played a single game on team slayer. Right when the game started one player dropped off which normally means that your are going to loose because the opponents outnumber you in a dog fight or they can afford to have a sniper somewhere adding some important scores. Well, after a minute or two I was left alone and I was pretty sure I am going to loose big time. But the map was Valhalla and that is a wide open field.

  keep on reading here

Posted by schaefera at 4:40 PM in XBox and Games

Friday, 18 January 2008

How Apple Marketing tries to Screw Us Over

As you all have already heard Apple is renting Movies through iTunes lately with the ridiculous restriction that I have to watch the Movie in 24 hours. But in order to make that look good they phrased it somewhat like this:

The Movie is available for 24 hours and will be deleted after it expires to save space on your hard disk.

Both me and my wife just laughed out loud about that. I have more enough space to store hours after hours of movies and if the need arises I would go and delete them myself. But isn't it nice that Apple is so concerned about our hard di  keep on reading here

Posted by schaefera at 10:13 PM in Mac

Tuesday, 15 January 2008

No MacBook Air for Me

I got an email from Apple about their new Toy: MacBook Air and even though I was tempted I am not going to buy one. For starters I need a big screen because of the many windows I have open and the space I need to work with several projects, consoles, browsers etc. Well a 13'' screen is not going to cut it for me and just to have a portable DVD player this toy is way to expensive. Especially based on the fact that it does not come with a CD/DVD drive.

This toy is like having a Ferrari in Los Angeles freeways. It looks great, turns a lot of heads but i  keep on reading here

Posted by schaefera at 5:48 PM in Mac

Sunday, 13 January 2008

Guilder: a Build System with Groove Part II

This Sunday because of some lousy Football teams I had a chance to look a little bit deeper into the Guilder project. Beside the overall project goals I also wanted to accomplish two other goals:

  • Writing the core and the plugins in Groovy
  • Building the project with the project itself meaning to bootstrap the project with itself

That means I need a Groovyc and Jar plugin in order to compile and create the project archive. To create the archive I didn't see much of a problem but with the Groovy Compiler I wasn't so sure therefore I tackled it first.

  keep on reading here

Posted by schaefera at 10:53 PM in Java

Guilder: a Build System with Groove

After meeting with some friends on last Thursday I started to further investigate how a build system could be made using Groovy as the core as well as the scripting language for the plugins. What I basically want is to merge the excellent features of Maven 1 and Maven 2 and so creating a flexible, extensible and easy to use Build System. What I first did after my first blog about the idea of a Groovy based Build System was to see how to create a plugin in Groovy and then how to call it from another Groovy class. It was a little bit harder than I thought but eventually I solved all the problems learning a lot of Groovy along the way. Contrary to Jim White's statement that one needs to buy and read Groovy in Action book I figured out that using the Groovy code base helps a lot to understand how to actually use it even though I agree that is not for everyone. The trickiest part was how to call another script that contains a set of goals inside and also to provide some help for plugin developers. Eventually I opted for Groovy Classes because they can extend a base class (aka the support) as well as methods that represent the goals.

  keep on reading here

Posted by schaefera at 12:18 AM in Java

Friday, 11 January 2008

Netbeans Does Not Work for Me

Since a week I have to work with Netbeans and I don't like it. In my opinion an IDE should support a developer rather than telling him/her how to develop software. This also means that the developer has the choice how he builds a project and how he names stuff. But not with Netbeans because I forces you to develop as it sees fit and it sits in the middle of your project like a fat spider pulling all the strings. Probably it does it so because it can force the entire team to use Netbeans.

  keep on reading here

Posted by schaefera at 5:36 PM in Java

Sunday, 6 January 2008

Could Groovy / Gant be a replacement for Maven 2?

I don't like Maven 2 for various reasons but the most important one is that the developer team dumped the Jelly Scripting in favor of the Java class approach they call Mojos. First I was thinking to create a Groovy plugin for Maven 2 to inject the ability of scripting but I thought that the other problems around Maven 2 are severe enough that I would warrant a complete rewrite putting Groovy into the center rather than adding it on the side lines.

  keep on reading here

Posted by schaefera at 10:33 PM in Java

Wednesday, 2 January 2008

Happy New Year: 2008

To all my readers I wish you a Happy and Prosper New Year and with a little bit luck it will be as crazy as the last one. For a personal project I went through all my pictures of the last years and discovered that even though we went to the US to advance my career we found quite a different type of wealth. Instead of the riches in our wallet we found it in the hearts and smiles of our kids.

We at Madplanet.com survived the second full year of our business and even though the year started on a low note me scrambling to find a new contracting gig I am still hopeful tha  keep on reading here

Posted by schaefera at 12:47 PM in Personal