Behavior Driven Development – Updated

I wanted to provide an updated prezi we just finished outlining our experiences and tips for implementing Behavior Driven Development. We just delivered the updated version and had lots of success with it!

Comments Welcome! (especially if you have ideas for us or corrections)

Goals Are Meaningless Without Reflection

I recently (2 days ago) finished my second Ironman Wisconsin. While it’s still fresh in my mind, I wanted to recap the day, but more importantly share a lesson that I keep learning (or relearning) in my life. Sometimes goals are only clear after you’ve arrived.

For those who aren’t familiar, an Ironman consists of a 2.4 mile swim, a 112 mile bike, and a 26.2 mile marathon run. All of this is done during the course of a day, starting at 7 AM and ending at midnight. Two years ago I set out in my first Ironman to hit a plan and a goal time. The goal was 13 hours and 30 minutes. During that race, I had 4 flat tires, (FOUR) due to rim tape and a poor understanding of simple bike mechanics. My plan quickly turned into FINISHING, and that’s indeed what I did.

“On the Helix, the swim start looked like a pack of piranha!” – Randy Hull

This year, the race was a bit different. The swim was much rougher as everyone (2900 people) were WAY too aggressive. It didn’t seem this bad 2 years ago. Not even close. People were kicking and punching and laying on you the whole way. The corners were the worst as everyone bunches up and that’s when the melee starts. I drank a lot of water this year (unintentionally) and my stomach got upset pretty quickly. I was happy with my swim time and finished it 2 minutes off my 2008 pace.

On to the bike…

I got blisters on my feet from torn socks. The socks were torn running from transition 1 through the bike transition. I finished an hour faster on the bike than last year and actually felt pretty good as I had no mechanical issues. Remember the four, yes FOUR flat tires in 2008?…but whose counting.

Marathon Blues…(and blisters)

Coming off the bike, my feet had bad blisters and I couldn’t feel my toes. The feeling just came back this morning, two days later. I’m thinking I might lose some toenails after this one. The run came and it was pretty brutal. Walking hurt my feet more than running, but when I ran, I couldn’t keep food or water down. The only way to finish the marathon at that point was to change my plan. I needed to hobble around the run and make sure I could take in fluids and salt tabs. So that’s what I did. It made the pain and blisters worse, but it gave me a chance to rehydrate, get my stomach right, and keep down food and fluids. It allowed me to finish.

Overall, it sounds bad but the race was pretty good. My brother caught me at mile 9 and we helped one another the final 17 miles to the finish line. We actually came in together which was pretty cool and got the exact same time, on the button. Our good friend from home (who is very fast and much better at this sport than us) pulled out after the first 13 miles on the run because he was throwing up so badly and dehydrated.

The Lesson?

In the end, this was a memorable, mentally challenging race. I didn’t reach my goal time (again), but as my Uncle Marv reminded me…in the immortal words of the most prolific and legendary philosopher of our day,

“Everyone has a plan….until they get hit.” – Iron Mike Tyson

Awkward to take life lessons from Mike Tyson, but I can’t tell you how well this quote fits my life. Many people plan goals and envision their lives well in advance of “living” their lives. As time drifts by, everyone faces challenges and struggles that are unexpected. Be it four flat tires, physical ailments, or any of hundreds of other challenges that derail our plans. The measure of success is how well you ADAPT to those challenges and reformulate your goals as they become more clear. My goal became more clear as the night wore on:

“Finish this race. Make it to the finish line and tell my wife how much I appreciated all of her hard work helping me get here. 13:30 is meaningless compared to telling her I appreciate her help and that all the date nights missed, mornings getting up at 4:30 AM, and weekends I spent on my bike or in the pool or on the trail were worth her effort.”

As I reflect, that was the real goal. Sometimes goals are only clear after you’ve arrived. And this one is completely obvious to me.

Thanks Dee.

A Few Good User Stories

PM: You want estimates?
Mgr: I think I’m entitled to them.

PM: You want estimates?
Mgr: I want the truth!

PM: You can’t handle the truth!!

Son, we live in a world of computer applications and those applications have to be built by people who write user stories. Who’s gonna do it? You? I have more responsibility than you could possibly fathom. You have that luxury. You have the luxury of not knowing what I know. That Version 1’s existence, while inexplicable to developers, helps project teams build applications. And that my profession, while incomprehensible and grotesque to you, also helps build applications. We use words like user story, range based estimates, and done criteria. We use these as the backbone of a life spent building and defining something; you use them as a punchline. I have neither the time nor the inclination to explain myself to a person who develops and tests off the well written stories we provide, and then questions the matter in which we provide it. I prefer you said “thank you,” and went on your way. Otherwise I suggest you log into Version 1 and update your story estimates; either way, I don’t give a damn what you think you are entitled to.

Mgr: Did you under-estimate that story?
PM: I did what I had to.

Mgr: Did you under-estimate that story!?
PM: You’re God damn right I did!

(Via Andy Sargent, Project Manager)