Ten Years On, Still Going Strong - The MongoDB-User Community

This February is the ten-year anniversary of the creation of the <a href="https://groups.google.com/forum/#!forum/mongodb-user">mongodb-user</a> group, a group which has been and still is the backbone of the MongoDB community. From its early days as a founder-supported channel for help and feedback, it has evolved through various forms from a nexus for support question to now, where it is a space where the MongoDB user community can share their knowledge - and that's a lot of knowledge with thirty-four thousand topics. With twenty-two thousand users, it's also where MongoDB Inc employees can make the fastest connections with that community.

Rooted in Open Source

Let's rewind to the start of mongodb-user. It's 2009 and an eager startup with a hot database is looking for the best way to communicate with users. That startup is still called 10gen and is yet to take the name of its database product. The archives show what happened next:

Group: mongodb-user
From: dwight_10gen
Date: 1/27/09
Subject: _id is now required for objects, an uniqueness enforced

Each object saved to the DB should have an _id value. 

_id's can now be of any type, as long as they are unique.

That was co-founder Dwight Merriman announcing a change in the new MongoDB database's semantics. Now, it's simply a matter of fact now that every MongoDB document has an _id, but this was the start of something big…. Humongous even. Pretty soon, Dwight was joined by co-founder Eliot Horowitz and other 10gen employees answering questions about building MongoDB, how to use it effectively, work with drivers and so much more.

Over the years that followed, as MongoDB was developing, the traffic in mongodb-user increased; every posting was read and Eliot and the engineering team worked with mongodb-user for the essential feedback. Eliot led the charge in working with users, so much so, that even now, he still holds two positions on the all-time most active posters top ten.

Expanding Community

As the company scaled up around 2012, the Technical Services organization within the company was formalized and when the on-call engineers had time, they too started listening and responding to the group's conversations and questions. With engineers in New York, Dublin, Palo Alto, and Sydney, these engineers would triage questions on the group and seek out answers. But time was limited and as commercial support ate up more time, the mongodb-user group began to evolve into a new form.

Around this time, MongoDB engineer Stephen "Stennie" Steneker started answering MongoDB questions over on Stack Overflow and in mongodb-user. Over the next two years, he built up a rapport and was eventually asked to formally "own" MongoDB community support for the company which he does to this day in his position as Director of Technical Services (Community and Knowledge). Stennie's team provides technical guidance in community forums and helps raise awareness of questions and product feedback for relevant teams within MongoDB.

Stennie is explicit about the benefits of an old-school public discussion forum, pointing out that it supports interaction and conversation over time zones which is essential in a global community. Even more importantly, the archives are searchable and persistent. While other conversation mediums like Slack or IRC demand immediate attention and can end up being quite ephemeral, groups like mongodb-user can be easily searched for previous answers which go back all the way to the very first post made. With thousands of users able to help asynchronously, a fundamental thing to remember, he says, is that the quality of the answer depends on the quality of the question. Ask good questions that have enough information and the community of mongodb-user can give you a good answer.

He particularly enjoys when the question is about a technical aspect of MongoDB that's beyond the current documentation, like when there was a thread diving into how text search scores were actually calculated, or the differences between the various forms of group in MongoDB's queries and aggregations. The latter ended up being incorporated into the documentation.

There are a number of other venues for MongoDB questions and Stennie has advice for you if you are wondering where to ask. "The rule for mongodb-user is 'is it related to MongoDB' - if it is then mongodb-user is the place to ask. The community will answer or be able to point you in the right direction for answers".

Everyone Answers

The norm for the mongodb-user group now is that the community members themselves answer questions. That's not to say, though, that MongoDB's own people aren't in there working with the community; they are and often in very productive ways. Take MongoDB Charts and its product manager Tom Hollander.

You will find Tom actively seeking out Charts issues in the group, evaluating them and escalating them where needed. Take this recent thread where using a non-standard port for talking to Charts resulted in an error - within a couple of weeks, a fix was rolled into the next Charts release.

Charts has its own Intercom-based one-to-one assistance, so most of the support in mongodb-user for Charts is mainly concerned with installation, Tom says. He adds that unless someone in the community has already experienced and solved a more complex issue, he'll move the conversation to email for a faster, less noisy conversation. The mongodb-user group is, though, still the first port of call.

Tomorrow's Community

Where next for mongodb-user? Well, despite there being many more members of the MongoDB family of products and many more outlets for MongoDB users to converse in, mongodb-user should still be your first port of call. There's nowhere else with the same aggregation of expertise and experience out there which allows everyone to talk about MongoDB. There are some forums such as Stack Overflow and DBA StackExchange which are aimed at particular niches (solutions for programmers and database administrators, respectively), but a general channel like mongodb-user will win out for the wider questions.