blue bar background yellow bar background
Colorado Software Summit 2008 banner
Colorado Software Summit logo

The Best Way to Master a Technology Is to Teach It to Others

Dan Bergh Johnsson

Omegapoint AB

The Power of Value — Domain Driven Design and Value Objects

The main goal of Domain Driven Design (DDD) is to make the system design reflect and model reality. However, working with existing applications, it is not always the case that the code is structured this way, which makes it a challenge to know where to start.

Value objects are both a good way to get started, and the most underused design tool, considering how powerful they are.

In this presentation, we show how you easily can gain some immediate advantages by introducing simple value objects into your design. As we elaborate, we see some power-usage of the concepts of DDD and value objects, to show how they can revolutionise your architecture, turning it inside out and restoring much of its lost object orientation.

Object Orientation, Domain Driven Design, and the Honour of the Programmers' Guild

The code we write and the systems we build are not solely a result of the technologies we use. They are also heavily affected by the way we think about programming.

In this slightly philosophical session, we investigate some of the ways to think about programming that are related to the so called "OOPSLA School". We examine what it takes for object orientation to fulfill its promise to give us reusable code, and how refactoring is absolutely essential. We see how programs can be viewed as simulations, why Domain Driven Design makes sense, and the importance of "code that mean something". And over all of it hovers the question: whether programming is an honourable profession, or not.

Photo of Dan Bergh Johnsson

Dan Bergh Johnsson is working on creating a toolbox of technologies, tools, and methods for building secure system architectures. He does this through his job as an architecture and security consultant at Omegapoint AB, one of the leading IT-security companies of Sweden. At Omegapoint he leads the process of applying the company's security competence in the Java/J2EE space.

From his background in programming Dan has taken a broader interest in architecture in general and system integration in particular. This is also the background for his interest in high-quality practises such as unit testing. Through consulting and teaching he has played a pioneering part in the introduction of Java and J2EE in Sweden.

In his spare-time Dan is a dedicated dancer and member of the swing dance show troupe Sanslös Swing.