Slaying the Microsoft Octopus
I laughed and I cried when I read Robert Spivack's response to the Microsoft blog entry that announced its intention to enter the hosted CRM space 9 - 12 months from now (scroll to the bottom of the post to see Robert's comments). Here is the quote that made me laugh:
"The intrincate interdependencies between IIS, SQL Server, Reporting Services, Active Directory, and Security (double-hop Kerberos) create an installation nightmare with octopus-like tentacles reaching into every nook and cranny of server infrastructure almost impossible to get running correctly."
I visualized an octopus with a Microsoft branded head wrapping itself around a server and then reaching up and down the rack to torment other servers that had the misfortune of being placed in close proximity to the one that the octopus was intent on destroying. Frightening visualizations that accurately reflect Microsoft application architecture often make me chuckle.
I cried because it seems that Robert's sentiments regarding the complexity of Microsoft CRM application software are becoming generally accepted as the "software condition." All of the software conferences that I have attended in the last 90 days have been dead, dead, dead. It seems that the general wisdom around software these days is that it is a crappy business unless you have an application that fits the SaaS mold, but not all applications lend themselves to an on-demand form factor.
I think software business can be great business, but software application companies absolutely have to abandon the old methods of licensing and distribution. After all, if Microsoft cannot get it right when attempting to deliver their various products on their platform because of the impossible interdependencies that arise when running multiple applications on a single, controlled instance of their operating system, what hope is there for an independent software vendor to get it right when dealing with the multiple OS (short for Octopus, I think) variations they invariably encounter across their customer base?
In a by-line article recently published in Enterprise Open Source Magazine, I elaborate extensively on the benefits of "losing your independence" for the independent software vendors (ISVs). Instead of fighting the octopus at each customer, embrace Linux and open source components to "wrap your application" and create a software appliance. Use virtualization to make the software appliance a virtual appliance in the case where a customer simply cannot bear to remove the octopus from an existing server. Your application will be safe from the octopus because of the protective layer of the virtual machine container.
The software business can be a great business if you have the right weapon to slay the octopus. SaaS is one weapon, but don't discount the software appliance as an approach that is cheaper than SaaS re-architecture, and may indeed be far superior for many types of applications. It is certainly more channel friendly as it allows your partners to add hardware and customer service value when delivering your new, simple to install, simple to maintain software appliance.
But what about that octopus carcass? Serve it up Polvo Frito, but don't overcook it as it can become tough when over-exposed to heat.