Skip to main content
Top

2011 | OriginalPaper | Chapter

10. Computers Only Do as They’re Told

Author : Derek Partridge

Published in: The Seductive Computer

Publisher: Springer London

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

What we’ve told a computer to do must be distinguished from what we believe we’ve told it to do. Knowing what you’ve told a computer to do is impossible to establish with certainty. A program module has only one flow-path in and one flow-path out. Well-structured (i.e. modular) IT systems can be contrasted with spaghetti-code systems, and the former considerably assist the task of knowing what you’ve told the computer to do. Modern IT system design and development still suffers from the puzzle solving-and-setting practices that were important in the early days of programming, such as the one liner. This remains a detrimental element of the allure of programming.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Footnotes
1
IT-system flow structure is just one, perhaps the most important one, of a variety of representations of the dynamics of a computation – ‘data-flow diagrams’, for example, are another popular aid to IT-system understanding. Do not assume that flow structure is the key that will fling the door open to full program understanding ; it just provides one useful view of what’s going on in general. F. P. Brooks in his book The Mythical Man-Month (Addison-Wesley, 1975; reissued with additions 1995) stresses the point that such representations of computations (and he lists a number of alternative and competing ones) can help, but they fall far short of solving the problem of program understanding .
 
2
Brooks again (see note above) first used Rheims cathedral as a motif for elegant complexity with respect to programs.
 
3
In the first figure below, five rectangles enclose five occurrences of the same four program instructions which occur in the linear modularisation illustrated in Fig. 10.4 . So the IT-system designer’s choice would be to accept the linear modularisation or to create a subprogram module of these four instructions and then replace each boxed set of the four instructions by a single DO instruction. The program would be shorter but the flow structure would be more complicated. Which is preferable? It depends upon many factors, and even when they are all assessed the choice will still be a matter of creative judgement. The resultant decisions should be designed to maximize understanding of the current and future versions of the IT system. For example, are the five occurrences of the identical instruction groups likely to be subject to change, and are they all likely to be subject to the same change pressures, or is one or more likely to diverge from the others? But assuming we are happy to treat all five equally: we can create a subprogram (named X ) and replace the five identical blocks of four instructions with a reference to the subprogram , i.e., DO X …. By so doing we have reduced the size of our program (ten instructions fewer) and localized this repeated operation in the one subprogram, but we have, of necessity, introduced a more complex flow structure. This figure below illustrates this strategy but with the explicit flow structure to, and back from, the subprogram only shown once (it exists for all five DO instructions).
 
4
The macho allure of the one-liner is captured in the 1983 quotation to be found on page 111 of D. Lubar’s It’s Not a Bug; It’s a Feature (Addison-Wesley, 1995):
It’s a big boost to the ego to write code that works and that nobody else can read. It’s bad practice, but often almost irresistible.
attributed to Jim Butterfield
 
Metadata
Title
Computers Only Do as They’re Told
Author
Derek Partridge
Copyright Year
2011
Publisher
Springer London
DOI
https://doi.org/10.1007/978-1-84996-498-2_10

Premium Partner