Talks by Dave Thomas

Dave Thomas' Keynote: EMPEX NYC

Vocabulary

  • A library is a stateless application.
  • A component is a stateful application.
  • An assembly is a configuration of components and libraries which is packaged as a deliverable.

Quotes

The more things that are coupled the more they resist change.

The more things are interdependent, the harder it is to change one of them; because dependencies ripple through the entire application.

Well designed code is easier to change than badly designed code.

Takeaways

Our mission is to create well structured, highly decoupled solutions to problems.

Our hope is that this will lead to code that is easier to change, deploy, maintain, and reuse.

Objectives

  • clearly identify the application
  • isolate configuration
  • maximize component reuse
  • maximize simplicity

The web server

The web server, in this case Phoneix, should be a component; it is the view layer and should contain no business logic.