Wednesday, January 16, 2019

Why Is Open Source Not More Successful for Enterprise Applications?

Although open source software now completely dominates some categories of software, this has not been true for enterprise applications, such as ERP or CRM. What is it about enterprise applications that makes them so resistant to open source as a business model? 

My friend and fellow-analyst Holger Mueller has a good post on Why Open Source Has Won, and Will Keep Winning.  Read the whole thing. In Holger's view, which I agree with, the battle between open source and propriety software is over, and open source won. In just a short fifteen years or so, it is hard to find any commercial software vendor attempting to build new platforms based on proprietary code. He writes:
Somewhere in the early 2000s, Oracle dropped its multi-year, 1000+ FTE effort of an application server… to use Apache going forward… that was my eye opener as a product developer. My eye opener as an analyst was in 2013, when IBM’s Danny Sabbah shared that IBM was basing its next generation PaaS, BlueMix, on CloudFoundry… so, when enterprise software giants cannot afford to out-innovate open source platforms, it was clear that open source war-winning. As of today, there is no 1000+ people engineering effort for platform software that has started (and made public) built inhouse and proprietary by any vendor. The largest inhouse projects that are happening now in enterprises, the NFV projects at the Telco’s, are all based on open source.
Holger's observation is certainly true for software at the platform or infrastructure level of the technology stack. All the examples that Holger cites, and nearly any other that he could cite, are in these categories.

But what about enterprise business applications, such as ERP or CRM. One of the best examples is SugarCRM, but even there, it lags far behind the market leaders. Open source ERP is in even worse shape. Players such as Compiere (now owned by Consona), Adempiere (a fork of Compiere), Opentaps (an ERP and CRM system), xTuple (formerly, OpenMFG), and Odoo (formerly, OpenERP) barely move the needle in terms of market share. Where is the Linux of ERP?

Since the early 2000s, I have been hoping that open source would catch on as an alternative to the major enterprise apps vendors, such as SAP, Oracle, Microsoft, Infor, and others. I would like to see open source as a counterweight to the major vendors, putting more market power on the side of buyers. 

So, why hasn't open source been more of a contender in enterprise applications?  I can think of three factors, for a start.
  1. Open source needs a large set of potential users. But enterprise applications do not have as broad a potential user base as infrastructure software. Although the ERP market is huge, when you break it down by specific industries, it is small compared to the market for, say, Linux.
     
  2. Enterprise apps require a large effort in marketing and sales. Buyers put great weight on name recognition. But open source projects do not generally show much interest in the sales and marketing side of a business. If a project is truly community-developed, who is interested in marketing it? As a result, very few people know what Odoo is, for example, let alone, how to acquire it.
     
  3. Open source is labor-intensive. It is great for organizations that have time but no money. My impression is that open source ERP adoption is somewhat more successful in some developing countries, where there are very smart people with good technical skills willing to spend the time to implement a low-cost or no-cost solution. Here in the U.S., such companies are rare. Most would rather write a check. 
Ironically, open source is very popular among enterprise application providers themselves. Software vendors, whether cloud or on-premises providers, love open source and many now build nearly all of their systems on it, because it scales economically. Yet, when they sell their own enterprise applications, the last thing they want to do is offer them as open source.

So, why hasn't open source been more successful for enterprise applications? Perhaps readers can come up with other reasons. Please leave a comment on this post, or tweet me (@fscavo), or email me (my email is in the right hand column).

Update, Jan. 18: My friend Josh Greenbaum has posted a lengthy response on his blog, here: Open Source, Enterprise Software, and Free Lumber. Please read the whole thing, as it is quite thoughtful.

Josh agrees that open source software (OSS) has been more successful for infrastructure components than for enterprise applications. But he goes off in a different direction to argue that it's not right for commercial software vendors to make money from their use of OSS. I have two basic disagreements with Josh on this point. First, most OSS licenses (GNU, for example) mandate that creation of software incorporating the OSS must be provided under the same OSS license. So commercial software providers go to great lengths to ensure that their developers do NOT incorporate OSS into their software products. Now, OSS providers CAN incorporate OSS in their own operations (e.g. use of Linux or MariaDB in their provision of cloud services), and they can include OSS as a supported platform.. In both cases they are not violating the terms of the OSS license.

