Using MongoDB to implement tree structures has some advantages, but as it lacks features that traditional RDBMSes have (like table locking and transactions), it is easy to create race conditions during simultanous operations. This is a pretty generic problem and I hope we can emphasize common problems and best practices on the implementation of thread-safe tree tables here.
Relational databases, such as MySQL, PostgreSQL and various commercial products, have served us well for many years. Lately, however, there has been a lot of discussion on whether the relational model is reaching the end of its life-span, and what may come after it.
It’s true: web development, at its worst, is difficult, repetitive, and boring. The tools we have suck. At best, they make web development slightly less painful, but we’re a long way from making web development awesome.