Never forget there’s a database

My personal preference is almost always to deal with a database at a fairly direct level. I have built up a bunch of Java code which largely removes the pain of database access, but it is certainly not any kind of ORM (Object-Relational Mapping) tool. I rely on understanding both the structure and efficiency of the database, and the clarity and effectiveness of the code.

This article recounts one development team’s problems with using too high a level of abstraction for data persistence, and forgetting that there is a database at the bottom of their pile of software.

No New Ideas: ActiveRecord lessons learnt: #1 Never forget there’s a database