Small matter of programming

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In software development, small matter of programming (SMOP) or simple matter of programming is a phrase used to ironically indicate that a suggested feature or design change would in fact require a great deal of effort; it often implies that the person proposing the feature underestimates its cost. Such underestimated costs are common during cost estimation, particularly near the beginning of a project. The Jargon File describes an SMOP[1] as:

  1. A piece of code, not yet written, whose anticipated length is significantly greater than its complexity. Used to refer to a program that could obviously be written, but is not worth the trouble. Also used ironically to imply that a difficult problem can be easily solved because a program can be written to do it; the irony is that it is very clear that writing such a program will be a great deal of work. "It's easy to enhance a FORTRAN compiler to compile COBOL as well; it's just a SMOP."
  2. Often used ironically by the intended victim when a suggestion for a program is made which seems easy to the suggester, but is obviously (to the victim) a lot of work. Compare minor detail.

The IBM Jargon Dictionary[2] defines it as:

SMOP (smop) n. Something quite possible, but requiring unavailable resources to achieve. "Why isn't that function available in the program?" − "It's just a Simple Matter Of Programming". (The implication being that, given a few person-centuries, all things are possible.) Also SMOUP (smoop), a Simple Matter Of Micro-Programming (if handwritten, using a Greek mu). See also how hard would it be.

SMOP was among the "games" described in an article as paralleling the Games People Play identified by Dr. Eric Berne in the field of self-help psychology.[3] The game essentially consists of proposing seemingly simple adjustments to a design, leading to unexpected consequences and delays.

Simple matter of software or small matter of software is occasionally used in the same manner. However, it is also used without irony[4] to indicate that straightforward software development is all that is required to resolve some issue. This usage is often invoked when the speaker wants to contrast the implied ease of software changes with the suggested greater difficulty of making a hardware change or a change to an industry standard. This non-ironic usage is more often invoked by senior management and hardware engineers, than it is by software engineers.[citation needed]

See also[edit]


  1. ^ Simple Matter of Programming (Jargon File, version 4.4.7)
  2. ^ SMOP IBM Jargon Dictionary, Tenth Edition 1990
  3. ^ Shedley, Ethan I. (April 1, 1971), "Big System Games", Datamation, Technical Publishing Company, 1301 South Grove Ave., Barrington, Illinois 60010, vol. 17 no. 7, pp. 22–25 
  4. ^ John Dybowski (January 1991). "ONDI – The ON-line Device Interface" (PDF). Circuit Cellar INK The computer Applications Journal (18): 16. This turns out to be an almost trivial exercise, mainly because the computer is used to compute and the controller to control. Just a simple matter of software.