I'm a long-time MongoDB user and largely a fan of it because I believe the interface is superior to some text-based SQL statements.
But whatever DB you like, if you move the state of your application to another application (i.e, a database) you better make sure you really understand how it works.
For SQL databases, many people think they know how they work, but misconceptions seem widespread. Essentially, many beginners believe that SQL databases guarantee serializability everywhere and all the time, relying on the database (and OR-mappers) a lot / too much in my opinion.
Choosing a system that only offers very few guarantees forces you to think about them more explicitly. On the other hand, if you never bothered to understand SQL, you probably won't bother understanding anyDB's restrictions and guarantees either, and then everything goes to sh*t.
Some databases might be easier to understand than others, but I feel MongoDB is on the 'easier' end here. YMMV.
But whatever DB you like, if you move the state of your application to another application (i.e, a database) you better make sure you really understand how it works.
For SQL databases, many people think they know how they work, but misconceptions seem widespread. Essentially, many beginners believe that SQL databases guarantee serializability everywhere and all the time, relying on the database (and OR-mappers) a lot / too much in my opinion.
Choosing a system that only offers very few guarantees forces you to think about them more explicitly. On the other hand, if you never bothered to understand SQL, you probably won't bother understanding anyDB's restrictions and guarantees either, and then everything goes to sh*t.
Some databases might be easier to understand than others, but I feel MongoDB is on the 'easier' end here. YMMV.