Tutorial

The 7 Principles of Better API Design
Damian Conway, Thoughtstream

Date: Monday, 18 September 2006
Time: 13:30 - 17:00
Location: Theatre Plaza

This session presents a minimalist approach to interface design known as "S.A.T." Developed by Conway over the past decade, this design philosophy can produce smaller, better focussed, more usable module APIs.

The seven principles are:

  • Do one thing really well
  • Design by coding
  • Evolve by subtraction
  • Declarative trumps imperative
  • Preserve the metadata
  • Leverage the familiar
  • The best code is no code at all

All these topics will be explored and illustrated by examining the interfaces and implementations of commonly used modules from the Perl standard library and the CPAN (many of which were designed by Conway himself).