This antipattern thing which Berin brought up has the capability of turning Avalon into a totally intuitive, understandable phenomenon, even the same Avalon that was not understable before. Only by changing how you describe it - starting with antipatterns.. Make it simple without having to change anything !
Here is why. Everybody understands anti-patterns. Few understand patterns, or even care to, without a big anti-pattern staring them in the face. Chuck you farley, I ain't studying no patterns. Ask people what they want, they will say they don't know. But give them something - anything - and they will read you the riot act for 20 minutes about how that wasn't what they wanted, and why couldn't you have figured that out?. People react to what they see is wrong. That is why I am here. I have lived the big ball of mud so long I don't like it any more. On the other hand, no big ball of mud, no reason for Avalon, unless you are also some kind of re-use freak or something, and even then it takes a while to get why OO isn't the answer for all situations. But there is something even better about this anti-pattern approach ! The BEST thing about the anti-pattern approach is it allows for *Walking The Tree Of Increasing Complexity* as a mode of learning Avalon techniques and syntactical approaches. The importance of the tree of complexity can not be overstated. This is what makes Avalon understandable and intuitive where it was previously neither. As follows: AVALON INSTRUCTIONS MANUAL: ------------------------------- Here is the simplest most straightforward use of Avalon. Exhibit A. Easy for anyone to understand. Applicable in many instances such as blah or blah. Simple COP. Addresses the anti-pattern of no re-use, and in addition the anti-pattern of big ball of mud. Not much to it. Feast and enjoy. But wait ! When you have a level nnn anti pattern such as blah, you use this next more complicated version of Avalon's pattern, Exhibit B. You would use this in cases such as blah or blah or blah, for example. Don't worry about it unless you need it though. Next, imagine you have a level nnnn anti pattern such as blahHeh. Now that can be a little trickier. In this case, you use an even more complicated version of Avalon designed for this anti pattern. Exhibit C. A little bit of thought involved , because you have to do xxx and yyyy to make it work, and it can blow up on you if you don't watch for zzzzz. But it works in the case of, for example blah or blah or blah. etc. etc etc - all the way up the tree of complexity - from easiest to hardest. Got a project? Want to use Avalon? Take all your pieces, do a quick scan on the examples to see which of your components are similar to which examples and thus will have to use which level of complexity. You can gauge your approach in a manner that allows you to build your skill set and your time budget and your own tree of knowledge by starting with the simple components first, and gradually migrating to the most complex. Oh that one? That's a level nnnn, better learn that after this one. Heh cool, found this one already done. Good, it's only a level nnnn. I think I'll use that just like it is. And on an on. Now this is a very intuitive way to learn about the nuances of COP, and it is a tree of increasing complexity which you don't even really need to learn unless you have the applicable situation. A situation, which, by the way can be comparatively easy to spell out for you in plain English - as a description of similar situations. You could even have a cute section challenging people to see the anti-pattern in this story, kind of like finding the hidden shoe in this figure. A marketing person's dream. Now consider how we are doing it now. 1. Antipatterns are known only by committers - or at least for the most part. 2. We preach at potential users from up on high - you *should* do this because we know better. 3. Solutions are 12 levels of iteration deep - each iteration addressing an anti-pattern identified (and probably forgotten by some). 4. *What's in it for me?* is not even brought up - it is just assumed that you know about the antipatterns. 5. DENIAL is the pattern that prevents someone from accepting Avalon into their life. 6-infinity. Plenty more of similar to 1-5 above. Talking about a set of marketing anti-patterns ! -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
