Joshua Bennett discusses immutable objects, what they are good for, when they are recommended to be used and when are to be avoided.
Ralph Johnson presents several data parallelism patterns, including related libraries from Intel and Microsoft, comparing it with other forms of parallel programming such as actor programming.
Kevlin Henney proposes a new look at design patterns from the perspective of the habitability of code, communication, exploration, empiricism, reasoning, incremental development, and design sharing.
Aino Vonge Corry reviews a number of well known design patterns showing that their implementation is simpler in functional languages because such languages have pattern-based constructs.
Udi Dahan discusses the Command Query Responsibility Segregation (CQRS) pattern and its relationship to Domain Driven Design (DDD), detailing on queries and commands, what they are and how they should be used in an asynchronous programming environment.
Jason Hogg makes a quick overview of security and application design followed by a more in-depth look at web services security, explaining the need for threat modeling through security design patterns. Hogg explains a number of design patterns related to processes, services and SOA security, detailing on how they can be applied to service-oriented systems.
Ralph Johnson presents a pattern language that he and his colleagues are working on in an attempt to solve the hard issues of parallel programming through a set of design patterns: Structural Patterns, Computational Patterns, Parallel Algorithm Strategy Patterns, Implementation Strategy Patterns, and Concurrent Execution Patterns.
Brian Lokhorst presents practical use cases based on several SOA design patterns showing how he and his colleagues improved the Dutch Tax and Customs Administration services.
For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity to some basic concepts: enterprise, patterns, frameworks, architecture, SOA, development, architecture lifecycle, best practices, what they are and what the aren’t, emphasizing the role and importance of patterns.
Brian Oliver explains a number of data grid design patters: Command, Functor, Store and Forward Messaging, and Push Replication. He also mentions some traditional patterns used so far and Coherence Incubator, a repository for design patterns reference implementations.
Michael Nygard encourages us to have a failure oriented mindset in order to succeed. He presents many anti-pattern examples that lead to systems instability and ultimately lead to failure. He also presents the corresponding stability patterns that should be used instead.
This talk describes the constraints of connected systems design and presents common design patterns to address some of the challenges developers will face as they spend more time connecting services and components instead of developing new ones. Along the way he asks: Is coupling really so bad? Why is REST popular? Do we need distributed transactions?