> That is not completely on the developer, either. Pre 4.0 Mongodb, for example, does not do transactions
I'd argue that's on the developer, if he was the one to choose a database that doesn't support transactions, and then didn't implement application-level transactions (which is very hard to do correctly).