Information Technology Reference
In-Depth Information
to carry out calculations. In principle, these workers could compute anything that
modern digital computers can, given enough pencils, paper and time.
The textile industry saw the first programmable machine to reach wide use: the
head of the Jacquard loom, a technology still used today. Long strips of card are
fed into the Jacquard head, which reads patterns punched into the card to guide
intricate patterning of weaves. The Jacquard head does not itself compute, but was
much admired by Charles Babbage, inspiring work on his mechanical analytical
engine (Essinger 2004 ), the first conception of a programmable universal computer.
Although Babbage did not succeed in building the analytical engine, his design
includes a similar card input mechanism to the Jacquard head, but with punched
patterns describing abstract calculations rather than textile weaves.
This early computer technology was later met with theoretical work in mathe-
matics, such as Church's lambda calculus (Church 1941 ) and the Turing machine
(Turing 1992 , orig. 1947), which seeded the new field of computer science. Com-
puter programmers may be exposed to these theoretical roots through their educa-
tion, having great impact on their craft. As it is now practised, however, computer
programming is far from a pure discipline, with influences including linguistics,
engineering and architecture, as well as mathematics.
From these early beginnings programmers have pulled themselves up by their
bootstraps, creating languages within languages in which great hierarchies of in-
teracting systems are expressed. Much of this activity has been towards military,
business or scientific ends. However, there are numerous examples of alternative
programmer subcultures forming around fringe activity without obvious practical
application. The Hacker culture at MIT was an early example (Levy 2002 ), a group
of male model-railway enthusiasts and phone network hackers who dedicated their
lives to exploring the possibilities of new computers, under the pay of the mili-
tary. Many other programming cultures have since flourished. Particularly strong
and long-lived is the demoscene , a youth culture engaged in pushing computer an-
imation to the limits of available hardware, using novel algorithmic techniques to
dazzling ends. The demoscene spans much of the globe but is particularly strong
in Nordic countries, hosting annual meetings with thousands of participants (Polgár
2005 ).
Another, perhaps looser, programmer culture is that of Esoteric Programming
Languages or esolangs , which Wikipedia defines as “programming language(s) de-
signed as a test of the boundaries of computer programming language design, as
a proof of concept, or as a joke”. By pushing the boundaries of programming, es-
olangs provide insight into the constraints of mainstream programming languages.
For example, Piet is a language notated with fluctuations of colour over a two di-
mensional matrix. Programs are generally parsed as one dimensional sequences, and
colour is generally secondary notation (Blackwell and Green 2002 ) rather than pri-
mary syntax. Piet programs, such as that shown in Fig. 9.1 , intentionally resemble
abstract art, the language itself named after the modernist painter Piet Mondrian.
We return to secondary notation, as well as practical use of two dimensional syntax
in Sect. 9.4 .
Members of the demoscene and esolang cultures do not necessarily self-identify
as artists. However, early on, communities of experimental artists looking for new
Search WWH ::




Custom Search