Hacker News new | ask | show | jobs
by nine_k 1 hour ago
Tired: pass live DB model objects around, mutate them to accumulate random changes, call commit() five levels deep, experience the chaos as described by the author.

Wired: fetch DB records and construct domain objects, pass them around, do mutation on the outermost level within an explicit transaction. (Typical best practice.)

Inspired: "functional core, imperative shell".