Monday, May 5, 2008

Make the solution fit the problem

As I have mentioned before, the majority of my career has been spent in software development. Quite often, I have seen people try to solve problems inappropriately.

[Let me point out something here. Many people have a mistaken view of what software development is. It should be, simply, the solving of problems, usually business problems, by any means necessary. Some require a solution based solely in the writing of computer code; most need a solution based in the real world with assistance from the computer.

One of the saddest developments along the path of my career is the way software development has become ghetto-ized, partitioned off into a silo of code, code, code. What should be an opportunity to revisit the way one does business has become code first, think later. Too many people think, I can make the code do this, rather than, I can help the customer do this. The Internet boom failed for a lot of reasons, but the biggest was that people tried to find solutions, whether or not there was a problem, instead of finding problems.]

Generally the inappropriate solutions come from mis-scoping, the attempt to make a "big" solution fit a small problem, or to find a quick and dirty solution for a big problem. The former usually comes from a desire to implement something a developer has read about and wants to try ("Let's rewrite 100,000 lines of server code in Ruby on Rails"), the latter from management pressure to cut corners ("Can't we just slap in a little open-source stuff - search the Net").

I'm drawing examples from my domain because I know it best, but we see this kind of failure all the time. The replacement of Coca-Cola with New Coke is the canonical example of a large corporation trying to solve a problem that didn't exist (I'm oversimplifying here, the problem was the failure of market share to grow as desired, but the "solution" was clearly too large). Many, if not most, business failures come from an inability or unwillingness to properly scope a problem and devise a right-sized solution.

When you combine this mismatch of solution to problem with political philosophy and "success bias" (the tendency to believe something works just because it's associated with something that succeeds - once), you end up with activities enshrined in policy that result in subsequent failure.

Just in the last 24 hours, I've seen a couple of examples of this kind of thinking. First, this post from Signal vs. Noise, which extols an online community called Ravelry that asked their members for donations. They succeeded remarkably: "In 3 weeks, 3,457 Ravelers gave donated a total of $71,000 to Ravelry. Not only did we receive an amazing financial boost, we also received a flood of love."

Second, last night 60 Minutes did a report on a group called "Partners in Health," which was a marvelous story about Dr. Paul Farmer and his group. Dr. Farmer's organization has brought medical care to people who desperately need it, saving countless lives in nine countries. The report focused on the work they're doing in Haiti, having opened a free medical clinic and provided doctors to this unbelievably poor area in the Western Hemisphere.

These are marvelous things, and are true examples of the spirit of private giving that is inspirational in the same way as fundraisers for ill children and aid to the Asian tsunami victims are. These are tributes to the essentially generous nature of human beings who could easily look the other way.

But there is an underlying danger to all of these efforts. They are all localized, one-off solutions to a specific problem.

Will the next online community be able to raise $3,000 a day? Aren't there more than nine poor countries that desperately need medical care? Do all illness-stricken children get bowl-a-thons? Will the Myanmar cyclone victims (10,000 at last count as of this writing) get the same aid from developed countries as the tsunami victims did?

There are problems that demand collective, concerted action, that should not be left to the ability of an organization to hold charity balls or walks for the cure, but must grow out of the will of us all. No matter what you may have gleaned from reading this blog, I have been a conservative all my life - I believe in the power of the market and the individual.

But I grew up in a context of collective action, and my beliefs were a counterweight to that. Now, since the Reagan revolution, collective action is seen as un-American, as against the principles of this nation.

But it isn't. It's a matter of fitting the solution to the problem. If a Web community needs funds, it's probably right to ask for donations. But, if someone's seriously ill, and can't afford treatment, or a desperately poor country is ravaged by a natural disaster, the only rational way to help is through larger intervention, not by holding a telethon.

Government was invented by people to solve problems; otherwise, we would all be independent actors and much of our progress wouldn't have happened. It's the same as when we talk about free-market solutions to health care or energy policy; that approach simply won't work, because these problems are too big and have too much lead time to wait around for market incentives to make those solutions attractive. It's popular to say it will get done, but it requires a sense of magic that I have trouble relying upon.

2 comments:

Casey said...

Hey there,

The bit about Ravelry wasn't exactly right (I posted a little over at SvN)

Our users wanted to do something nice for us and this is what the came up with. (We didn't ask for it) I'm not really sure how we are an example of this kind of thinking.

We're just a little husband and wife company that is trying to serve the needs of a very specific community. We love our jobs and we love our users :)

Androcass said...

Casey:

Well, then perhaps I was not entirely clear (or perhaps the original post at SvN wasn't).

My point was that these individual actions are fine, even laudable, but they do not serve as a replacement for an overall strategy. In your particular case, what happened may be entirely appropriate, but I don't think that donations can be used to drive the Web, and there are people who would use your example in that way ("a thousand points of light").

I'm glad things are going well for your site (nice dog, looks like one I grew up with - and, I do knit, though I've been away from it quite a few years, so one day I might join your community).

Clicky Web Analytics