'''Rule of Three''' Seems started from UsedThreeTimes rule. ''tres faciunt collegium.'' ---- '''A pattern can be called a pattern only if it has been applied to a real world solution at least three times.''' ---- The pattern admonition that an idea be UsedThreeTimes to be a true pattern is reminiscent of the Rule''''''sOfThree from Biggerstaff and Richter: * You must have looked at at least three systems to understand what is common across them (and therefore reusable) * It takes three times as much effort to make something reusable as to make it usable * You will receive payback after the third release. These, and other of Biggerstaff's rules, have been substantiated from practice by WillTracz; he mentions them in his talks. -- JimCoplien ---- The RuleOfThree is an instance of ThingsInThrees which is somewhat more general than the UsedThreeTimes rule ... both are arbitrary rules of thumb. -- RaySchneider ---- From AlicesRestaurant, ArloGuthrie: "...And the only reason I'm singing you this song now is cause you may know somebody in a similar situation, or _you_ may be in a similar situation, and if you're in a situation like that there's only one thing you can do and that's walk into the shrink wherever you are, just walk in, say "Shrink, You can get anything you want, at Alice's restaurant.". And walk out. You know, if one person, just one person does it they may think he's really sick and won't take him. And if two people, two people do it, in harmony, they may think they're both faggots and they won't take either of them. And three people, three, can you imagine, three people walking in sing a bar of Alice's Restaurant and walking out. They may think it's an organization. And can you imagine fifty people a day, I said fifty people a day walking in sing a bar of Alice's Restaurant and walking out. And friends they may thinks it's a movement." ---- CeePlusPlus stuff moved to RuleOfTheBigThree ---- "Just the place for a Snark! I have said it twice: That alone should encourage the crew. Just the place for a Snark! I have said it thrice: What I tell you three times is true." -- Lewis Carroll, ''The HuntingOfTheSnark'' Which SF buffs may recall was used in JohnBrunner's ''Stand on Zanzibar'' as the basis for a trapdoor to override a confused artificial intelligence. -- DaveSmith This also appeared in RobertHeinlein's TheNumberOfTheBeast - when someone wanted something put in permanent storage, they said "I tell you three times" to the computer, and it saved three separate copies of it to make sure it was never corrupted. -- GavinLambert (see FaultTolerance) http://holiday.snrk.de/ is a picture collection showing possible sources used by Henry Holiday for his illustrations of the Snark (see also http://holiday.snrk.de/BeCurious.htm). -- Goetz Kluge, Munich, Germany ---- "The Ramans did everything in threes." -- DavidPlass ---- "Beetlejuice, Beetlejuice, Beetlejuice!" ---- "One, two, five!" -- King Arthur, ''MontyPython and the HolyGrail'' ---- Three rings for the Elven kings under the sky -- JrrTolkien ---- Mind the Three-fold Laws you should: three times bad and three times good. -- The WiccanRede ---- "Knock three times on the ceiling if you want me." -- TonyOrlando ---- He thought he saw a Garden-Door That opened with a key: He looked again, and found it was A Double Rule of Three: "And all its mystery", he said, "Is clear as day to me!" -- LewisCarroll, excerpt from "The Mad Gardener's Song," in ''Sylvie and Bruno'' (see http://www.hoboes.com/html/FireBlade/Carroll/Sylvie/Gardener.html) ---- It seems logical to me, that once you have three occurrences of an event you can do something like a majority vote: What happens most (all) of the time? If something happens twice, with different results, you build the rule: It's randomly once this, once that. If it's the same result, you still think it might be randomly, but develop the thesis, it might follow a pattern. The third event then "proves" that thesis. -- MaxVoelkel ---- The first time is happenstance. The second time is coincidence. The third time is enemy action. -- Auric Goldfinger We have a similar motto in mathematics: If it works once, it's a trick. If it works twice, it's a technique. If it works three times, it's a theorem. -- CameronSmith ---- It takes three legs to make a tripod or to make a table stand, And it takes three wheels to make a vehicle called a tricycle And every triangle has three corners, Every triangle has three sides, No more, no less, You don't have to guess That it's three Can't you see? It's a magic number http://www.utterlyrics.com/b/blind-melon/lyrics/three-is-a-magic-number.html ---- See ThreeAmigos, TheThreeExtremos, ThreeOldGreeks (but ''not'' GangOfFour or PartyOfFive, and ''certainly'' not LawOfFives). ---- See UsefulUsableUsed, SeeOneDoOneTeachOne, ThreeStrikesAndYouRefactor, ThreeExamples, ThingsInThrees, PatternityTest. ---- Even though we have GangOfFour not GangOfThree ;-) but I still believe three is a wonderful number. Explanation for wonderfulness of this very number is simple and natural. Most of the natural phenomena can be explained in three dimensions or, most of the natural phenomena for which we know the behavior(s) in all the three dimension are predictable, thus generalizable. Still for some gaining predictability calls for considering the fourth dimension. As we know physics is study of nature. On the same lines I can say SoftwarePhysics is study of ''nature of software systems''. That we know as of now is not even as mature as was ClassicalPhysics in 18th century, so realization of ''fourth dimension'' is still miles away. See: ThreeLawsOfRobotics, IsaacAsimov had to introduce 0th law as he was trying to deal with something we may realize in future as ModernSoftwarePhysics. -- NitinVerma ---- If you think of this in an abstract mathematical way, it's quite clear why this rule holds. Finding similarities is analogous to drawing a line. If you have only two examples then you can always draw a line through it. However with three points you can check whether the similarities you're deducing between systems is actually something that holds (IsAPattern?). -- ChristophePoucet ''I'd like to point out that the above reasoning is entirely fallacious, relying on ProofByAnalogy, and as we all know ProofByAnalogyIsFraud. Ex: [sarcasm mode] Obviously, we need to use a best fit quadratic or a best fit plane instead of a line. Those require 3 points to define, and a fourth point can reveal if it actually fits the pattern. [/sarcasm mode]'' ---- In project management, a task has exactly three states: * Not started * Not completed * Complete (OneHundredPercentDone) (Additionally, there are other useful states/substates, such as "blocked", "abandoned", etc. However, making distinctions between levels of doneness other than the above is asking for trouble - see NinetyPercentDone). ---- Surprised that the HolyTrinity hasn't been listed. Or the Three Wise Men for that matter. * "They took the last train for the coast" ----- One of my favorites: One two three Are you listening? One two three We'll repeat that for those of you on drugs: Three Three Three ----- See also: DuplicationRefactoringThreshold ---- CategoryStories CategoryMetaPattern