Main article:
History of computer hardwareThe
Jacquard loom was one of the first programmable devices.
It is difficult to identify any one device as the earliest computer, partly because the term "computer" has been subject to varying interpretations over time. Originally, the term "computer" referred to a person who performed numerical calculations (a
human computer), often with the aid of a
mechanical calculating device.
The history of the modern computer begins with two separate technologies - that of automated calculation and that of programmability.
Examples of early mechanical calculating devices included the
abacus, the
slide rule and arguably the
astrolabe and the
Antikythera mechanism (which dates from about 150-100 BC).
Hero of Alexandria (c. 10–70 AD) built a mechanical theater which performed a play lasting 10 minutes and was operated by a complex system of ropes and drums that might be considered to be a means of deciding which parts of the mechanism performed which actions and when.
[3] This is the essence of programmability.
The "castle clock", an
astronomical clock invented by
Al-Jazari in 1206, is considered to be the earliest
programmable analog computer.
[4] It displayed the
zodiac, the
solar and
lunar orbits, a
crescent moon-shaped
pointer travelling across a gateway causing
automatic doors to open every
hour,
[5][6] and five
robotic musicians who play music when struck by
levers operated by a
camshaft attached to a
water wheel. The length of
day and
night could be re-programmed every day in order to account for the changing lengths of day and night throughout the year.
[4]The end of the
Middle Ages saw a re-invigoration of European mathematics and engineering, and
Wilhelm Schickard's 1623 device was the first of a number of mechanical calculators constructed by European engineers. However, none of those devices fit the modern definition of a computer because they could not be programmed.
In 1801,
Joseph Marie Jacquard made an improvement to the
textile loom that used a series of
punched paper cards as a template to allow his loom to weave intricate patterns automatically. The resulting Jacquard loom was an important step in the development of computers because the use of punched cards to define woven patterns can be viewed as an early, albeit limited, form of programmability.
It was the fusion of automatic calculation with programmability that produced the first recognizable computers. In 1837,
Charles Babbage was the first to conceptualize and design a fully programmable mechanical computer that he called "The
Analytical Engine".
[7] Due to limited finances, and an inability to resist tinkering with the design, Babbage never actually built his Analytical Engine.
Large-scale automated data processing of punched cards was performed for the
U.S. Census in 1890 by
tabulating machines designed by
Herman Hollerith and manufactured by the
Computing Tabulating Recording Corporation, which later became
IBM. By the end of the 19th century a number of technologies that would later prove useful in the realization of practical computers had begun to appear: the
punched card,
Boolean algebra, the
vacuum tube (thermionic valve) and the
teleprinter.
During the first half of the 20th century, many scientific computing needs were met by increasingly sophisticated
analog computers, which used a direct mechanical or
electrical model of the problem as a basis for
computation. However, these were not programmable and generally lacked the versatility and accuracy of modern digital computers.