Interview with Dwight Merriman, cofounder of MongoDB
Open source moves from accepted to expected
Dwight Merriman is executive chairman and co-founder of MongoDB, an open source document database. Prior to MongoDB, Dwight was co-founder of DoubleClick and Panther Express (CDNetworks).
He will give a keynote at the upcoming All Things Open conference in Raleigh this year. In this interview, I asked him a few questions about open source, MongoDB's business model, the challenges of hiring developers, and more. Dwight discusses open source and how it has moved from being accepted to expected.
Can you tell us a bit about yourself?
I started working with computers when I was 14—perhaps that is old these days, but so am I. At that point I knew I wanted to do something involved with software. DoubleClick was one of the first big things I worked on. I was CTO and co-founder there for its first 10 years.
A bit later, with Eliot Horowitz, who I initially worked with at DoubleClick, and others, we created MongoDB. In part, at least for me, this was creating what I wished I had at DoubleClick: a database for the way we write code today; that scales; that works in an iterative environment; that works with semi-structured, unstructured, and polymorphic data—elegantly.
Being at an Internet company early, the use of open source was always a natural, and, of course, we are big fans in general.
MongoDB’s business model is based on open source. Has this model, and open source, been part of the success of MongoDB?
We went through a period where open source was new, but considered acceptable. I think we have now reached a point where it is expected. Today software really needs to be open source, SaaS, or "freemium." The traditional closed source model doesn’t work so much anymore.
With open source, we are providing developers with a model they are excited to work on. Our open source platform has resulted in MongoDB being downloaded 8 million times within the five years since the project has been available—that's an extremely fast pace for community adoption.
How much does the MongoDB community take part in the development process?
The community does a lot: from drivers, to frameworks, to support, to core things, and beyond. For the root fork of the database server itself, a lot of that work happens at MongoDB, Inc. it turns out, at least right now. But there is a lot of activity around the server with the community. For example, in the upcoming v2.8 release, there is a pluggable storage engine abstraction. Lots of folks in the community, and companies and users, are experimenting with this right now.
Software developers are in high demand, especially for open source projects like MongoDB, Hadoop, OpenStack, and many more. How does MongoDB tackle this challenge and attract developers?
Hiring technical people is hard for everyone, of course. But MongoDB’s popularity is helpful. It’s the number two job trend on Indeed.com, second only to HTML5, and ahead of iOS, Android, and Hadoop. So, lots of people want to work on it, and not just for us, but anywhere that uses MongoDB. I think one reason of several to use MongoDB in an application stack is simply that engineers want to work with new things, not old things, and that makes hiring easier.
As an entrepreneur and founder, what is your view of the TODO group?
The notion of "talk openly, develop openly" is a good idea, and it’s great to see such high pedigree companies join the movement. I look forward to tracking what the TODO group does in terms of best practices and common tooling.
You will give a keynote at All Things Open this year. Can you give us a sneak peek?
The time is ripe to make the most of our data, and yesterday's technologies won't do. I’ll talk a lot about the "shapes" of the data we work with today and how that is different than it used to be; that our use cases are different; user requirements are different (for example: real-time). So we need new tools in addition to the old. In addition, even the hardware is different (cloud and horizontal vs vertical scaling), not to mention software development methodologies.