Friday, May 25, 2007

The EnterpriseDB Licensing Model

I firmly believe in the value of open source. There is no question that open source communities produce great software, and do so quickly and with extraordinarily high quality. Yet EnterpriseDB’s principal product — EnterpriseDB Advanced Server — is a closed source product. Why is that?

The answer to this question is a little involved, but stay with me...I think the logic is actually pretty simple.

Like all commercial organizations, EnterpriseDB is in the business of making money. When we created the company, we needed to define a mechanism of delivering value to customers for which those customers would be willing to pay. We originally planned simply to take the same approach as most other open source companies, which is a dual-licensing strategy.

With a dual-licensing approach, the company is protected by a GPL (or similar) license, because both competitors and potential customers who wish to embed/link with the GPL software must also GPL their own code. Since most competitors/customers don’t wish to do so, they are willing instead to pay for a commercial license. This simple yet subtle point is at the heart of the success of nearly every commercial open source organization. I would be remiss (and Matt would surely bonk me on the head) if I didn’t also mention the value that these companies bring via their expert support and services. But the subtle yet powerful truth about commercial open source is that the GPL is an excellent enforcement mechanism for creating commercial value.

Now, unlike most open source projects, which are licensed under the GPL or similar license, PostgreSQL is a BSD-licensed project. As most of you know, BSD is among the most permissive licenses, allowing anyone to do anything with the code, with virtually no restrictions. In other words, the BSD license provides no commercial protection whatsoever, either from competitors or potential customers. With the BSD, anyone can take the code and do anything they wish.

So why not just change the PostgreSQL BSD license to GPL? Remember that, unlike most open source companies, EnterpriseDB did not create the open source project upon which it is based. The PostgreSQL community has been around for more than a decade, and is one of the most strongest and most independent open source communities in the world. EnterpriseDB does not control the copyright or the license to PostgreSQL, which means a dual license business model is simply not an option for us. PostgreSQL is BSD...period. And by the way, the PostgreSQL community strongly supports its staying that way.

So...what to do? How can EnterpriseDB create a business model that honors the PostgreSQL license and community style, while at the same time allowing the company to deliver value for which customers will pay? The answer is fundamentally a 2-part strategy:

First, we created a superset of PostgreSQL called EnterpriseDB Advanced Server, and closed-sourced the code. In other words, atop base PostgreSQL, we added deep Oracle-compatibility, dynamic performance tuning, and world-class tools, including replication, debuggers, browsers, and more. Then we closed-sourced the whole package. In this manner, we have crisply defined a set of value-added features for which we charge, much like SugarCRM’s professional edition. If you want the free-and-open-source version version of the software, though, it’s easily available...and it’s called PostgreSQL.

The second — and equally important — part of our business strategy is to be an excellent citizen in the PostgreSQL open source community. We are building a successful company on the shoulders of one of the world’s most successful open source projects, and we have a responsibility to give back to that community to the maximum extent possible, while still protecting our ability to generate revenue. In addition to our ethical responsibility, we also “do well by doing good” because we promote the wider spread of PostgreSQL, the world’s most advanced and enterprise-class open source database (albeit only the second most popular).

Our efforts at being excellent citizens of the PostgreSQL community are wide-ranging, but tend to fall into the following broad categories:
  • Identify important and difficult development community projects, and get these projects done with EnterpriseDB staff
  • Employ community leaders, including both titled members (i.e., core team) and thought leaders
  • Sponsor non-employee community developers
  • Be a major sponsor of community gatherings and other activities
This balanced approach of selling commercial software on one-hand and aggressively supporting the community on the other is our answer to the conundrum of creating a commercial company on a BSD code base. I think there have been some misunderstandings about our approach in the past, and I hope this clears them up.

What are your thoughts about this business model specifically, or the commercialization of open source software in general?

Thursday, May 10, 2007

Red Hat Exchange

Today, EnterpriseDB announced that it has joined Red Hat Exchange (RHX) as one of six founding partners. Today's news was exciting for us for a few reasons.

