I’m convinced that innovation on the consumer side of the web is great for enterprise software.
I’m similarly convinced that innovation on the consumer side of the web is terrible for enterprise software.
Reading Marc Benioff’s post “The Facebook Imperative” on TechCrunch last week reminded me of these mutually-exclusive conclusions.
On the one hand, as Benioff points out, the consumer web has driven new methods for delivering software, i.e. the xSP model to make enterprise software more like Amazon.
Well before that, the browser was facilitating collaboration and distributed work within the walls of companies, as intranets and networked software applied the concepts of the WWW to their businesses.
And now, Facebook is completing the old question “why can’t enterprise software be more like blank?”
Obviously, the consumer web has driven major innovation into enterprise software.
It has also simultaneously driven complexity and cost.
What do I mean by that?
Imagine you have a piece of software that does one unit of work, and this unit of work is critical to your business. Along comes Facebook, and suddenly, everyone wants to add a social on top of this unit of work.
It’s a good idea because people do that unit of work, and sometimes they cannot all be in the same room. So, adding a social layer will help collaboration.
By deciding to add social, you’ll now need to determine how to do it. Usually, the decision is between build or buy. Assuming you bought the software initially, it makes sense to see if the vendor has an upgrade that will add social.
If they do, you can go with the upgrade, but that will require an implementation team and careful planning because you cannot disrupt the working software because it’s critical to your business.
Plus, once the upgrade is ready, you’ll need to retrain your users because it’s a good bet that the addition of a new feature has changed how the software works.
If your original vendor doesn’t have the social layer you want, you’ll need to find a vendor that has what you want, and you’ll want that vendor to support some level of integration with the existing unit of work because the social layer will only add value on top of your existing software.
Many companies turn to analysts at this point because analysts know who offers what and have compared vendors to each other. They’ve done the legwork already.
Whether it’s produced by the analyst or the company, a request for proposal (RFP) typically follows. The RFP goes out to vendors who reply with their capabilities.
Software companies want to earn business, natch. So, once new items begin to appear on RFPs, e.g. social, they will need to answer, which leads to the development of features.
On the development side, you can’t avoid complexity by streamlining and removing features, or if you do, you do so at your peril. Facebook can redesign and remove features with impunity because their users don’t pay to use the service.
Enterprise software is obviously for-pay, and as much as you might like to be like 37 Signals, you really can’t expect to keep customers if you remove features they use.
What choice is there? If you don’t add new features, you won’t win business. If you don’t win business, you go out of business.
Once a vendor is selected, the implementation begins and typically follows the same path as an upgrade. It might take a bit longer due to integration testing with your existing software and new training for users.
Pretty involved process. Compare that to switching social networks or joining a new social network in the consumer world.
So, making enterprise software more like Facebook drives complexity, by adding features, and cost, by requiring new software.
Just like making enterprise software like Amazon did and making it more like the Internet and more like a PC did before that.
So, you can see the juxtaposition of good and bad here. That’s why I always say that software is hard.
The key is balancing innovation with complexity.