Brain lock during PDC presentation
When I presented Model/View/ViewModel at the PDC I was a little worried that I would get tackled by some Patterns expert who would want to debate the relative merits of MVC, or my interpretation thereof. To head off this encounter, I practiced saying something like "I would be happy to discuss the differences between these two patterns, but that's a long discussion and I'm not prepared to go into every detail of the semantics." Frankly, as "architects" go I'm pretty pragmatic and though I love patterns, I take them as broad guidelines (as I believe every book repeatedly says they were intended), while there are a few who want them defined much more rigorously.
Anyway, as I got to that slide, I was already thinking ahead to the next one and what came out of my mouth was something like this:
"I would be happy to discuss the differences between MVC and Model/View/ViewModel, but frankly I don't understand MVC".
There was a slight pause in the presentation at this point, while an internal dialogue was carried out.
Brain to mouth: "Uh...what did you just say?"
Mouth: "I don't know, what was I supposed to say?"
Brain: "We rehearsed this, remember?"
Mouth: "Oh, yeah. I remember now...'long discussion...details'. Okay, want me to say that instead?"
Brain: "It's kinda late..."
For the record, I've actually studied/used/applied/recommended/pondered MVC, PAC (Presentation/Abstraction/Controller) and a bunch of other variations at length...but I wasn't terribly surprised later to find that one of the attendees evaluated my "Knowledge of Subject Matter" as 1 out of 5....
Comments
- Anonymous
October 10, 2005
John, don't worry, it all happens to us sometimes no matter how many times we rehearse.
Happened to me last month when I was giving a user group presentation.
Nonetheless, i'm sure it was a great presentation aside from the little slip up. - Anonymous
October 11, 2005
Based on what I've read on this weblog, it looks to me like your statement was correct. What you call the "ViewModel" is simply a poorly-implemented controller. - Anonymous
October 22, 2005
Ok, Ill give you a 5... Whom do I email?