First, we predict that RHX and its distributors, integrators and resellers will prove to be a powerful and effective distribution channel for EnterpriseDB. Hopefully many of you saw the recent news that Bill Doyle has joined the EnterpriseDB team as our senior vice president of business development. Bill’s principal responsibility is to architect and implement our channel program, and EnterpriseDB’s membership in RHX will complement his efforts nicely.

Second, we are excited about joining RHX because we are pleased to share the honor and responsibilities of our RHX founding partner role with a group of outstanding open source leaders that include EnterpriseDB Partner Program members Alfresco, Pentaho and SugarCRM.

Finally, we view Red Hat’s selection of EnterpriseDB as a founding RHX partner as an affirmation of EnterpriseDB’s philosophy and strategy in the context of the recent, vigorous debate about what constitutes an “open source company.” I will post an entry on that topic in the next few days that will include links to various conversations on this topic. As readers of this space know, EnterpriseDB is based on the very popular and powerful PostgreSQL open source database; conversely, we make EnterpriseDB Advanced Server available under a proprietary software license. We see our leadership role in Red Hat Exchange as a strong endorsement of the proposition that the advantages of open source software will be delivered to enterprises in many different, yet compatible, ways.

We wish Red Hat Exchange and all its ISV and channel partners every success.

Selecting an RDBMS - A Great Webinar

I just watched a terrific webinar about selecting the right RDBMS for you, and I have to say that it was both excellent and left me wanting more. (Full disclosure: EnterpriseDB was the sponsor of this Ziff-Davis seminar.) The lead speaker in the session was Curt Monash, a long-time database analyst and guru who has a great set of web sites and a reallly deep DBMS-focused RSS feed.

In the webinar, Monash took the audience "beyond the checkbox" to deeply analyze the true meaning "enterprise-class" when it comes to databases. He did an excellent job of articulating how different projects have different needs, and that no one database fits all requirements. He then dug into the details behind these needs, diving deeply into topics such as:
  • License and maintenance costs
  • Performance and scalability
  • Ease of administration
  • Ease of programming
  • Reliability and Uptime
  • Security
  • Data types
  • ...and more
To be clear, the webinar is not a veiled pitch for EnterpriseDB (except for the 5-minute product description by Derek Rodner about 40 minutes into the webinar). Rather, it is a fairly deep analysis of the trends, issues, and gotchas in selecting the appropriate database for a project's needs.

I said earlier that the webinar left me wanting... As is typical with high-quality presentations, there just wasn't time to explore the issues in enough detail. To that end, I have asked EnterpriseDB's marketing group to sponsor a series of deeper dives on some of these topics over the next few months. If anyone has suggestions about those topics, now would be a great time to give them to me, and I'll pass them along.

Tuesday, May 1, 2007

An Abbreviated History of EnterpriseDB

Back in March 2004, my long-time friend and colleague Denis Lussier asked himself a couple of simple questions: Why are databases incompatible with each other? What allows the Big Three (Oracle, Microsoft, and IBM) to remain an unchallenged oligopoly, controlling 87% of the enterprise database market? Why have standards produced essentially no beneficial impact on this market? Over the next few months, Denis explored these issues with a few colleagues, and the idea of a compatible database began to emerge; in other words, a single, affordable database that could "speak the language" of one or more of The Big Three.

By early summer, I got involved in the analysis, and became really excited by the prospect of creating a disruptive entry in the enterprise database market that could truly impact the market.

Now, enterprise databases take hundreds or thousands of staff-years to create. Creating one from scratch was impractical, to say the least. We needed a starting point, and open source databases were the obvious place to look. We evaluated many starting points, including MySQL, HypersonicSQL, Ingres, Firebird, MaxDB, PostgreSQL, and others. To put it simply, PostgreSQL was the clear winner, hands-down. MySQL was designed for fast, easy, mostly read-only applications (at the time, it didn’t even support views or stored procedures). Firebird was a reasonably good choice, but had some “interesting” licensing twists. Ingres had been more or less abandoned by CA for 12 years, and MaxDB had virtually no market acceptance. PostgreSQL, on the other hand, was a world-class database, had a strong and vibrant community, and it had an architecture that supported pluggable stored procedures. This meant that we would be able to add stored procedure languages with relatively low risk.

