Archive for September, 2002

JUG list updated

Sunday, September 29th, 2002

I went through Elliotte Rusty Harold’s list of JUGs and updated my list with any working ones from his.

Next things on the list are to include the virtual JUGs from Sun’s site, and to go through my page and put the location there.

It seems that Harold’s list is no less susceptible to dead links than Sun’s. There’s a lot of deadwood floating on there.

Open Source at Work

Saturday, September 28th, 2002

My colleagues have been having a good month for open source stuff.

Jim Birchfield has been working on plugins for Maven and Intellij’s IDEA. All very cool. He’s been slamming away at getting XDoclet working inside Maven, and he has an SQLViewer plugin for IDEA which is taking off a lot.

Eric Alexander has been playing with various Jakarta components in his spare time. He’s got some interesting ideas on glueing various components together and has an AntTask for scp-ing which we’ve been using at work.

The rest of the department is being hit with the move from Ant to Maven, which can be quite a chunk of magic the first few times. Our internal Maven repository is starting to work properly and we’re completing our move from Tapestry to Struts. All with the usual tight deadlines that we all face etc. It’s nice to have interesting things going on.

iPod + iRock

Saturday, September 28th, 2002

Just got an iPod, as a colleague has been loving his. Uploaded my 5000 odd songs onto it, took a couple of hours. Amazingly fast firewire connection, I can almost believe the DVDRom was the bottleneck.

Added an iRock to it. Put it on random play. Now I can stop playing tapes in the car, just tune in my FM radio and enjoy my music. Nothing Java related, work’s been busy, I’ve been in a holding pattern waiting for Commons Lang to 1.0, and I’ve a friend visiting next week, so the house needs preparing.

Maven coolness

Thursday, September 26th, 2002

Just discovered maven jar:install. Very cool. So my development process is:

I modify genscape-common, which is a module with common business objects in. I build in maven and do maven jar:install. It copies to my local repository.

Then I mess with AlertAlgorithm module. Again I build to local repository.

Then I change the AlertView web system, I build a war and copy the war by hand to my local jboss installation.

No messing with SNAPSHOT or anything. At some point I push it into CVS, confident that it will go into the next version.

Still some issues in there I think, like knowing when my version 2.1 has become 2.2 so I can move onto the new version.

Commons Lang

Sunday, September 22nd, 2002

Vote called on Commons Lang! :)

And work now started on removing the parts of GenJavaCore that are already in Commons Lang so I can look to a 0.6 release, I can call a String Taglib 1.0 release so I can work for 2.0, and XmlWriter’s dependency can be updated.

XmlWriter 1.0 Release

Saturday, September 21st, 2002

First release of XmlWriter on Sourceforge. So I’m missing obvious things like examples and a README.txt, but still. Something to work on.

Maven still seems to be missing a ‘download’ section. Irritating that that’s never been anyones itch. I’ll just add it as a section thingy. Need to review how to do that again.

XmlWriter is already vastly better than the early sketch which I discussed in the builder.com article. Thanks to Peter Cassetta (of FingertipSoft) it’s had a lot of improvement and he’s happily got it running in two production environments. Thus the 1.0 tag. It’s proving itself at production daily.

XmlWriter

Saturday, September 21st, 2002

I’ve had my first run in with SourceForge. The XmlWriter code I wrote my first real article on, and then committed to Jakarta Commons Util is going to just decay in there as Util is a bit of a dead end at the moment.

Equally, xml.apache.org isn’t really after that kind of thing, so I’ve started a project at SourceForge named XmlWriter.

Things still to do:

Learn how to release a 1.0 release.
Make a Logo for the home page.
Join the Java Foundry. Look for an XML Foundry.

Start figuring out features for 2.0. The biggest one that springs to mind is hooking up an XML Schema and verifying output at runtime. Anyone who knows if an XML Schema library exists out there, would be nice. Same for DTD. Else XmlWriter may have to spawn those projects.

JDK 1.4.1

Friday, September 20th, 2002

This isn’t new news, but every Java developer has a responsibility to read the changes with each new JDK, else we’ll get surprised in 6 months time but some piece of obscure datum.

Code Ownership

Friday, September 20th, 2002

XP has one thing wrong IMO. Code Ownership.
XP says that code is not owned by a person, and everyone has the right to modify any code.

This is right, but XP so oversells this to the ivory tower setups that places who are the other side of XP from an ivory tower implement it wrongly.

There should still be design ownership, and code responsibility. One person should be responsible for each area of the Code Map [something we all need to have nailed to a wall in our department/project] and they are responsible for collating ideas and documentation on that code. They are responsible for bug fixing internally. Essentially, they must have a stake in the code, they must be a stakeholder to themselves.

They would receive the CVS changes in their email, they would have to demand answers if that CVS change is confusing, they would manage the decision as to whether that code-area meets its needs. That is, the level of stability, risk, quality that is needed. They would have a roadmap for improving the code and would discuss informally with others how to improve things.

So already we’ve created concepts of a ‘road-map’, a ‘code-map’ made of ‘code-areas’. An owner.

Ideally, owners would get a period to refactor their code. So on a project of 5 people doing v2.2 of a product, 1 of them would simply be refactoring a code area which does not have requirements.

Note: This does not mean 1 coder per area. Areas can still be coded by many people, but 1 person has to CARE about the area. They have to refuse to allow that code to go to production in the state it is in, they have to tinker with it in spare time to get it improved. They have to see how they can genericise it, how they can document its issues.

Then you need a Code tsar. Someone for whom the Code Map is an area. So they look into other peoples areas and try to keep them all under a common direction.

Jakarta Survey

Friday, September 20th, 2002

This is a very interesting read. Vince Massol asked some questons to all Jakarta committers a week ago. A 1/7th of Jakarta committers answered and it’s something that helps to give a fractionally better understanding of the Jakarta community.

Hopefully more people will answer and more questions can be re-asked later. Gotta be jealous of the sod who gets to work on Apache stuff for 10 hours a day.