• I also partially agree with the comments made against ORMs. I feel that many developers use those tools to generate the DB and that makes me shutter. As a developer who uses ORMs plenty, I make a point to design my database correctly by hand (the horror). Afterward, I force the ORM to use my proper design.

    In the end, this way of working with ORMs makes everything run so much smoother. A good ORM knows how to work with a good DB design if it is configured properly. That means someone with a good working knowledge of the DB schema absolutely must be one of the folks configuring the ORM. Whether that is a developer with a really good understanding of DB design, or a DBA that gets OOP, it doesn't really matter. So long as the ORM is not allowed to do whatever it wants and is "told" how things work in this particular setting.