Ruby and Rails Appeal

The appeal of simple is mind numbingly obvious. This comes from the Labnotes and apparently originates from jutopic.

I’d argue that Martin Fowler’s Patterns of Enterprise Application Architecture could apply to both though it doesn’t have Ruby example code for any of the patterns.

Technorati Tags:

,

Tools As Agile Catalyst

Brian Marrick looks back on 5 years since the Agile Manifesto:

I think it no coincidence that so many of the Agile Manifesto authors had past experience with Smalltalk (or, in my case, Lisp). That kind of background makes it easier to think of software as something you could readily change. I don’t think Agile would have taken off without semi-flexible languages like Java and the fast machines to run them.

Moreoever, each new tool—JUnit, Cruise Control, refactoring IDEs, FIT—makes it easier for more people to go the Agile route. Without them, Agile would be a niche approach available only to the ridiculously determined.

I’ve heard this idea before that Agile methodologies wouldn’t really work that well until we had IDEs that could easily allow refactoring and languages like Java, Ruby, C#, and Python. I find the idea has a lot of merit. Part of the appeal of Agile is the tools make refactoring a whole lot easier than it used to be.

The one thing about tools that still makes me twinge is when someone explains how you can just click, drag, drop a snippet here, step through the wizard, and bang you generate all your code. This is where the tool is supposedly doing all your work for you. Since this often makes TDD just about impossible these sorts of tools feel really flakey. They often generate just really awful code as well. The final nail in the coffin is you can only ever look at the code effectively or change it by firing up the tool. Those sorts of tools seem really anti-Agile, much like Microsoft Project or the Rational Suite.

Technorati Tags:

,

TDD Class Part Duex

Ran my second class on TDD with JUnit today. Now the bulk of our developers have been exposed to TDD directly, but I think there’s still a lot of work to do to nail down real adoption. One of the issues is quite a few people in the class don’t actually get to code in Java all that often so their actual skills are pretty rusty. That made it a lot harder to get through the labs.

I was pleased that two of the QA staff made it to the training and actually got some hands on with the labs. I think QA and development in our organization are starting to work a lot more closely together. Focusing developers on testing can only help.

I was also really pleased that the group helped each other out with a lot of pairing. Even with the three labs I didn’t get tons of requests for help. Of course I might have missed something and they were just content to struggle alone, but I don’t think so.

And I did learn some presentation training lessons some for the second or third time:

  • Always be fully prepared. I changed the Keynote presentation up til the Friday afternoon before so I couldn’t get the slides printed until Monday morning and I spent 2 hours doing it. If I had finished them and sent them to the internal print shop–bang an hour later, bound PDF copies.
  • When bringing snacks for the afternoon to keep people awake, don’t just get things like peanut M&Ms since some people may be allergic.
  • Always setup the machines ahead of time fully. (I was saved here by the fact that it was a pretty technical group and they helped each other out, including putting the labs on a shared drive and not a CD, duh.)

I left the group with the idea that as soon as possible they should go ahead and really try out TDD for about two weeks so they could get a much better feel for it. If most of them try that out this class will have been a wild success. In the meantime I’ll be trying to do a lot more pairing with my own developers. I’m hoping to have a few test infected converts eventually.

Technorati Tags:

,

Java 1.5 Is Very Far Away

One reason, IBM Websphere. Currently the newest version of Websphere 6.0 is only handles 1.4.2. No idea when 7.0 is out and they’ll finally support it. Unfortunately the picture only gets worse from there. There’s no sightings of a 7.0 beta yet. Next you have a dependency on Rational Application Developer. Turns out RAD 6.0 is based on Eclipse 3.0 and won’t stop spitting errors at you if you dare to use generics or annotations.

Then there’s the nasty boat anchor for us. It turns out Portal Server is based on Websphere 5.1. After about 9 months at least now with Websphere 6.0 out they still haven’t ported it up to Websphere 6.0 even.

I think we’ll actually be able to use Java 1.5 features in maybe two years given the speed of Portal Server updates. The worst part is JBoss, Oracle, and BEA seem to have managed to get at least their main app servers up to the 1.5 JDK by now. You’d think the market leader would at least try to retain parity. The dolphin release of Java should be out by then so we can be two full releases behind at that point.

Technorati Tags:

,

A Meeting Developers Don’t Hate

“No, really the standups worked, even with only 3 people they really helped everyone stay in sync.”

This was one one of my more sarcastic developers (sarcasm and software are so often synonymous) explaining that he actually saw value in standup meetings. Given a general hatred for meetings by your average developer it was nice to get some feedback that someone saw some value in them. I’ve noticed that I tend to have meetings on Tuesdays when the standups are scheduled and the team doesn’t tend to get together on their own and hold the meetings so I’d always taken that as partial evidence they didn’t completely buy into the standups.

So it was nice to hear someone specifically explain that they were valuable to them. I suspect they don’t happen if I’m filling in as the ScrumMaster because there’s still some deference to my management position. I actually don’t think having only 4 standups a week is a big detriment, but it’s always struck me that it does break the rhythm up a bit.

Technorati Tags:

, ,