The silence rule, also known as silence is golden, is an important part of the Unix philosophy that when a program has nothing surprising, interesting, or useful to say, it shouldn't say anything. This means that well-developed programs must treat their users' attention and focus as valuable, and thus perform their tasks as discreetly as possible. In other words, silence itself is a virtue.
There is no single, standardized statement of the Unix philosophy, but perhaps the simplest description is: "Write small, simple, and transparent programs. Write them so they do only one thing, but they do it well and can work together with them on other programs." In other words, the philosophy focuses on the concepts of smallness, simplicity, modularity, craftsmanship, transparency, economy, diversity, portability, flexibility and extensibility.
The silence rule is one of the oldest and most persistent design rules for these operating systems. As intuitive as this rule may seem to experienced users of such systems, it is often ignored by developers of other types of operating systems and application programs for them. The result is often distraction, annoyance and frustration for users.
There are several very good reasons for the silence rule: (1) One is to avoid overloading the user's mind with information that might not be necessary or even desirable. That is, unnecessary information can be a distraction. Furthermore, unnecessary messages generated by some operating systems and application programs are sometimes poorly worded and can cause unnecessary confusion or concern on the part of users.
(2) A second reason is to avoid screen debris. Even today, screen space can be very limited in some special situations.
(3) A third reason is that command-line programs (ie, text-mode programs) on Unix-like operating systems are designed to work in conjunction with pipes, that is, the output of a program becomes the input from another program. This is an important feature of these systems and accounts for much of their power and flexibility. Consequently, it is important to have only the really important information included in each program's output and therefore in the next program's input.
The rule of silence does not mean that less information is available. Instead, by default it simply does not provide information that is likely not needed in most situations. However, it does allow the user to use options, also known as options, to view detailed information if desired. Many command line programs have a verbose option and it is usually -v.
The silence rule originally applied to command-line programs, because all programs were originally command-line programs. However, it is equally applicable to GUI programs (graphical user interfaces). That is, unnecessary and annoying information must be avoided, regardless of the type of user interface.
An example is the useless and annoying dialogs (small windows) that appear on the screen with surprising frequency in some operating systems and programs. These dialog boxes contain some obvious, cryptic, or unnecessary message and require the user to click on them to close them and continue work. This is a disruption of concentration and a waste of time for most users. These dialogs should only be used in situations where some unexpected result might occur or to protect important data.
The rule of silence originated because UNIX was originally developed before the availability of high-quality video displays. Most of the output was sent to slow print terminals, and each unnecessary line of output was a significant drain on user time. While this restriction has long since disappeared, there are excellent reasons for brevity.
As is the case with many other things in the Unix philosophy, the rule of silence can apply to much more than just computers. For example, product controls should be designed by default only to provide information that is likely to be necessary or interesting to most users, in order to minimize distractions and potential user errors. But it should be easy for users to make adjustments so that additional information can be provided if desired.
One key to the ability to apply the silence rule is to make operating computers, industrial controls, and other products as intuitive as possible, so that dialog boxes, explanation windows, tool tips, doorbell sounds, and so on. rarely needed by default (but can easily be activated if and when desired). This is also the key to good product documentation, that is, minimizing the need for it in the first place, but then making it readily available to provide information beyond what most users need or want to know most of the time. .