My second disagreement is that Josh objects to OSS on what I consider to be more or less moral grounds, that it is wrong for others to make money from the free contributions of others (a "sucker's game," he calls it). Putting aside the fact that commercial software providers (think, IBM, Microsoft, Facebook, Google, and hundreds of others) are the largest contributors by far to OSS, no one is holding a gun to the head of any individual developer forcing him or her to work for free. If OSS contributors find it acceptable for others to make free use of their labors, who am I to say that it is wrong for others to do so? The fact that OSS has been wildly successful (at least for infrastructure-like components) tells us that there must be something in the economic model of open source that works to benefit both contributors and users of OSS.

Update, Jan 18: Some email correspondence from my friend Vinnie Mirchandani, led me to send this email reply, lightly edited here:
Yes, the large tech vendors, such as Google, Microsoft, IBM, etc., have benefited enormously from open source, but they also contribute enormously to open source projects, because it is in their best interest to do so. You know that IBM contributed key IP from its decades-old work in virtualization. Microsoft open sourced Visual Studios Code, and it is now one of the most widely-adopted development environment. Oracle, IBM, and others contribute to Linux because it ensures that it runs on and is optimized for their hardware. They all contribute because it is in their self interest to do so. Moreover, senior open source developers, especially those who have commit-privileges, are in high demand and are often hired by these same large tech companies. So the whole open source movement has become a virtuous ecosystem where everyone benefits.

Update, Jan 19: Over at Diginomica, Dennis Howlett riffs on our discussion in, Why you should take notice of the open source in enterprise suckers conundrum. On my question of why open source has not been more successful in enterprise applications, he points to the lack of real marketing and sales efforts. He writes:
I’d go one step further and as a nuanced view of Frank’s (2) element. In most cases, enterprise software is sold, it’s not bought. What I mean is that troupes of vendor reps, marketers and other hangers on line up to convince you about taking on one or other solution. In the open source world you are ‘buying’ not being sold. There is no real money for marketing and sales. You either take it (for free) and then work on it yourself, or you enlist the help of specialists who both understand your processes and the software code itself. And despite the early success of Salesforce as a cloud vendor from whom you bought applications at the departmental level on your credit card, the majority of enterprise deals are sold.

7 comments:

clive boulton said...

I hazard a guess we'll see open source ERP/CRM emerge as we solve multi-party application composition, which requires a more granular and resilient security model licensed to provision generalized ERP/CRM business features at scale. We can already see progress toward a new robust composition in modern javascript with business functionality that goes beyond front end websites to rich web apps.

