Design Patterns NYC

Wednesday, June 22, 2005

Orthagonality, continuations and frogs

This is the first post (excluding the test) to the Design Patterns NYC blog. Schedule permitting I'll try to follow up the week's discussion with a quick summary, at the very least the chapters covered and topics discussed.

First, the turnout was good last week, which is good news in light of "everybody might simultaneously go on vacation" worries.

We covered Chapter 2 in "The Pragmatic Programmer". There were some interesting discussions on the DRY (don't repeat youself) principle, Orthagonality (they are actually very closely related). For an excercise in orthagonality I suggested checking out "Policy-Based Design" technique, which is based on conscious discovery and separation of orthagonal dimensions in a piece of functionality. There is some good info here, some C++ required.

I do not remember what in the book triggered this, but we also waded into a discussion of continuations and some other related concepts such closures and generators (ala python). I could not remember a good definition of continuations on the spot, but really there is none. What I mean is that there might be some academic definition, but it will never make one grok continuations. Here is something that will, while(True):read(Continuations for Curmudgeons). Incidentally the article has the "frog principle" as a subplot, which our chapter did discuss ~:^)

Tuesday, June 21, 2005