Wednesday, June 6, 2007

In Review: May 27th - June 2nd

RE: Why I Don't Support Short Release Cycles

Justin James doesn't support short release cycles or agile methods. He argues that these lead to buggy, incomplete implementations that damage the industry.

I agree, buggy and incomplete releases are problems, and pandemic. But I've worked in organizations with long release cycles and waterfall processes that release software that sounds just like what he's complaining about, and I've worked in organizations with short release cycles and an agile approach where quality and complete features are paramount.

So, while I agree that the symptoms he's describing are a problem, and possibly even increasingly common, I would have to disagree that the symptoms are necessarily connected to the causes he identifies. The most common cause, in my opinion, is a deliberate willingness to sacrifice some quality and completeness, usually coming from the "business" rather than the implementation team. It's really that simple.

Reading through the comments below his post, others seem to agree with me.

Monday, June 4, 2007

Eneloop Batteries - Well Reviewed for Light and Heavy-Duty Use

I ran into a Sanyo/Eneloop display at the Green Living Show here in Toronto. They claimed to have a much longer shelf life than regular NiMH rechargeables, and come pre-charged for that reason. However, they have a lower mAh rating, which implies they won't be as good for heavy-duty work. Interesting, I thought. I should get some for low-duty long-term use, like the remote light switch we have for our ceiling fan, or the TV remote control.

I filed that away, so when the batteries in our fan remote wore out, I thought, "I should get some of those eneloops." I picked some up at The Source on my way home, and after doing so, decided I should verify the claims on the internet.

Turns out, after reading reviews on a few sites (e.g. Amazon, epinions, dpreview.com) that people are not only having good shelf life, but are finding that they work better than much-higher-rated batteries fresh from the charger, which haven't had time to discharge naturally. Basically, they're better even for heavy-duty uses.

Not only that, but I see that Sanyo has a solar charger for these things. I'm sold. Eneloops from here on out. Well, until the next generation, anyway; problem is, I've already got a stockpile of Panasonics that are doing the job, so the upgrade to eneloops will take time.

Ambient Orb: Build Status

A few people updated this morning after a published build failure, and are waiting for the fixes to come down before they can really proceed.

Now, because the build failure was published, I only have so much sympathy, but it got me thinking about possible build statuses. Coming back to the Ambient Orb approach, it occurs to me that I'd really like three colors to be used for build status:

  • Green: Last build was successful. No new changes (or, at least, not aware of new changes). Safe to update.
  • Yellow/Amber: Last build was successful. Aware of new changes that could theoretically destabilize the build (commits to the project, or projects on which this project depends). Status of build unknown, but tentatively safe.
  • Red: Last build was not successful. There may or may not be changes, but at this point, it's probably safer not to update, until the orb goes back to green or amber.
If you used an orb this way, you'd expect it to be in 'yellow' state a fair amount, but it seems useful to be able to tell the difference between yellow and green. In order to ensure that the orb goes yellow as soon as possible, I'd consider commit-hooks rather than repository-polling.