Home Handyman Syndrome
Most people that own a home have at least one project languishing somewhere around the house. We have a few window sills that remain unfinished from a renovation started 5 years ago, there’s that stained glass project that sat around for a couple of years before my wife recently finished it. This has now become a project on my list, as I have to frame it.
While these remain unfinished, there’s always pressure to start up new projects as well. We would like to reclaim part of our basement for organized storage (which will allow us to reorganize the office), and for some reason there is a need to repaint walls that look perfectly fine to me.
I have come to realize that there are a number of principles that tend to govern odd jobs around the house:
- We have a tendency to underestimate the effort required for things that we don’t fully understand. How can it possibly consume more than a few minutes to fix that leaky faucet? That small plumbing job that we’ll tackle this weekend expands into the cleaning up of 2 significant messes and 5 additional trips to Home Depot, and expands to 3 separate weekends.
- We tend to overestimate our capacity to extend our knowledge and skills into new, unrelated domains. I have a degree in Physics, landscaping should be a breeze, right? Closely tied to the first principle, we repeatedly fail to recognize that every specialization has evolved because of the magnitude of knowledge and experience required to do well in that field.
- We tend to unrealistically constrain our work into arbitrary durations, with little appreciation of the effort required. The majority of jobs around the home are artificially constrained to an afternoon, or a weekend if they seem very large. Those that spill over often are the ones that languish for years.
- We hope we will not run into unforeseen challenges, even though we can’t recall a home improvement project that has gone smoothly. We don’t recognize that it is our naïve rush into the unknown that actually creates some of the challenges that frustrate us. I still have a useless pair of needle-nosed pliers with a disintegrated tip from the time I tried to replace a live breaker.
- We select projects based on our personal perceptions and motivations, rather than focusing on what is more appropriate in a broader sense. Given a choice between a backbreaking chore that might provide a great deal of benefit or a simple little fix that is actually relaxing, the law-of-preservation-of-the-back will usually win out. We lean heavily towards the easy, the low risk, the safe activities.
In a lot of software shops, there can be a tendency to drive work based on the same principles that drive household tasks.
Underestimation is a chronic issue in the industry, as we commit to single-point numbers (not estimates) based on a superficial understanding. Rather than appreciating the uncertainty associated with the unknown and working to reduce uncertainty, we blindly forge ahead based on commitments that have been hastily made. Our own experience will tell us that this is rarely successful.
Specialization in the software industry is unavoidable, it is rare to find a jack-of-all-trades that truly excels in multiple disciplines. What this means is that we should actively seek out reasonable expertise for the task at hand, rather than assuming we can simply muddle through the task. A plumber can finish off a couple of tasks in a few hours that have been languishing in the home for months; the same is true for the appropriate technician in the software field.
With little supporting information about the technical magnitude of the task ahead of us, we are often left to use targeting and promises as the primary driver of schedule on our projects. Granted, some projects do have genuine calendar dates that cannot be moved, but in all instances we need to understand the work on our plates and the time-based goals and constraints and appropriately balance the two. Technical people will often bemoan management or marketing for setting unrealistic dates, but the responsibility remains for us to have a stronger defense than to merely say “that’s not enough time”.
Given often unrealistic time constraints (because we have not adequately made our counter-arguments), there is no time for contingency on our projects. This, along with the tendency for us to neglect to truly understand what went wrong on our previous projects, leads us into trouble. Our headlong rush into current projects often drives us to inappropriately cut the wrong corners, and we make costly mistakes. Without measuring the cost of our mistakes, it is easy to justify not doing the simple things that can make our lives safer, such as shutting down the mains before replacing a breaker, or getting a common vision for a project before we move forward.
Projects are often driven by someone’s pet interests, rather than understanding which initiatives are most appropriate for the business. This is easy to add; that is cool technology; I have one client that asked for this feature. We need to step back and understand the business value we are building, and the needs of the client we are addressing. If we can’t articulate both, it’s not a project worth pursuing.
It is understandable that odd jobs around the house are often run in a chaotic manner – few of us have clear education or reasonable experience in the area, and I don’t recall seeing a manual for proper care and maintenance when we bought our 50 year old home. We are learning through trial and error, with emphasis on both terms. That is no way to run a software business. – JB