Another important advantage to PostgreSQL is that it is licensed under the BSD open source license. As many readers know, there are two fundamental open source license types: Academic and GPL-style. Academic licenses — such as the BSD — have been around the longest, and basically say, “Here’s the code. Do what you wish.” Academic licenses impose no practical restrictions on one’s use of the source code. GPL-style licenses, on the other hand, carry the “viral” attribute of requiring all derivative works to carry the same license. Our preference was to have the flexibility to design our business as we chose, and the BSD license suited us better than the GPL. (Of course, the use of any open source carries with it certain ethical imperatives, such as community support. I will deal with that issue in another blog entry.)

By September of 2004, PostgreSQL was our clear choice, and it was time to develop a business plan. Having prototyped various solutions over the summer, we had developed an appreciation for the complexity of creating deep compatibility with an existing database. We recognized that we had to pick a single strategy, and pursue it with focus. (Focus, I believe, is the single most important success factor for any start-up.) We elected to focus on Oracle compatibility, for two reasons. First, it’s the biggest market. Second, a great deal of dissatisfaction exists in its customer base.

In December, 2004 we completed a prototype and pursued our first outside funding; an angel round of $1 million. This funding allowed us to bring the product to v1.0 status, and to launch the company with a prudent marketing budget. We were very fortunate to tap awesome guidance and assistance during this phase from investors and friends, including Christian and Brian Danella at Prequent, Inc., Terry Hanold, Charlie Katz, Jack Lewis, Gary Long, and Phillip Merrick.

We emerged out of stealth mode on May 23, 2005, and received a lot of interest from the market, including some terrific press. Within a couple of weeks, we had thousands of downloads and strong interest from the venture capital (VC) community. We had originally planned to stay angel-funded through the end of 2005, but the VC interest was so strong that we elected to strike while the iron was hot. Within 3 months, we closed on a $7 million round with Charles River Ventures and Valhalla Partners, two high-quality firms that remain strong supporters today.

At about the same time as our venture funding (August, 2005), we took the product to LinuxWorld, and were honored to receive the Best Database Award, beating the other finalists, Oracle, MySQL, and DB2. In retrospect, this win — combined with the funding and tens of thousands of free downloads — marked our emergence into the marketplace. At that point, Denis (CTO) and I began filling key executive team positions, including Tom Stiling and Bruce Katz (sales and finance, respectively).

On January 1, 2006, we started selling EnterpriseDB. Until then, the product was mostly given away for free, as we endeavored to understand the needs of the market. By the end of the first quarter, we had 10 paying customers, including Sony Online Entertainment, the leading company in massively multi-player online role playing games, which planned to replace Oracle throughout its organization. This success brought even more market interest, both from new customers and from venture capital companies. As in 2005, we had planned to finish the year with our current funding, but pre-emptive interest from a few top-tier VC firms convinced us to do our next venture round a few months early, which brought Fidelity Ventures into the fold (another great VC firm). At the same time, we were very fortunate to attract Dave Litwack to the Board of Directors. Many of you will remember Dave as founder and president of Powersoft and as founder and CEO of Silverstream.

The rest of 2006 was a whirlwind. We rounded out the executive team with Garland Hall, Phil Weber, and Helen Donnelly (customer support and services, human resources, and marketing), won Best Database at LinuxWorld for the second year in a row, sold millions of dollars in software, helped customers solve hundreds of complex problems at a fraction of what they would otherwise have paid, expanded into Europe and Asia, and hired on some of the best enterprise software talent I’ve ever seen in one place.

And 2007 is shaping up to be a banner year as well. We recently passed the 100-customer mark, sales continue to increase significantly each quarter, and we have completed our executive team with the hiring of Bill Doyle and Gary Long (business development and product development). Lots more to come...