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.
is an instance of ThingsInThrees
which is somewhat more general than the UsedThreeTimes
rule ... both are arbitrary rules of thumb. -- RaySchneider
"...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."
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.
This also appeared in RobertHeinlein
- 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.
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."
"Beetlejuice, Beetlejuice, Beetlejuice!"
"One, two, five!"
-- King Arthur, MontyPython and the HolyGrail
Three rings for the Elven kings under the sky
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."
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!"
, excerpt from "The Mad Gardener's Song," in Sylvie and Bruno
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
(but not GangOfFour
, and certainly
Even though we have GangOfFour
;-) 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.
had to introduce 0th law as he was trying to deal with something we may realize in future as ModernSoftwarePhysics?
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:
(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