Ned Otter is not a fan of ORMs:
I’ve seen a lot of tech come and go in my time, but nothing I’ve seen vexes me more than “framework generated SQL”. No doubt I’m ignorant about some aspects of it, but its usage continues to confound many a DBA.
To troubleshoot one of these bad boys, you might consider Google Glass, but it will fail you. The first issue is that these crappy frameworks generate a code tsunami that’s almost (or actually) unreadable by humans. The tables you know and love are aliased with names such as “Extent1” and the like. Multiple nestings of that, and it’s all gobbledygook aka spaghetti code.
These work great as long as you have more hardware to throw at the problem.
I would differentiate here a micro-ORM like Dapper from a Hibernate or Entity Framework like Ned has in mind, where the difference is that Dapper acts as a way of automating the data access layer but you still write the SQL queries or stored procedures.