Missing is the plug-in business functionality, similar to web components in the Node.js ecosystem. If we assume open source ERP/CRM is already tantalizingly close. We need to join up some missing dots. Any new app pattern that scales ERP/CRM built from open source software will need to also scale like infrastructure. For features and functionality this requires a far more granular security pattern, perhaps with a non free open source licence model. We already see open source licence evolution at MongoDB and other projects in SSPL. (https://www.mongodb.com/licensing/server-side-public-license).

This points toward extremely granular ERP/CRM functionality that grants rights back to the authoring vendor distributed perhaps by Dynamics, Salesforce, SAP and forward looking platforms. More so as lift and load ERP/CRM is rewritten for the modern web and distributed by trusted clouds.

Gluu said...

Enterprises love the cloud, because they hate operations! They want the utlity of the software only, and not the liability of downtime and system upgrades.

What infrastructure will enterprises continue to operate? And in these categories, I think open source will hold it's own. Because net-net, the open source development methodology creates the best software (most innovative, fewest bugs, largest community).

As the founder and CEO of Gluu, an open source platform for identity and access management--something only large customers are interested to operate--we encourage the use of cloud. It's only where cloud doesn't make sense where an opportunity may exist for us.

So it's a niche market now. But it's a global niche market, so it's big enough for us.

I would also say that open source enterprise software sales is normally "Customer Relationship" business--not product innoivation. In a customer relationship business, you need "wallet share" not "market share". Going after wallet share favors large commercial organizations, who maintain high prices so their software is reassuringly expensive.

So it's a really complex issue. You might want to listen to my podcast, "Open Source Underdogs", if you want to hear from the founders of some of the open source companies who are making a living out of enterprise software sales. Or see the website for all the episodes.

Shiney said...

Frank

Great post.

Your comment "It is great for organizations that have time but no money." especially chimes with me.

Many years ago myself and my business partner rescued a manufacturing company here in the UK - boot-strapping it with our own cash. It had a legacy ERP system that wasn't really right-sized for the brave new world we found ourselves in.

We also got 'stiffed' to re-licence the ERP system as the vehicle we used for the rescue was a 'new-co' - we ended up paying over money we didn't have that could've been better spent on the rescue. When the ERP vendor was acquired less than 18 months later the application got 'sun-setted' - I was less than happy at another £50k bill.

So we went our own way and using FOSS tools we developed our own ERP system - we had a requirement, the expertise (maybe not the time!!) and no money which was a serious problem for us. But we got there and the software we developed has given us an advantage over others in our sector and allowed us to survive and prosper - we have also saved a ton of money in the mean time.... probably in six figures.

The software morphed into uzERP https://www.uzerp.com/ but getting the message out there that there is an SME focused UK system that is FOSS and well supported has been tough.

Still, I'm hopeful that FOSS ERP will start to gain traction.



Frank Scavo said...

Thanks to Clive, Gluu, and Shiney for your comments. I would have responded earlier, but Blogger notifications apparently are getting shuttled into my spam folder.

Clive, you certainly may be right that better conventions to accommodate functional plug-ins would help the situation. But I am not sure why that has apparently evolved for infrastructure OSS but not enterprise apps OSS--it feels like a chicken and egg issue to me.

Shiney, I love your story. I know a couple of other cases like this. I just wish I saw more.

Frank Scavo said...

From Twitter, https://twitter.com/mrinal/status/1086156074934095872 I'm copying the following to the record:

"I think this (somewhat ironically) has to do with user experience. Applications that succeed must work closely with users, this is harder to generalize & build as a community (compared to infra).. esp. enterprise apps where user flows are more complex."

I agree this could be a contributing factor. Unlike OSS infrastructure software, enterprise applications need a lot of work on the user experience. It might be that developers in an OSS community around enterprise applications might not show much interest in this part of the solution.

Alan Berkson said...

It comes down to tolerance for user experience. In the infrastructure space you have geeks and hackers who prefer command line to fancy GUI. Linux desktop and open source alternatives of MS Office, Photoshop, et al have been around for a long time, but user adoption is slow.

Another factor is the ease of adoption of SaaS options. Rather than enterprise-wide implementations for ERP and CRM, orgs can now do it at the departmental level to prove efficacy or for specific use cases.

Matthew King said...

After the ERP concrete has been poured over an organisation it becomes difficult to change - but it’s robust and automated.

Proprietary enterprise products were first to market and are thereby entrenched. The functionality in these systems is vast and many organisations are ensconced in them for better or worse.

So it’s less about the virtues of open source software and more about the difficulty and cost of improvement.

Even the vendors themselves struggle to change application technology to something different (proprietary or otherwise).

SAP’s ill-fated River Definition Language is one example. SAP’s customers don’t want the product to change rapidly because they don’t want disruption. Instead application code lines are needing to evolve onto new platforms and databases leaving the application logic largely intact. In contrast open source is seeing some success on the presentation layer.

https://openui5.org/

Sticking with a development language is also less disruptive for the enterprise software vendor. They can continue to leverage experienced developers many of whom have business process knowledge.

Another obstacle to open source adoption in enterprise applications is the rise of low code development tools such as Mendix and OutSystems. These products aren't cheap but they allow for very rapid development of bespoke functionality around core systems. They also transfer business process innovation away from the software vendors - into the hands of the enterprise customer and their professional services partners.

The same can be said of traditional development on Cloud application platforms but with a less rapid pace. On this point, open source is seeing adoption in the Enterprise via Cloud Foundry based platforms such as SAP Cloud Platform and IBM Bluemix. These platforms themselves support a mix of open source and proprietary application development languages and frameworks. Mendix is on the list much to my delight.

https://cloudplatform.sap.com/capabilities.html