Solutioning is a tragedy.

A few years back I worked with a customer who ran a WordPress-based e-commerce site. As a way of boosting sales, the Marketing department had come up with a coupon campaign. They would send out voucher codes to existing customers to try to get them to buy again. Pretty standard stuff.

After a high-level estimate session with the IT department, the answer was clear: adding coupons to WordPress e-commerce is a matter of configuring a plugin. Easy-peasy. So a budget was assigned and the project was launched.

The Marketing department came up with an elaborate scheme: coupons could be shared with family members only. If people shared those codes with their families, the brand would benefit. By the time this idea reached the IT department, alarms went off.

There was some kind of database of close family members from a previous campaign. Since the family relationship data was stale and incomplete, there were so many edge-cases that the complexity exploded. Who counted as a family member? How would we add grandma if she wasn’t in the database? People would need some way to add their relationship info and no WordPress plugin would integrate with that database out-of-the-box. The only way to do this properly was to write a custom voucher plugin. Ugh!

Bye bye budget. Bye bye deadline.

Marketing blamed IT: they estimated that it would only take a few days! What the hell?

IT blamed marketing: they asked for a voucher system and now they’ve come up with this cockamamie contraption that’s next to impossible. It’s like they want us to fail!

This could have been avoided by having the developers in the room when the idea was originally fleshed out. Marketers don’t factor in the complexity. Multiple plugins support “share with Facebook friends”, for example. That would be in line with the spirit of the campaign and be a fraction of the cost. In hindsight, that would have been a great idea.

When developers say “give us problems, not solutions”, this is what we talk about.

The defining trait of a tragedy is that the audience knows upfront that it’s not going to end well for the main character.

Solutioning is a tragedy.