Showing posts with label young adult. Show all posts
Showing posts with label young adult. Show all posts

Thursday, November 17, 2011

Perfection Obsession

A few years ago my wife's twenty-something niece was married.  We stayed with my wife's sister and brother-in-law - the parents of the bride - thus having front row seats for what can only be described as the insanity of the final gyrations of the process of staging a wedding.

First, an assumption: I'm referring to a standard, North American, Christian-based wedding with a church service and reception. For the families of both the bride and groom this was the first wedding of their respective children, so they wanted to make sure it was perfect.

Hmmm... perfect.  That term came up repeatedly during the 4 days we were there.  The bride wanted such and such to be perfect.  The mother of the bride wanted such and such to be perfect.  The father of the bride wanted such and such to be perfect.  The groom wanted such and such to be perfect. The parents of the groom wanted such and such to be perfect.  People were at the point of physical and mental illness over the stress of this event.  Why?  Because they were absolutely obsessed with ensuring that the whole event was perfect.

My father-in-law (the grandfather of the bride) and I opined about this while driving to the church.  There had been an explosion of emotion (relatively small - perhaps a few kilotons nominal yield) the day before the wedding when it was discovered that they couldn't find all of the proper holders for the table markers.  Uh, what exactly is proper?  Well, they were short two (out of 15) of matching holders and that just wouldn't do.  Tears and bad feelings ensued, and eventually the father of the bride drove 45 minutes across the city (one way) to a place where matching holders were found.  I suspect it was actually an excuse on his part to escape the insanity.  My father-in-law wondered aloud what difference it would make, and he was scolded by the bride-to-be, her mother and my wife:
Every girl dreams about her wedding, and wants it to be perfect!
I asked if anyone had ever been to a perfect wedding.  Actually, the more correct question would have been, has anyone ever noticed that a wedding wasn't perfect, or if so, did they care?  The response was silence, but I'm not entirely certain if it was because anyone other than my father-in-law agreed, or that they were quietly plotting my painful demise. :)

Coaching Point

Since 2001 I've given many presentations on XP and Agile Software Development.  I almost always started by polling the audience on their experience level.  "How many people have less than 5 years in software development? How many have 5 to 10?" etc.  I then ask how many of them had been on a project where nothing had changed from start to finish.  There's always a knowing chuckle from the audience and I launch into my presentation.  That helped me to see that there are some lessons to be learned from this obsession with perfection at a wedding, and in the delivery of software to production.

First and foremost, nothing is ever perfect.  Ever.  It's that simple.  Any non-trivial system will have defects, just as every wedding will have a hitch or two somewhere.  Some will be larger than others and can't be ignored - not having a marriage license or a bug that corrupts data fall into that category.  Others will reduce the quality of the overall experience - my wife wanted Gospel singers at our wedding and would have been quite disappointed if we hadn't been able to get them, while an application may have a memory leak that forces the user to close it and restart every so often - painful, yes, but the show can still carry on.  Still other problems may have what seems to be a tremendously inflated impact - the table marker holders or perhaps a query that doesn't run as quickly as we would prefer - but once 'production' occurs the 'user's don't even know that there's a problem.

The bottom line is that we can reduce stress in very significant ways by determining what's good enough for your given circumstances.  At a wedding reception, that may mean having a DJ play quiet music during the dinner rather than hiring a string quartet.  In software, that means performing risk and value assessments on all defects and enhancement requests.  Some stuff can simply be ignored, while others may need to become the sole focus of the entire team until they're fixed.

Another way that weddings and software development are similar is that nothing ever goes completely according to plan, so you need to either have contingencies or simply be able to go with the flow.  When my and I were married, halfway through the ceremony my son (from a previous marriage) leaned over to me and said that he had to go to the washroom!!  Well, when he says that, what he really means is that he had to go about 5 minutes ago and now he really, really has to go!  So, I looked at one of my groomsmen, and he nodded and took my son to the washroom.  They were back in two minutes, and everything went along smoothly and everyone in attendance had a good chuckle.  This happens in software too, and often we need to deviate from the plan in order to accommodate an unforeseen circumstance.  We don't have time to perform an impact assessment or have the Change Control Board provide their blessing.  We simply have to deal with the issue right there and then.

Finally, the industries surrounding both weddings and software development have a tremendous impact.  We are literally inundated by information from the media, colleagues, friends, etc. about what are the best approaches and tools.  This happens in software too! :)  Seriously, though, our expectations are inflated by these external influences and we can come to ignore our own feelings and experience about to approach putting on a wedding or building software.

I could also draw parallels between how it requires a collaborative team to handle both a wedding and software, how children can result from both, and, most regrettably, that they both have a similar failure rate.  I think you get the point though! Just for fun, try describing your last project or two and replace all software development terminology with that which would be used for a wedding.  You may be surprised at just how similar they are!

Tuesday, June 28, 2011

Believe in It

My Dad wasn't one for giving lots of advice about life. Golf, yes, but life, not so much. One thing he did say, though, has stuck with me.

Dad was a partner in an insurance brokerage and estate planning firm. He arrived at that point in his life after joining the Personnel group of a very large insurance company in the mid-1950's. He stayed in Personnel, later Human Resources, right through until the mid-1970's. He finally decided to make the change to Sales after he could no longer be a person who had to fire other people. In fact, the stress of firing others almost killed him.

He joined the Sales organization of this company, and his people skills resulted in immediate success. After a few years, he and his boss left the large company and started their own brokerage. Many trials and tribulations ensued, but the company persisted and flourished (they're still in business and growing some 30 years later).

As Dad was winding down his career and preparing for retirement, he talked me about carrying on his legacy by being part of the company. I said to Dad that I really didn't feel that I was a salesman. His response was,
"If you believe in the value of what you're selling, you will have no problem selling it." 
I didn't join the company, but those words have stayed with me ever since.

Coaching Point

You may be the lone voice in the woods at your organization, telling anyone who will listen that Agile is the way to go!  You may be an independent consultant that has to market your services to potential clients.  Regardless of your circumstances, as a coach you are often put into the position of selling Agile to people within organizations.

This is where the rubber hits the road with respect to your passion and commitment. If you believe, and I mean truly believe that Agile Software Development values, principles and practices will bring benefits to your clients or your organization, the selling part will come easily and naturally. Of course, you have to know what you're talking about and you have to have used an Agile approach in practice more than once to be truly able to convey the process to others.

Remember, though, as much as you believe that Agile is beneficial your audience may not be ready, willing or able to listen to that message. A team or organization must be feeling enough pain that they are willing to be open to seeing the value in the approach you're suggesting.

Yes, those words have stayed with me.  Indeed, they have gotten me through some rather grim and frustrating days as an Agile Coach.

How many software projects have you been part of that were late, over budget, full of defects and took a human toll in terms of stress and burnout?  Agile is by no means a silver bullet, but it does represent insurance against many of those issues.