# Some musings on ORMs

DevFeed: [Some musings on ORMs](<https://devfeed.tech/articles/some-musings-on-orms-21913.md>)

Original publisher: [Read original article](<https://blog.nelhage.com/2010/07/some-musings-on-orms/>)

Author: Nelson Elhage

Published: 2010-07-18T18:38:23Z

Content type: opinion

Language: en

Sources: [Nelson Elhage](<https://devfeed.tech/sources/nelson-elhage.md>)

Topics: [Object-relational mapping](<https://devfeed.tech/topics/orm.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [SQL](<https://devfeed.tech/topics/sql.md>)

Tags: [complexity](<https://devfeed.tech/tags/complexity.md>), [database](<https://devfeed.tech/tags/database.md>), [orm](<https://devfeed.tech/tags/orm.md>), [sql](<https://devfeed.tech/tags/sql.md>), [web](<https://devfeed.tech/tags/web.md>), [web-app](<https://devfeed.tech/tags/web-app.md>)

## AI overview

The article reflects on the tradeoffs of object-relational mappers. It explains that ORMs are often more pleasant than writing raw SQL, but their object-oriented models can mismatch relational databases, creating difficult choices between inefficient code and complex query-building techniques. It also discusses how selecting too much or too little data can affect query performance and considers possible static, type-system-based solutions.

## Source excerpt

I'm pretty sure every developer who has ever worked with a modern database-backed application, particularly a web-app, has a love/hate relationship with their ORM, or object-relational mapper. On the one hand, ORMs are vastly more pleasant to work with than code that constructs raw SQL, even, generally, from a tool that gives you an object model to construct SQL, instead of requiring (Cthulhu help us all) string concatenation or interpolation.