Wednesday, May 6, 2009

Dogmatic views on Open Source


Why begin a blog named "Pragmatic Enterprise Open Source" with an entry starting with the word dogmatic?

Since I was first introduced to the notion of open source software in the late 1990's I have become increasingly intrigued by opinions on both ends of the spectrum relative to open source, and bewildered by the dogmatism and sometimes utter irrationality with which holders of these wildly divergent opinions opine, especially when they come from leaders in enterprises with otherwise nearly identical business models.

"From which well doth he drink his kool-aide"? Sometimes the answer is obvious, others times, indiscernible. As is the case in political movements, we run the risk that the shouts of zealot's and detractors at the fringe might drown out the mass of sane and often better informed yet quieter voices in the middle. While this is my blog, I hope that if you stumble upon it and are so moved you will post a comment telling me "how wrong you are", or better yet how, "you have it almost right, but missed such and such important element."

There are many thousands of blogs, wikis, and forums that delve into the bowels of the most prolific as well as the most obscure open source projects, and in the time it took me to right this, likely another novel sized body of text on this immense subject was spawned. If you have contributed code to an open source project, and don't know what a P/L is, then I apologize, I have wasted your valuable time, and now is a good time for your to throw it in reverse and head back to your favorite development environment or aforementioned social posting site. By the way, thank you for your work!

So let's start with enterprise open source's own 800 pound gorilla.
Walk into the front lobby of Redhat/JBoss Headquarters in Atlanta, Georgia and you will be greeted by a lovely lady over whose head is posted a very large indelibly inscribed quote attributed to Mohandas Gandhi..."First they ignore you. Then they laugh at you. Then they fight you. Then you win". Judging by the size of Redhat ( ~$650 M 2008 revenue) and the several years running 30+% year over year growth, there have already clearly been some "winners", not the least of whom are the crew that grew JBoss from an idea to a sale to Redhat for $360 million in just a few short years. Redhat's current CEO left a position as COO of Delta Airlines where it is reported his 2007 earnings topped $8 million. Open source has grown up, or at least eight or ten companies have built businesses around supporting these ready for the enterprise code bases, now available packaged similarly to proprietary offerings with which they compete, sans the initial licenses costs and overhead associated with paying for 458 foot private yachts and decommissioned fighter jets. More power to Larry Ellison, but it is nice to have a choice sometimes.

The time for intellectually honest debate about the commercial viability of several enterprise ready fully supported open source products is over. If you do not agree, please don't take my word for it, but do remove your head from the sand and call the CIO down the street who is likely running circles around you. Don't get me wrong, there are plenty of great reasons to run a pure Microsoft shop, or to heavily leverage IBM. But if you are running significant web applications, you are probably already using open source and are just unaware of it. If this is the case then you are likely running unsupported product, which in turn may be in violation of your own IT Governance. The good news is that there is likely someone out there who will take your money in exchange for support and indemnification of these rogue technologies, and they will do so at a fraction of the cost for proprietary products, and the quality of support will likely be as good or better than what you would get from similar closed code providers.


Today open source is in the enterprise in a pretty big way, and while the above quote from Gandhi accurately describes the "you've come a long way, baby" progress of the open source movement, it is flawed in that it suggests an end game. Open source is just an attribute, an attribute that now is affixed to products owned by and / or supported by some of the largest companies in the world, including Oracle, with its purchase of Sun / MySQL. IBM was a founder of the Eclipse Foundation, and has recently formed an even stronger relationship with EnterpriseDB, a professionally supported enterprise open source alternative to Oracle database.

Ellison may have ignored, then laughed, but he is now in fight mode, a fight he will take to his grave, which will most assuredly include open source spoils and pillage.

So save your dogma for politics, open source is in the enterprise, but so is Larry, Gates, and the rest of the usual suspects, and they have inextricably entered the game. The sourceforge.net open source repository hosts over 180,000 open source projects, with 1.9 million registered users, and 28 million annual visitors to the site. Translation...there will continue to be an increasing flow of open source projects that bubble up, harden, and become enterprise ready. The genie is out of the bottle. Rub it right and it may grant you a wish or two.

Open source is no longer just languages like PERL, Java, and Ruby, and it is no longer even just operating systems like Linux and its many flavors, or even limited to middleware. There are now viable options for many business needs that reach up the stack all the way to CRM, business intelligence, etc. There is even a huge amount of open content in education and entertainment. The wildly popular band RadioHead put a recent album on sale on-line for "free", and suggested buyers pay what they thought it was worth. The fans spoke with their pocketbooks and paid an average of 8 dollars for the download, many paying zero, and others paying much more. While RadioHeads songs are not "code", and they are not registered with Apache or GNU ( open source licensing modes ) the monetization parallels are helpful in understanding the phenomenon of open source, and in explaining why on earth someone would "give away" their IP, or even their "help" to a stranger in support of something neither of them owns.

At the level of the developer it is largely about being a part of something bigger than you, that you can be a part of...using open source it is truly a part of practicing your craft. I use this "product" because I can see it, there are no secrets, and if I want to bad enough, and I am good enough, I can even change and build upon it. Literally millions do. It is this mass participation that has made some open source products simply the best in class, regardless of how they are licensed. Most well informed technologists would put no peer next to Linux.

At the level of the CIO, she can say, I want to use these three open source products at the platform level, but I only want to buy support for those two, on top of which I will place my custom built applications, and several others I purchased from IBM and SAP, and I am going to use Oracle data base for some applications, Mysql, for some, and Postgres Plus for still others. I am running SAP / Business Objects for some of our business intelligence needs, and Pentaho or JasperSoft for still others. Maybe I will migrate my content management from Documentum to opensource contender Alfresco. For CRM, I could use Oracle on site, Salesforce.com in the cloud, or open source "SugarCRM" either hosted internally, or pay for a Saas version.

The quiet, technology agnostic open source pragmatist is the winner of this war, but that does not assure he won't be gassing up Larry's boat for his next Mediterranean cruise . What say you?