Are you an open source user or joiner?

How a company engages the community matters more than its business model

In my previous column, I touched on the issue of what constitutes an open-source vendor. Ask Andy Astor that question, and his answer is a shrug. "Honestly," he says, "who cares?" To Astor, there are really two broad categories of companies with respect to their relationship to open-source code. Some are users. Others are joiners.

Mind you, Astor's views on this subject are notoriously controversial. His company, EnterpriseDB, sits at the crossfire of the debate I touched upon last week. EnterpriseDB markets a product built on top of the PostgreSQL database, and it does good business. Since I last wrote about EnterpriseDB in late 2005, it has grown into a worldwide operation with more than 100 enterprise customers. The catch? While PostgreSQL is open source, the EnterpriseDB software is closed and proprietary.

To Nat Torkington, that makes EnterpriseDB "a tricky boundary case." In the O'Reilly Radar blog entry that I discussed last week, he even questions whether it's appropriate to invite the company to the O'Reilly Open Source Convention. "I find it hard to justify turning away a good open-source project to feature a closed source project, regardless of whether it runs on open source or not," he writes.

Astor says he has nothing to hide. Seth Grimes' comments notwithstanding, he was quite sanguine about EnterpriseDB's business model when I met with him last week. In his view, his company shares as much in common with Microsoft as it does with MySQL. "EnterpriseDB is an enterprise software company that happens to be built on open source," he says, "rather than an open-source software company with its eyes on the enterprise."

How does Astor reconcile the discrepancy between open-source ethos and proprietary software business models? "I find it's useful to distinguish between code and companies," he says.

In Astor's view, open-source code is a fact of life. There's no going back to a world where open source doesn't play a role in the enterprise software market. And open source is forever. As soon as code is released under an OSI-approved license, it is open-source code, no two ways about it.

But what about companies? Different companies take advantage of the value inherent in open-source code in different ways. Red Hat distributes all its software under open-source licenses and brings in revenue using a pure service/subscription business model. MySQL offers an open-source version of its database software but offers the same software under a commercial license for customers who would prefer not to be entangled by the GPL. Still other companies use open-source code as the basis of proprietary products.

EnterpriseDB falls into the latter category, but does that make it any less of an open-source company than a company that adheres to a different business model? That's where Astor's users and joiners come in.

Everybody loves a joiner. Joiners are the companies that offer financial backing, customer support, and indemnification for open-source projects. They contribute code. They donate resources. They participate in developer forums and help to foster community.

Red Hat is a classic example of a joiner. But then, so is EnterpriseDB. Although its flagship product is proprietary, EnterpriseDB regularly contributes code to the PostgreSQL project upon which it is based. It even offers subscription support for plain-vanilla PostgreSQL. What's more, according to Astor, EnterpriseDB employs more members of the PostgreSQL community than any other company.

So who are the user companies, then? Try looking in the mirror. Most customers who deploy open-source software will never hire any developers to work on it. Most will never even contribute a single line of code, and their presence in support forums will consist of more questions than answers. That's hardly the ideal model of community participation. But that's OK, too, because users often have something else: money.

"A user can gain the benefit of a joiner in exchange for a monetary transaction," says Astor. When a customer enters into a commercial contract with a vendor of open-source software, that vendor in effect becomes the customer's surrogate, representing the customer's needs and wishes and taking on the burden of direct participation in the open-source community.

So the next time you're wondering if a particular vendor is truly an open-source company, Astor suggests you ask instead how that vendor represents its customers. Does the vendor understand the code base, contribute to the project, fund development, offer support, and participate in the community? Is it a joiner? If the answer is yes, then relax. The vendor is representing you, the customer, as a true participant in open source. The licensing terms it offers you on the back end needn't be anybody's business but your own.

Copyright © 2007 IDG Communications, Inc.

How to choose a low-code development platform