Hacker News new | past | comments | ask | show | jobs | submit login

You got your chance, Mongo, and you screwed it up.

I tried getting the most out of you. I treated you like a princess, I indulged you, your wishes became my wishes and your thoughts were my thoughts. I stopped listening to all that criticism around you and thought of you as of a misunderstood child, even as you would refuse to do even the easiest tasks one could imagine.

I gave you everything there is to give, but you broke my heart. You left me in the most critical moments. I trusted you, but you would go your own way. Tears were shed and countless sleepless nights were to follow.

Remember that night you disappeared without leaving a sign? I sent you messages which got a response only after many hours. You didn't give a damn about my needs. One you told me: "it's not me, it's you". And I believed you, I truly did.

It's over now. It's been some time without you, and I'm getting better. I have discovered, that not everyone is like you. Some DBs care, they really do. You can trust them, they give you their everything.

I'm still struggling falling in love again, but it's getting better. Don't write me back. Goodbye.




How is a non factual comment like this being up voted? Just because it aligns with hn prejudices?

Edit: I guess for the same reasons I am being down voted without comment.


Because it alludes to problems many people have experienced with this product. All verbal communication is indirect to a degree. This is no exception.


You have to admit that it feels very out of place here on HN.

I wouldn't have minded it as much if it wasn't so long and including some detailed issues OP faced with Mongo.


How is a non factual comment like this being up voted?

It's sympathy karma because the poor guy got dumped. We've all been there.

looks away in the the distance CVS. I had such high hopes. You're dead to me now. sigh


Because it's reflective of the experiences of many people?


Agreed. I read the HN comments to get insightful or actionable commentary. If I wanted to read cute comments, I'd hang out on Reddit.


You must be fun at parties.


I'm not up to speed on the reason for the MongoDB animosity, can anyone enlighten me?


MongoDB is a database with some properties that match a specific niche, but to gain popularity they marketed it as a general purpose database that anyone could use.

The result is that many developers who bought into the hype train are now salty because they encountered the limitations at unexpected and unfortunate moments that might have cost them uptime or data.


It is also the case that it was advertised to developers with the promise that you don't need Ops or DBAs or anyone like that. These developers found it did indeed work well for 1 developer on 1 machine working on 1 app with 1 very simple database accessed on 1 connection.

Then they chucked it over the fence to Ops who were expected to make it work in Production, and everything about it was found to be woefully inadequate, and the Ops guys were forced to carry the can. Those guys feel - quite rightly - that they were shafted by MongoDB, both the company and its fans.


I agree about MongoDB being for specific niches. I have used it for offline analytics (writes to a master, with slaves on different servers performing different analytics) and also on my laptop to collect training text and for storing intermediate results (small amount of data, the JSON document format was handy for my application). I was very happy with it for those applications.

For most applications I usually use Postgres.


Or in other words: Developers bought into the hype without checking the facts or reading the manual. Same attitude causes people to change frameworks every 2 days, refactor code bases three time a week and generally be flippant about technology, depending on what is cool this hour.


Thanks for the helpful answer. What was the specific niche it was filling, and why is it not practical for other cases? Or if you don't feel like repeating this info for the zillionth time, is it explained in an essay or blog post somewhere? My googling turned up little.


Can you elaborate on these limitations?


One of Mongo's fatal problems is that the database has been known to say it has fulfilled its durability promises, but that's only sending a packet to the kernel, not confirmed received by others. Same with writing to disk. So a crash can lose more data than originally thought.

Other things like continually pointing to each other, not figuring out a master for hours has made some people tear their hair out, despite the documentation saying it should behave in a sane way.


They released a DB with great hype that:

- had a global write lock.

- mmap was the extent of their io and memory management

- called rand() in in client to decide if it should report errors

- said a write was committed before even sending it out

- released benchmarks that measured how fast they could put data into local RAM, but compared it to real dB's

- lost data/corrupted on 32 bit builds and dismissed that as being by design

- is generally better off replaced by postgres but hyped by people that don't know any better

That's off the top of my head. I'm sure there are competent users and it makes sense in some cases but the general feeling is that it's over hyped for the little it is. Their early mistakes make people very cautious about trusting them with important data.

And by over hyped, I'm also taking about people that go on about how amazing it is to have a document store, but ignore the obvious idea of using pg and making a table consisting of (key, document) and using XML or JSON operators on top.

I might be totally wrong.


MongoDB is like MySQL: it promises you the world, and you believe it can deliver, and it often does, till that day when it committed a transaction which it shouldn't have, tripped over its own clogged up mess and spilled your carefully collected data all over the floor.

Without telling you.


Because it is used... a lot. The only technologies that don't have animosity are the technologies that no one has ever used.


Random counter-examples: Python, PostgreSQL, RabbitMQ, Redis, ElasticSearch, zsh, grep, ssh, git, ...

There's "one lonely dude complaining on the internet", which you can safely ignore. And there's "half the audience has horror stories to tell", which should probably be a red flag.


I came here to write a super snarky comment, but I don't have to. Thanks!


Why is this useless shit post that contributes absolutely nothing at the top?


To answer this ironically irate question as honestly as I can, here is my perspective. I voted this up.

It speaks to me. Substitute MongoDB for PHP or vb.net or w3schools.com in that post, and it is my frustration. With these tools, I feel bad. I feel sad. I feel they are inferior. But I can never find a real, convincing, proper argument. I have to go through great lengths to stay objective, and it's never quite satisfactory.

Why? Because I'm not good at exploring my thoughts purely objectively. I'm human. When I use a tool, I feel passion. Sometimes positive, sometimes negative. When I use Lisp, it burns like fire. But when I try to explain it, I have to admit: there are only downsides the eye can see.

When I use PHP, vb.net, or MongoDB, I'm on Antartica. Without a jacket. It's cold. It's sad. There are no penguins. I feel bad. But I cannot tell you why. I have to admit: they get the job done. Millions use them. The greatest of the greatest sites and applications are built with them. Software that you use every day. Around the world.

So perhaps it's just me. As painful as it is to admit, I simply cannot find the words to match my feelings about this. And I feel alone.

Then I read this. It warms my heart. He knows what I mean. He speaks my language. Had he had a good, objective argument, he would have used it. But he didn't, because he only has bad feelings. It is precisely the fact that he doesn't have anything objectively negative to say, yet feels so badly about it, that speaks to me so much.

MongoDB might be objectively good, but I find it noteworthy that so many people consider it subjectively bad. This is useful information to me.

That's why I voted it up.


I now understand.


I'm sorry my post isn't to your satisfaction. I tried to avoid doing an extensive rant by something a bit more creative. Now I see, that HN can be a tough place to express one's ideas.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: