At MongoDB World last week, Eliot Horowitz, CTO of MongoDB, announced to the world that MongoDB would be invading both the BI space (Charts) and the Backend as a Service space (Stitch).

You might expect a database company to announce improved scalability, reliability, or performance. Or perhaps announce some of the countless features that users have been requesting for years, which are collecting dust in MongoDB's ever-growing issue tracker.

These are sane, logical expectations for a database company, so you'd be forgiven for being shocked at MongoDB's announcements that the company is investing massively into every product category except database technology.

Yet, to those who know MongoDB's troubled history, these announcements come as no surprise. In fact, I even predicted the launch of Stitch just over a year ago, at the last MongoDB World.

MongoDB didn't start as a database company, it's never acted like a database company, and in my opinion, it doesn't really have the DNA of a database company.

To understand why, you have to go back to the fall of 2007, when the catastrophic failure of a business plan gave birth to the product we now know as MongoDB.

A Failed Business Plan

In late 2007, Dwight Merriman (co-founder of DoubleClick), Eliot Horowitz, and Kevin P. Ryan founded the company 10gen. The ill-fated mission of the company: to develop an open source, Google AppEngine-like product called Bubble.

The founders decided Bubble would be so insanely popular, they'd need a database with humongous scale. So naturally, like any overfunded Silicon Valley startup, their first step was to create their own database from scratch, which they dubbed p ("pee").

That's where the trouble began: teams who build successful app platforms are different from teams who build successful databases. Databases are infrastructure, built by system engineers who know about ACID, Paxos, disk buffers, predicate pushdown, L1-L3 caches, bitmap and b-tree indexes, and relational algebra—to name but a few.

Teams who build app platforms are masters of writing integration code to glue together lots of pieces of infrastructure. They know about Linux, bash, JSON, and Javascript. And when they go to develop a database, it ends up looking less like a database, and more like Frankenstein's monster.

Accidental Success

Bubble failed, of course. No one wanted AppEngine, let alone an open source knock-off.

Yet the company's "database" had acquired some interest from a new generation of script kiddies who didn't know SQL, didn't understand why normalization is a good thing, and just wanted a dumping ground where they could lob hunks of poorly formed JSON.

So in 2009, 10gen decided to ditch Bubble, and rename their database to MongoDB, allegedly from humungous. From the ashes of a failed business plan, a wannabe database company was born.

A combination of hype and early adoption by script kiddies drove the database to worldwide fame, but not without difficulties along the way.

Confusion in the Ranks

Early versions of the MongoDB database, which didn't even scale beyond a single node, were often compared to /dev/null—a blackhole on Nix platforms from which data never returns.

One time at a meeting with one of the co-founders of MongoDB, I was discussing the role of analytics in database technology, and I uttered the phrase data warehouse. The co-founder asked, "What's a data warehouse?"

At first, I thought he was pulling my leg. There's no way a database company doesn't know what a data warehouse is...right? But no, he was dead serious, so I explained the concept simply, even as I went on to explain that analytics means far more than just atomic counters.

From a distance, I watched over the years in bewilderment as leading voices from the company would proudly proclaim that server-side joins were dead and modern databases didn't need them. Or that schema's only purpose was to slow down and get in the way of developers.

By my standards, the technology itself appears more cobbled together than well-engineered by database experts.

Of course, times change, people learn what they're forced to learn, and VC money drives investments in engineering, so as of today, some of these mistakes have been rectified.

MongoDB now has limited support server-side joins—even correctly described as left-outer equi-joins. The database now has optional schema. And while still not ACID compliant, it's no longer fair to compare MongoDB to /dev/null (it's still funny, though!).

Yet, on the 10th anniversary of the company, the battle scars—from not starting as a database company, not acting like a database company, and not having the expertise of a database company—are all painfully evident.

MongoDB is on a long, slow road to nowhere special.

The Lonely Road

The relational database industry sprung up a massive ecosystem of analytics software, backup software, recovery software, data integration software, query optimization software, data management software, and far more. The size of this ecosystem is staggering.

A single vendor in one of these many categories—such as Tableau Software, in the visualization category—makes more than MongoDB does all year (in a single quarter!).

MongoDB has no ecosystem. There are no analytics tools for MongoDB (except SlamData), no backup software, no recovery software, no data integration software, no query optimization software, no data management software, nothing. Zilch.

There's just MongoDB.

In hindsight, this is an inevitable consequence of a company without database DNA trying to build and monetize a database. MongoDB couldn't figure out how to build an Oracle-sized empire on a database—partially, I'd argue, because they couldn't figure out how to build a database—yet they have to hit their sales quotas.

If you can't sell the database at scale, you end up trying to build and sell an ecosystem around the database. Slowly, bit by bit, MongoDB went after their early partners, trying to put them all out of business to drive a few million here and there.

The result is a "database company" that sells everything under the sun, including database management tools, data exploration tools, cloud hosting tools, cloud hosting services, and soon, BaaS (Bubble makes a return!) and BI software. Everything except, you know, a database.

The Aftermath

Most script kiddies ended up learning SQL after suffering the pain of MongoDB's numerous, ad hoc, crippled query languages. The hype around MongoDB has long since faded. Scale-out cloud databases are all the rage, and adoption of these solutions has never been higher.

With all these changes in the market, it's no surprise that MongoDB's popularity has plummeted behind PostgreSQL (a database they shipped as their BI connector, in another embarrassing blunder). The company's inability to focus on improving the database and their penchant for trying to build and sell a whole ecosystem around the database are finally starting to hurt them.

If there is a company to build a new database ecosystem to rival the one started in the late seventies, by now, one thing is certain: it won't be MongoDB.

Stay tuned for next year's MongoDB World in which the company will announce the launch of a new line of smart toasters and bubble gum powered by the database.