The concrete principles of object-oriented design are useful but are built upon powerful concepts that the principles tend to obscure. When design principles become goals in and of themselves, object-oriented design gets a bad name and applications suffer.

This talk strips away the well-known design principles and exposes the hidden, underlying goals of design. It reveals programming techniques that allow you to write less code while creating beautiful, flexible applications. These techniques all involve less. Doing less, debugging less, testing less and knowing less, all in service of achieving more.

Sandi Metz works for Duke University in Durham, N.C., is a member of the West End Ruby group and is one of the many DevChix. Her lengthy and varied career has led her to Ruby, in which she has happily spent the last 6+ years crafting applications both large and small.

When not thinking, talking or writing about object-oriented design she can be found building bikes in her garage. Her commitment to OOD is paired with a firm belief that one can never have too many bikes.