It'd be like someone choosing Windows as a server OS: there's a small chance it was a good decision, and a far, far greater probability that it was the result of a toxic engineering & management culture.
It'd be like someone choosing Windows as a server OS: there's a small chance it was a good decision, and a far, far greater probability that it was the result of a toxic engineering & management culture.
Because PostgreSQL focuses on correctness & MySQL focuses on performance & ease of use. With a database, I want correctness first, and performance & ease of use second.
Many projects chose MySQL because it was easy to use & somewhat faster, and they didn't realise how broken it was initially. I am sure that many projects failed due to MySQL, and are now lost to history. Choosing MySQL over PostgreSQL betokened the kind of culture which chooses convenience over correctness, which is not the kind of culture I wish to associate myself with.
Over time, MySQL added more & more correctness, and PostgreSQL got faster & faster. As it turned out, PostgreSQL with the right performance flags is faster than MySQL with the right correctness flags.
In the specific case of Uber, it sounds like they're essentially using MySQL as the underlying storage mechanism for a key-value store, and are able to build the mechanisms they need atop it. Also, PostgreSQL less efficient for their usage patterns than MySQL. That makes sense, and seems like a sensible engineering decision. 'Essentially no reason to choose [MySQL] over PostgreSQL' doesn't mean no reason at all.
It's kinda like how sometimes it makes sense to write an inner loop in assembly, but it extraordinarily rarely makes sense to write a word processor in assembly in 2018.
The LAMP stack, for all its problems (you're not wrong) is the bog standard and is easy to rent.
If you'd rather use Rails, check out Diaspora: the two systems federate together, anyway.