If the BestLearningIsByDoing, why are we all wasting hours of our time reading this Wiki trying to LearnBySharing? LOL Please look also at LearningByDoing. Seriously though, the premise of this page is that, despite the best intention of our fellow software developers, researchers, and designers, what they have experienced in the past and related to you in the written or spoken word may actually be invalid in your design universe. In other words, the particular characterists of their development environment, the SoftFactors, played an invisible hand in how they perceived the success or failure of their projects. However, you will develop your project in a different universe with a different set of SoftFactors, and so although their admonitions may provide /some/ guidance, you won't really have learned the most positive way to achieve your ends until you actually /have/ done the project. Thus, the BestLearningIsByDoing. Yes, we all love to share our experiences of what we've done, and exhalt our sucesses as well as weep publicly at our mistakes (this sentence needs a better metaphor). But doing so is mostly a SocialConstruct, and although we like to share in this process both as reveler and as listener, when the fingers hit the keyboard while programming we are still LearningOnTheFly. -- JeffChapman Well, one learns by doing, yes. But where does one learn what to attempt? Here. Reading wiki will not teach you how to implement an observer pattern - but it does teach you how to describe it, and some rules of thumb when implementing one, and where one's useful. You'd get all those things on your own even without wiki, but reading about the patterns beforehand means you'll be able to apply them on the first or second refactoring instead of the seventh. ---- For the things we have to learn before we can do them, we learn by doing them. ''-- MrAristotle (384-322 BC), Greek philosopher.''