We have been using mongo over the last three years on our project and it has been pretty smooth so far. However, lately I gave some thoughts into what our project would look like if we used PostgreSQL instead. I tried to figure out what problems Mongo solves that PostgreSQL doesn't.
I am far from being a database expert, I just know enough basics to query what I need, so feel free to correct/complete the following:
- Mongo has been built to store json objects -> Yes, but from what I understand benchmarks indicate that PostgreSQL is faster at reading/storing/indexing json/jsonb content. I don't think that it is good reason to use it.
- Mongo is schemaless -> There might be some usecases, but I bet in most cases this problem can be worked around. Especially in a database with JSONB support.
- MongoDB horizontal scaling is way easier than PostgreSQL. Yes, it seems that scaling horizontally Mongo is extremely easy compared to any other relational database.
And ... that's it. But there is probably more.
At the moment, here's how I would summarize MongoDB benefits if asked my opinion when starting a project:
- For a small projects or a prototype: ease of use, ease of configuration, don't require too much thinking into my data model while I am experimenting
- For a bigger project: horizontal scaling should be easier
Does that sound accurate to you? Am I missing anything important?
I am working on a product with multiple engineers and we adopted Reactiflux + SPA + Node + a bunch of fancy tools.
While I love that stack, it took me a while to realize that for most of my side projects, building alone a prototype with all those things is killing my productivity. A messy Rails api with angular1 or even Rails + ERB are way quicker.
Letting go best/latest practices and go for the the non-fancy (and sometimes a bit dirty) way is harder than it seems.
We are more and more nostalgic about everything. But I don't see how people can think TV shows were better in the 70s, 80s or even 90s. Since 2000 we live in the golden age of TV shows. We got The Wire, the Sopranos, Mad Men, the Shield, (Game of thrones?, Westworld?) and a ton of original concepts. I tend to think that nowadays there is more originality and risk taking in TV shows than in the movie industry.
This summer, I watch Twin Peaks The Return, some episodes are the weirdest things I have seen on a mainstream TV channel. I am amazed it was allowed to air at prime time.
I am amazed that in 2017, there is still people qualifying Bitcoin or Ethereum of ponzi schemes. Crypto currencies have a lot of problems (technical, economical, philosophical, ICO are insanes) but saying they are ponzi schemes is plain wrong. And it just takes 5 minutes of reading on Ponzi Schemes signs and basic knowledges of how those currencies work to understand why.
If you are french working in a different country, you can contribute to the french pension plan through the "Caisse des Français de l´etranger" if you want to. However you would still have to pay the Canadian pension plan.
There is an agreement between France and several countries including Canada. Once you will retire, if you have worked 10 years in Canada and 30 years in France, then you will get 3/4 of your money from the French Pension plan, and 1/4 from the Canadian one.
This agreement works whether you are French or Canadian.
I am far from being a database expert, I just know enough basics to query what I need, so feel free to correct/complete the following:
- Mongo has been built to store json objects -> Yes, but from what I understand benchmarks indicate that PostgreSQL is faster at reading/storing/indexing json/jsonb content. I don't think that it is good reason to use it.
- Mongo is schemaless -> There might be some usecases, but I bet in most cases this problem can be worked around. Especially in a database with JSONB support.
- MongoDB horizontal scaling is way easier than PostgreSQL. Yes, it seems that scaling horizontally Mongo is extremely easy compared to any other relational database.
And ... that's it. But there is probably more.
At the moment, here's how I would summarize MongoDB benefits if asked my opinion when starting a project:
- For a small projects or a prototype: ease of use, ease of configuration, don't require too much thinking into my data model while I am experimenting
- For a bigger project: horizontal scaling should be easier
Does that sound accurate to you? Am I missing anything important?