TechEarl

45 MongoDB Jokes Every NoSQL Developer Has Lived

MongoDB jokes on web scale, schemaless collections with 14 field shapes, the wrong shard key, 16MB document limits, replica set elections, and Jepsen reports.

Ishan Karunaratne⏱️ 3 min readUpdated
Share thisCopied

45 MongoDB Jokes

"Is MongoDB web scale?" "Yes." "What does that mean?" "Nobody has ever said."

I love MongoDB. I love it so much I migrated to Postgres.

"It's schemaless." The schema is in the application now. In fourteen places. Slightly different in each.

MongoDB at 2 a.m.: "primary stepped down." Me: why.

The collection had 14 different shapes for the same field. The field was "id."

"We chose MongoDB for flexibility." Three years later we are writing a migration script for every document.

I wrote a query. Mongo accepted it. Mongo also did not run it. The field name had a typo. No error. No warning. No results.

The aggregation pipeline has 11 stages. I understand three.

"What's the data type of this field?" "Yes."

Sharding setup: three config servers, four shards, two mongos routers, and one engineer crying in a corner.

The Jepsen report came out. We pretended we did not read it.

"Why is this query slow?" No index. There's never an index.

MongoDB's strongest feature: the marketing.

"We don't need joins." The application now does the joins in JavaScript, badly, four times per request.

ObjectId. That's it. That's the joke.

I picked the wrong shard key in 2017. I think about it every day.

"It's eventually consistent." Eventually is doing a lot of work in that sentence.

The replica set election took 47 seconds. The application timed out at 30. The users learned about consensus algorithms whether they wanted to or not.

"Mongo is fast." It is. It writes nothing very quickly.

Our document grew past 16 MB. We split it. Then we joined it in code. We reinvented foreign keys, badly.

"You shouldn't store everything in one collection." We stored everything in one collection.

The write concern was "acknowledged." The write was not.

I asked for an aggregation example. The answer was a $-sign keyword I had never seen before.

MongoDB Atlas: your data, our data centre, their bill.

"Do we have backups?" "Mongo has a dump command." "Do we run it?"

The schema migration was "add a new field with a default." The field is on 12% of documents three years later.

I learned BSON exists. I learned it has a date type. I learned the date type is silently wrong in 1970.

"Mongo handles unstructured data." The data became structured the moment we tried to query it.

The .explain() output is 800 lines. The useful information is on line 612.

Our developer onboarding said: "You don't need to know SQL." Our developer onboarding lied.

"Just denormalize." The word that explains every Mongo schema decision and every Mongo schema regret.

The Mongo connection string has 14 parameters. I know what two of them do.

I added a unique index. Mongo built it for nine hours. During those nine hours, writes paused. Nobody warned anyone.

"What's the difference between a database, a collection, and a document?" "Yes."

Mongo's default write concern used to be "don't wait." It explains a lot.

The interview question was: "Why did you pick Mongo?" The candidate said: "It was on the architecture diagram when I joined."

We have one Mongo cluster. It holds the users, the events, the audit log, and the cache. It is also the reason none of those work.

$lookup is the join we said we did not need.

"MongoDB is ACID now." For multi-document transactions, with caveats, in some configurations, after version four, if you ask nicely.

I joined a new company. They use Mongo. I sighed in a way they recognised.

The Mongo dashboard is beautiful. The Mongo dashboard hides the truth.

"We're moving off Mongo." The sentence I have heard at four companies, in three of which it was true, in two of which it actually happened.

The query hit no index. It scanned the collection. The collection had 400 million documents. The page rendered eventually.

Mongo's tutorial uses a blog as the example. Nobody has ever built a blog with Mongo.

"What's a primary key in Mongo?" "_id." "Why the underscore?" "Nobody alive remembers."

Why MongoDB jokes outlived the web-scale meme

MongoDB had a unique cultural moment around 2010 where the marketing got ahead of the engineering by about three years, and the documentation got ahead of the defaults by about five. The phrase "web scale" became shorthand for picking a database based on a conference talk rather than a workload, and a generation of engineers learned distributed systems by watching their Mongo cluster discover them at 2 a.m. The Jepsen reports through the 2010s were not flattering. The product improved a lot since then. The reputation took longer.

The schemaless promise is the gift that keeps giving to comedy. The schema does not vanish when you choose a schemaless database; it migrates from the engine into the application code, where it is enforced inconsistently by whoever last touched the model file. Anybody who has joined a team three years into a Mongo deployment has had the same first week: read the collection, read the model, read the migration scripts, then read the parts of the application that quietly disagree with all three.

What keeps the genre fresh is that Mongo is still everywhere. Atlas is a successful business, the aggregation pipeline genuinely does some things SQL cannot do cleanly, and a lot of real applications run on it without incident. But the cultural memory of the early years has not faded, and every new engineer who joins a Mongo shop and hits their first $lookup learns the joke from the inside. The bug reports change. The recognition does not.

See also

Sources

Authoritative references this article was fact-checked against.

TagsHumorJokesMongoDBDatabaseNoSQLShardingWeb Scale

Found this useful? Pass it on.

Copied

Ishan Karunaratne

Tech Architect · Software Engineer · AI/DevOps

Tech architect and software engineer with 20+ years building software, Linux systems, and DevOps infrastructure, and lately working AI into the stack. Currently Chief Technology Officer at a healthcare tech startup, which is where most of these field notes come from.

Keep reading

Related posts