Monday, January 29, 2007

Perfect Start

I'm never satisfied, regardless of where I may find myself working, with the current state of our process. I.e. its xp-ness. From time to time, this manifests as a weird desire to go off and try to implement the perfect project from a process point of view (where's Peter piper when you need him...). I pick a simple domain (something which won't get in the way of focusing on the process while interesting enough to me that I don't lose interest entirely (which is what usually occurs)) and start implementing while focusing on perfecting the process.

That time is now (minus a day)! So I started to write some code with the process in place. After 2+ hours you won't believe what I ended up with. And since you won't I'd best tell you, eh?

I ended up with a subversion project with a decent sized ant file and a few libraries (cobertura, junit and maybe a few others that I'm not remembering right now) and no code. The ant file with build a fully tested and code covered application (once it's written). All tested (OK, so I wrote one test case and one implementation just to test it, but I threw them out in the end).

And it was all very satisfying...

Tuesday, January 23, 2007

Best at Lotusphere

For what it's worth (and from where I'm sitting, it's worth a lot) our IWWCM integration has won best at Lotusphere (the page hasn't been updated, but I think this is where the announcement will be made).

I'd just like to congratulate all those involved; those on the engineering team that realized the value and those on the business team that identified and prioritized that value. Good job guys!

Update: IBM has finally updated their page and actually declares us as the winner. About time...

And our press release.

Sunday, January 14, 2007

XP Conference in Brisbane

Some time ago I lamented on the lack of XP conferences in Australia. We've started kicking around the idea at work about just making one happen in Brisbane in the not too distant future. If anyone is interested in this, please let me know (just leave a comment). It's all very open ended at this point in time (and could just fade away), but at a minimum I think we could have a one day conference (I'd love to do two to three days, but I want it to be worth being there for two to three days) at the IIB in the conference room. I'm hopeful that we could get a few interested parties from Brisbane, Sydney, Melbourne, etc that would be interested in spending at least one day with like minded people and sharing ideas and experiences.

Watch this space for further developments...

Labels:

Welcome to the newest member of our team...

Robert just started on Monday and I'd like to take this opportunity to welcome him to the team.

(In reality, I'm doing this to out Robert's blog. He hasn't posted in some time, but I'm sure we can change that... 8) )

Update: Just found out that the REAL blog is here.

Is Trust a Value?

During our previously mentioned Continous Learning session at work, Brett, our manager, asked if Trust was a value. My response was that Trust is something that is encouraged by the five other values, but I didn't think that it was a value, though I wasn't necessarily convinced one way or the other.

I was reflecting on this a couple days later on my way to work. The long and short of it was that I had reasoned my self to the following: Trust isn't one of the values, but Trust is something that we value... Huh? Ok, so Trust is a value. And it is something that I think we will be stating as one of our values.

Labels: , ,

Values

As a team (including our Engineer and Product Manager) we are doing some Continous Learning on Extreme Programming Explained, 2nd Edition. I've read the book a couple of times now and am in the process of re-read it again for the group discussions. There's one sentence that really stood out for me, which was:

The difference between what I think is valuable and what is really valuable creates waste.

That sentence is one that I had read twice in the past but the power of the statement didn't really hit home until the third time I read it.

I don't like waste. What is the point of doing something if the end result is that there is no end result. Nothing that was done would have any value. That's what waste means to me. If the members of the team I work on all have differing values, then we are inheritly going to be wasteful to some degree. Therefore we, as a team that is part of a business, need to identify what values are important for us. It's subtle yet important to me that that statement makes it clear that teams need to find what they value and actively encourage one other to live up to those values to be more effective as a team.

Labels: ,

The value of communication

We've rearranged our development environment after we finished wrapping up development on Track Changes to help move the team more towards XP. Previously, all the developers were in an area with a desk running around the perimeter of the area. Each developer was spaced out equally around the rim of the room and each developer sat facing the wall. This situation is not unlike some cubicle set ups I've work in at other companies (though at the other companies the developers were a bit closer together, but not that much more).

From the old location we moved to a smaller space that has a large enough table that we can comfortably fit developers down either side of the table plus a small desk area running along one of the walls of the area. Two of sit along the wall, while the rest of the team is on the table. The main reason for moving to the new area was to give us comfortable room for some pairing stations. But, the biggest benefit in the moves is that our communication within the team has dramatically increased.

With all the developers facing the wall, we tended not to interrupt one another unless we definitely needed some assistance. But now the development area, at times, is just one big running comversation about the numerous things we are trying to accomplish during the day.

Sitting together is one thing, but it's important that you sit together in a way that fosters the sort of conversations we are experiencing. Don't sit facing in a direction that you can't see anyone. Make sure that you developers can easily see each other and make eye contact. It just makes the process that much more humane.

Labels: , ,