Someone asked a very important question over at StackOverflow. The answer is also crucially important:

“Probably the most important one: not grokking the central, fundamental principle of the Domain Model and its representation in Ubiquitous Language. With the plethora of technology options around, it’s very easy for your head to fill up with ORMs, MVC frameworks, AJAX, SQL vs NoSql, … So much so there’s little space left for the actual problem you’re trying to solve.

And that’s DDD’s key message: don’t. Instead, explicitly focus on the problem space first and foremost. Build a domain model shorn of architectural clutter that captures, exposes and communicates the domain.”

Of course, I had to give this answer my vote too…