It all depends where you’re going (and where you start)

As developers, our main task is to make the journey from A to B. A is you and the idea of an application, and B is the actual application, working well, a happy client and job (or flow of work) security for you.

As with any other journey, how you make it very much depends on where A and B actually are, and how they’re connected into transport options.

My mailman doesn’t open my mail

or, implement the Mediator-Mini-Controller anti-pattern at your peril.

The robotlegs out-of-the-box implementation – what I like to think of as the standard issue trousers – relies on a version of the mediator pattern.

In this usage, the mediator’s job description is clear: deliver stuff from the application’s shared event dispatcher to the view, and from the view to the event dispatcher.

Like any good delivery service*, it also offers enhanced packaging for your exotic sending needs. Perhaps slipping your simple MouseEvent into an air-mail-approved CustomEvent envelope.

A good delivery service also varies its delivery approach based on the type of thing being delivered. Simple letters belong in the mail box. Packages requiring a signature lead to a knock on the door. Fragile goods are handled carefully.

Don’t dehydrate your code

DRY (don’t repeat yourself) is one of the first principles you learn as a fledgling coder.

When you build your first loop, you’re embracing DRY, and all the wonderful code-shrinking that comes with it. And it feels good, and we’re taught to seek out repetition as a terrible code smell, and do away with it as soon as possible.

But it’s possible to be too DRY
- no, really, it is.