Alex Miller presents some of the abstractions that make Clojure a great language: Collections, Sequence and Higher Order Functions, Multimethods, Protocols, Atoms, Macros, and others.
Marius Eriksen considers that leaky abstractions lead to scalability issues, while those providing narrow access to explicit resources - map-reduce, shared-nothing web apps, big table - scale better.
Steve Vinoski covers the history of RPC, standardization, distributed objects, CORBA, DCOM, Java, SOAP, WS-*, flaws in RPC, REST vs RPC philosophy, Erlang reliability and concurrency.
This talk introduces two broad principles for strategic design: 'Context mapping' - different groups model differently and 'Core domain' - the distilled shared vision.
This talk outlines some of the DDD foundations: How models are chosen and evaluated; How multiple models coexist; How to avoid the common pitfalls and how developers and domain experts work together.