Hello Richard, Thank you for the link, it's quite an interesting lecture, although in my opinion he did left an important point out, the __domain modelling language__. He does talk about a domain specific language, but that's not the same. The Domain Specific Language as Ramnivas Laddad presents it it's a way of programming that has the objective of giving semantic and better reading of the created code.\\ A Domain Modeling Language on the other hand, is a language where you declare abstract concepts of domain entities and how entities relate between each other, then a code generator takes care of actual object creation. I didn't quite understand why he only wanted to use factories to create objects thought.