Wednesday, June 09, 2010
Why aren't we seeing more adoption of open source in large enterprises?
First, lets talk about enterprise funding and the inversion model. The need to do a proof of concept (POC), pilot or other forms of trials is embedded within many enterprise cultures. The banner of risk favors closed source companies in that I have a lot more opportunity to see if things will work without making any financial commitment. An enterprise has the opportunity to call up any closed source vendor and ask them to do lots of work for free with the hint that they will get a payday in the future. Open source does not provide this type of leverage.
Looking at it through the lens of an Enterprise Architect who understands the importance of buy-in from my peers to developers, etc open source is also sometimes at a disadvantage. We all understand how much PowerPoint is used within a daily basis in many enterprises. If I had a $1 for every time PowerPoint was used, we could ensure that no one in Haiti would go hungry. Let's say I wanted to use non-commercial open source to do content management. I would have to spend lots of time constructing PowerPoint presentations and running around presenting it. At some level, people would grow tired of hearing from me and I would lose buy-in. Sometimes buy-in occurs when you hear it from someone new, the challenge of when consultants present the same information as employees. A better strategy is to leverage a vendor to do presentations on my behalf and to even encourage them to sponsor lunch and cookies.
Sometimes a person has clarity of strategy but may fail on execution. Nowadays, the vast majority of people who work in Information Technology know very little about Information Technology. If you are an enterprise architect but have never written a single line of code, how successful could you be in presenting Tomcat/Jetty/etc to a group of Java developers?
Wouldn't it be fascinating if there were empirical studies on how much executive coddling is required in order to make an enterprise purchase? Lets pretend I am the CIO of a Fortune 10 company and I call up Microsoft. How much attention would I get? If I then call up the lead for a small open source project would the reaction be the same? Open source thrives based on technical credibility while closed source thrives on abstract authority. Would James McGovern, the enterprise architect have more credibility to the leads of various open source projects centered around SAML or XACML or would James McGovern the executive...
The biggest challenge with open source has actually nothing to do with source code. The legal community has figured out which licenses are favorable and enterprise friendly and there are lots of great companies that provide support. What is missing from open source is the notion of free training and good documentation.
The local Microsoft office does a wonderful job of holding developer days where they teach software developers how to leverage the latest technology. They even feed the developers lots of pizza. Even if you don't care to use Microsoft technology, you can still attend these events free of charge and the cost to the enterprise is zero. There is no equivalent in the open source community.
More importantly, there are lots of great pieces of software within the open source community, but much of it lacks documentation. The general trend of outsourcing to other countries means that the enterprise is at increased risk now that they are leveraging resources that simply don't have as much experience in software development as those who came before them. Since Americans are starting to throw away their software development talents and not really doing knowledge transfer in this regard, the only hope is to be able to have someone learn from documentation.
Documentation doesn't just include what ships with a product, but also comes from third party sources such as book publishers. Microsoft and Oracle for example have their own book publishing entities where open source has to fight for the crumbs. In this regard, we run into a chicken-and-egg challenge where publishers won't publish documentation on open source until the open source community encourages people to spend money on documentation. The mindset of free has been its own worst enemy...