Hacker News new | ask | show | jobs
by rbranson 5341 days ago
10gen has focused strongly on ease of adoption, which seems like the highest priority of MongoDB at this point. From what I can tell, the idea is to get everyone using it, and then "scale" it once you've got people willing to pay out $ for fixes, but sometimes bad decisions made early on (like the global locks and in-place updates) are harder to change than originally thought.
2 comments

yes, we are using mongo from 1.6.3. Reliability, Locking and Data security (not losing data) are never first priorities on their to-do list, they just push new features and busy doing marketing propaganda about how web-scale mongodb is(which is fake). I submitted a jira issue about losing data when sync a slave, it's already 3+ months, all they did is let me try the new releases to see if it fix the problem. I tried the latest 2.0.1 release, and it's still cause data loss. Every time I sync a new slave, I pray to god, hoping not lose data.

How come a DB lose data so frequently and it sill call itself web-scale? It just breaks when you need scale!

For auto-sharding it's also super unreliable, tried once and it failed, and now we are using a lib that do application level sharding. We are also considering move to other databases that at least know not losing data is the first and most important thing of a DB.

Some one summarized the issues of mongodb, http://pastebin.com/raw.php?i=FD3xe6Jt , we experienced most problems in the article. So just a remind for someone who want to create serious product using mongodb, read the article, it's not FUD, it's just so true that I hope I read it 1 year ago, so we don't have to try moving so much legacy data to a new database solution.

Not a bad business strategy. Kinda like MySQL back then right?
Sadly, it seems that "give them free crap and then charge for fixes" is a very common business model in the open source world.
I am really happy that this does not exist in the PostgreSQL community despite many of the core developers being consultants who live off solving their clients' problems with PostgreSQL. Maybe this is because it is a community project with no single company in control of it.
Maybe this is because it is a community project with no single company in control of it.

Yes. In an organization like Postgresql, someone's contribution is measured by how much they contribute to the code. In an organization like Mysql, someone's contribution is measured by how much they contribute to the bottom line.

It also started out as a research project, so for the first 10 years or so of its life, the main incentives for the developers were whether it was producing interesting research papers, rather than number of users.
Unfortunately solid software projects do not get much love these days.

SQLite. FreeBSD. OpenBSD. PostgreSQL. Python (there are some, but Ruby took the thunder).

Better than asking for big pile of money and give back crap and charge way more for fixes isn't it? :)
Yes. But I think asking happy users to donate ultimately produces better code than asking unhappy users to pay for support.
So true. So true. I wish happy users would donate more as well.

Unfortunately when happy users get used to the culture of free and good quality software, they started to have a sense of entitlement (instead of donating). That if the software didn't provide exactly what they wanted, they starting to swear and whine instead of being... calm and helpful.

I think a big part of the entitlement problem is not being clear about the business model, or positioning oneself to take advantage of it.

One key thing is, I think, to advertise services and ways of making money. IOW, giving people the option to get new features, etc. is an important thing.

There is a lot of solid FOSS out there: PostgreSQL, BSD, Linux, CUPS, and more all come to mind. These often are less sexy than heavily marketed, inferior counterparts. But these all also have solid business models attached.

I highly recommend that folks who start open source software look around at business models surrounding the better open source products and see what they can do to capitalize on that.

Long run, one wants happy users to donate sales/marketing effort with recommendations, and pay for development of new features.

I'd MUCH rather be paid to produce new features than fix bugs.