November 16, 2005

Strange but true

I work with a group that has really bought into Agile development (and Crystal). 15 of us in one big room, with a bunch of computers. Lots of bulletin boards and white boards. Lots of color coded index cards. The room I dreamed about in my last job.

Everybody here pairs (except me). Everybody uses agile techniques (I use some of them). Everybody else knows what stories they are working on. My job changes every day (and I like it that way).

I find this strange because I am the person who is supposedly building the tools to make life easier for the programmers. It seems that I am also the new Subversion Queen. I am writing (or helping with) the opensource code, on a project that is as not opensource as a government project can be.

All of this would be ok, but I am not getting any practice on stories and iterations - and I was weak on them to begin with. I am putting X-Planner through its paces, but I don't do enough agile work to really test the code. So, other programmers here tell me what they need changed.

I have offered to teach Ant for grownups if anybody is interested. I really don't want to be a single point of failure. Of course, I never really wanted to become an Ant specialist either.

Posted by liz at 04:58 PM | Comments (0) | TrackBack

November 14, 2005

Build/release

Until we find somebody who wants to do it, I have been named acting Build/Release Engineer at my new shop. This is to go along with my more formal title of Toolsmith and person who is available for anybody to work with (I guess that isn't a real title). They decided that I was the best person to be the acting B/R person because I am terribly interested in getting agile to play nicely with CMMI 3 (moving to CMMI 4 in the next year). Reasonable decision.

But, as usual, there is a problem here. I have No idea what a build/release engineer does when you also have 2 configuration engineers on the project. For some reason, I can't see how you can be one without being the other. Right now, I am automating the build process, but I would be doing that anyway in my role as toolsmith. If anybody who reads this (and there aren't that many readers) has a good definition of what the various people do - I would love to read the defs.

Maven2: We are giving up on maven 2 except for library management. I don't like a whole lot of things about it, but what I dislike the most is that it seems to believe that if you are managing with maven, you want to manage everything with maven. Well, all of you maven people, I don't want maven writing over my classpath file. I want it to update it. I don't want it to overwrite my project file either. And I certainly am not going to trust my code to a project that is averaging 100 bugreports a day after it is released. It is nice that they decided to rewrite maven - but they need better quality control.

I am refactoring the stuff I wrote 2 weeks ago. My partner in crime (even if he is across the whole damn country) is trying to get me to look at ivy. I am not sure if we can get Ivy to do what he seems to want it to do.

I got XPlanner working today. I am going to install it on a real machine tomorrow. I then will decide what we want to do with it.

Posted by liz at 04:52 PM | Comments (0) | TrackBack

November 02, 2005

Maven (yet again)


Hey, I used to go crazy writing about firebird. Well, I don't have a chance to play with firebird right now, instead I am busy screwing around with maven2. I have pretty much given up on it.

Of course, it is also possible that I am an idiot and that eclipse plugin code is beautiful and I can't figure out how it should be tested because I am a twit. Many people would probably agree there. BUT - I did ask another programmer to look at it and he said something like "You aren't going to try and extend THAT?????? Are you?????" This is not a case of "Not invented by me". This is a case where there are 5 unittests, named unittest1,2...5. and none of them test anything other than if the code throws an exception. Thank you, that is not what I call a reasonable unit test. Also, the code is not easily testable because it takes (I think) 10 parameters to construct the class I was going to extend. Somebody up there does not approve of dependency injection.

In other words, they wrote legacy code.

So, I am letting the eclipse plugin build a file that I will never use. I am then pulling a dom from it. I am then comparing it with a dom from a .classpath file that I have already written. Doms are then being merged.

Interestingly enough the artifact class does not build a good string for a jar name. Silly shit like that. 200 messages a day since they released Maven 2...and too many of them are jira cases. The plugin left my eclipse projects uncompilable.

So, I will do what I can - and then decide whether I want to rewrite the plugin. I doubt it. Maybe for maven 3?

Posted by liz at 02:44 PM | Comments (0) | TrackBack

October 27, 2005

Back in the saddle

I have been working at the new company for about 4 days (I did NO coding/design/headwork during my vacation). Luckily, they want me to do what I am good at. Right now it is working with maven.

Yes, I still hate Maven. I also think that it is where we are going to go for at least some of our projects. Maven 2 has been released, and I am now extending it's eclipse plugin. I want it to learn how to update a .classpath, and how to include src and javadoc resources when building a .classpath from a POM. I am hoping that this will get around what we consider to be weaknesses within both eclipse and maven.

While doing this, I am making use of the plexus toolkit (because maven already uses it). Excellent toolkit. I would do some things differently, but I was able to get used to it in 1 day. It is going to become part of those files that I carry around with me from project to project and job to job.

After I get this all finished we will make a decision about how much farther to go with maven. Right now we are just going to go with standardizing resources every developer needs to be able to find. This means that some developers will have to do things differently, but I am NOT the person who has to enforce Best Practices here.

It is so much fun working with a crew of really bright people again. I swear, I haven't worked with a crew like this since I got my dream junior programmer at Nasdaq.

Posted by liz at 01:18 PM | Comments (0) | TrackBack