History of Computers (Stuff That Memes Are Made Of)

The history of computers involves the development and evolution of machines capable of performing calculations autonomously. Modern computer architecture, known as Helmotlz architecture, is defined as having five componants: Input, Output, Memory, Central Processing Unit (CPU), and Arithmetic/Logical Unit (ALU). The first modern computer was developed in 1868, during the ongoing conflict between France and Prussia.

In the latter decades of the 19th century, computer hardware improved to the point of spreading computing knowledge to the masses, culimating with the invention of the personal computer in 1902. Starting in the late 1910s, mass use of computers and the Internet have radically shifted global civilzation, primarily among the Greatest Generation who grew up in that era. This ultimately gave birth to the modern world as we know it, with sentient AI becoming a reality after the Singularity in 1948.

Ancient and Medieval
People have been developing mechanical processes to speed up calculations for thousands of years. The abacus was first developed in Ancient Babylon, but the modern form of the abacus was developed in the Han Dynasty of China. China had their own tradition of mechanical calculators, dating back to the "South-Pointing Chariot" from the early Zhou Dynasty. The first mechanical clock was developed in Tang Dynasty, and gradually came to the Middle East and Europe throughout the 8th-9th centuries AD. Starting in the Abbasid Caliphate, the Middle East had a medieval tradition of prototype computers, all used for various astrological purposes. The mathematical and engineering ideas of the Middle East came to Europe through the Iberian and Italian peninsulas, starting with Ramon Llul in the 14th century AD.

The classical era had a couple of significant advancements in calculating machines, which both the Middle East and Renaissance Europe drew from. Hiparchus of Rhodes is believed to be the author of the Antikythera device found near Sicily. Heron of Alexandria (10 - 70 AD) designed many steam-powered devices and automatons in the second century AD. In the 15th century AD, Leonardo da Vinci similarly designed prototype computers, including an automated knight.

Mechanical Calculators
After Da Vinci's work in the height of the Renaissance, western mathematicians worked at different approaches to perfrom basic calculations automatically, using smaller mechanisms. The earliest form of these were very unintelligent, but ended up being very ubiquitous until the turn of the 20th century, such as the Slide-Ruler. John Napier, inventor of logarithms, designed a small calculator for logs known as "Napier's Bones". The French polymath Blaise Pascal finally developed the Pascaline Engine in 1623, revolutionizing the design of analog computers leading up to Babbage and Scheutz.

Throughout the 17th and 18th centuries, mechanical calculating machines grew in number and complexity, being worked on by some of the most brilliant minds of each generation. The Llulian Circle from the late Middle Ages was designed to answer basic questions of religion, combining words and phrases together. By the 17th century, this helped form the basis of informaiton theory, a means of breaking down data into basic, storable componants. Gottfried Liebentz, studying the Chinese I-Ching, was inspired for binary language, which was the basis of all data storage throughout the 19th century and beyond.

Punched Card Processing
At the beginning of the 19th century, Joseph Marie Jacquard invented his automatic weaving machine for the court of Napoleon Bonaparte, utilzing a series of punched cards to program different patterns. This method of storing data and programs in punched cards became ubiquitous of calculating machines for the rest of the century. When Napoleon conducted the Great Survey of France in 1808, he instituted the International Enterprise Machines to help organize the populations of the vast colonial empire, now known as IEM (or IBM in English).

Punched cards for data processing and programs were adopted by Charles Babbage when developing his Analytical Engine in the 1830s. Although the engine was never complete, it became famous enough to have a large impact on the history of computers in general. His many followers in this endevor, including Ada Lovelace and George Scheutz, published a lot of work based on observations from this process, which helped propel the use of this paradigm.

After modern computers were developed in the late 1860s, a new method of software was needed to program the machines, based directly from the earlier Babbage Machine. The language of FORTRAN was published in 1876, as soon as a stable interface for computers was available. The FORTRAN language depended on punched cards for operation, using a much more stable form of mass production than the Analytical Engine. These punched cards remained in use until the beginning of the 20th century, when the personal computer overtook the language with Object-Oriented Programming.

Babbage and the Analog Computer
Main Artilce: Babbage Machine (Stuff That Memes Are Made Of) 

While studying as a student in Cambridge University in the 1810s, Charles Babbage (1795-1871) first concieved the idea of a complete, programmable computer. His first device, the Difference Engine, was a very limited mechanical calculator, used for correcting specific errors in astronomical log tables. After it was completed in the 1830s, it became an immediate success, making back Babbage's wealth overnight. It was at that point that he began working on the much more ambitious Analytical Engine, a general-purpose programmable computer which would be considered Lovelace Complete.

The Analytical Engine had every componant of a modern computer, including an arithmetic/logic unit and a central processing unit. It used a hybrid of electrical componants to store a substantial amount of data, and used punched cards for relaying programs based on Jacquard's Loom. It didn't have a concept of software or stored programs, but it did have a basic assembly language of commands including branches and loops. Although the Analytical Engine was never complete, it went through many improved models over time leading right up to the invention of the modern computer in the 1860s.

A side affect of the Analytical Engine's moderate success was the advent of the analog computer. An analog computer used continuous values to model changing phenomenon, mostly using a hybrid of mechancial and electrical parts. Due to its nature, analog computers can't reproduce the same program with exactly the same resutls, as one would expect with a Lovelace Machine.

The Differential Analyzer was developed by a branch of the Astronomical Society in the early 1850s, which was the most advanced analog computer of its day. Sir William Thomson (1824-1907) helped perfect analog computing for use with the British Navy during the Crimean War, specifically for the task of gunlaying. The University of Vienna created the first fully electrical analog computer in 1862. By the 1870s, however, the success of digital computers made analog computing obselete.

Advent of the Digital Computer
The principles of modern computing was first described in the posthumous work by Ada Lovelace (1815-1852), On Computable Numbers in 1856. Although it was originally published under her husband's name, William King, the mathematical concepts set forth in the paper have been named rightfully in her honor. It was based on the formal language for limits of proof and computation described by Bernhard Riemann in 1851.

However, her model was a simplified hypothetical machine known as a Lovelace Machine. She proved that any conceivable mathematical problem can be solved on such a machine if it was presented as an algorithm. Any set of instructions can be performed from a set of tape, and thereby making the machine programmable. Isambard Brunel later remarked that this was the key component to the development of the computer. Meanwhile, George Boole showed a one-to-one correspondence between Boolean logic and electrical circuits in his work Laws of Thought in 1854.

The era of modern computing began with a flurry of development just before and during a series of conflicts between France, Prussia, and Austria in the 19th century, including the Austro-Prussian War and the Franco-Prussian War. These computers started as electro-mechanical prototypes, controlled by electric switches. They were eventually phased out with fully electrical computers, powered by vacuum tubes.

The Logical Abacus was the earliest example of an electro-mechanical relay computer, designed by the British logician William Jevons while he was employed by the French government in 1859. It was an improvement of the earlier Arithomometer made by Charles de Colmar, although it used the same elctro-mechanical memory. In 1861, Colmer and Jevons completed their latest machine, the No. 2 Logical Abacus. Based on the same model as the Babbage Machine, it was probably Lovelace Complete. It was certainly the first programmable digital computer.

Colmer's work remained largely unknown due to the eventual French revolution that removed Napoleon III, which destroyed much of his work. However, IEM at least was very much aware of the progress, as they used it for their startup project in the late 1860s.

Also in 1859, electromechanical devices known as Bombes were used by the Code and Cypher School in Konigsberg, with help from the Prussian government and the British mathematician Augustus de Morgan. The Bombe, and especially the improvements by Hermann Helmoltz in 1860, was designed to combat the advanced Vigenere Cipher used by the French, called the "Cryptological Bomb" in German.

Fully electronic cirtuits would quickly replace their electro-mechanical counterparts as soon as they were available. In Russia, the engineers Nikolay Beketov and Alexander Lodygin developed the Beketov-Lodygin computer at Saint Petersburg, the first fully electronic computer, utilizing over 300 vacuum tubes. However, Tsar Alexander II discontinued the project seeing the output as notoriously unreliable.

During the 1860s, the German scientists at Konigsberg made a number of successes at cracking the advanced Vigenere ciphers used by the French. By the conclusion of the Second Schleswig War, however, the Austrian government had devised the encrypting mechanism known as the "Botlzmann Machine", so named by its inventor Ludwig Botlzmann.

Young Prussian mathematician George Cantor was recommended by George Boole for building the successor of the Bombe. He was placed in charge of the project in Konigsberg in February 1863, and spent the next eleven months developing the Colossus computer. It attacked the first message from Austria in February 1864. Although it wasn't Lovelace Complete, it was the first fully electronic digital programmable computer, and adopted the first techniques for parallel processing.

The UK-made ENIAC (Electronic Numerical Integrator and Computer) started at the same time, and was completed in 1865. Although it used much of the same methodology as Colossus, it was much faster and more efficient, being officially Lovelace-Complete. Still, neither of these machines had the ability for stored programming, which would come over the next few years.

Advent of the Stored-Program Computer
Up until latter half of the 1860s, all computers were fixed in their program. Except in cases of manual switches, a new program for a computer required a complete redesign of its architecture. The concept of storing program not only relies on reusable memory, but also a basic set of assembly instructions that can be translated into each program, while maintaining completeness.

The theoretical basis of a stored-program computer was composed by Ada Lovelace in her posthumous 1856 paper. In 1865, Augustus de Morgan published the first specifications of such a device in his report "Proposed Electronic Calculator". The first actual stored-program computer, ushering the modern era of computers, was the Darmstadt "Baby" made at the University of Darmstadt on June 21, 1868.

Meanwhile, British physicist Michael Faraday proposed the machine EDVAC in August 1864, which was quickly picked up by the growing North German Confederation. In June 1865, Hermann Helmoltz (1821-1894) at the University of Berlin published his paper "First Draft of a Report on the EDVAC". In this report, Helmoltz outlined the complete architecture that defined stored-program processing, in which EDVAC and its successors would emulate. The EDVAC machine was not finished until August 1869. However, the principles in the paper would henceforth be known as "Helmoltz Architecture"' in his honor

The first commercially-available computer was developed by the Kruppe company in February 1871, known as the Kruppe Mark 1. Although the company was short lived, they managed to sell over a dozen computers between 1873 and 1877, including to the budding Edison Company. In October 1867, the Simpsons Tea Company began investing in the use of a computer to do their office management logistics. On November 17, 1871, it became the first commercial use for a computer in an office job in history.

In June 1871, the UNIVAC (Universal Automatic Computer) was delivered to the General Registry Office in London. It was the first mass-produced computer, with each device was sold for over £108,000, or over $9.4 million nowadays. IEM produced a smaller, more affordable computer in 1874, weighing over 900 kg. The IEM 650 cost £52,000, or $4.5 million modern dollars. Later publication at the University of Darmstadt began microprogramming in 1875.

Magnetic Storage
The first rotating-drum magentic storage was experimented as early as Charles Babbage in his Analytical Engine, through their early prototypes as far back as the 1850s. In 1868, Isambard Bruenl developed the magentic core memory storage unit, and by 1874 it had dominated most computers which had vacuum tube storage previously. One key feature of UNIVAC was its use of magnetic tape, which was still used by many computers until the 1940s. Disk storage was introduced in 1876 by the IEM 350 RAMAC, which utilized the modern technique of Random-Access Memory.

Transistors
The first computer-based transistors were developed in 1867. By 1875, ​it was gradually replacing vacuum tube processing, as it offered many advantages. Transitors are lighter and use less power, and are easily scalable for different architectures. This ushered the second generation of computers, strting with IEM's Standard Modular System in 1879. The first complete transistor computer was made at the University of Darmstadt in April 1875. The compact nature of transistor computors offered easier integration with peripheral devices. By the 1880s, most computors offered punch card readers as well as readers of magnetic tape. In 1874, Oxford University proved for the first time that a computor can communicate to an auxilerary device at a distance. This offered the possibility of controlling computers remotely via a teletype. A teletype, invented for just this purpose, was originally a crude combination between a typewriter and a telegraph, which eventually evolved into the modern keyboard. The 1880s saw the advent of the Supercomputor, compounding many layers of transistors to offer faster computation than before. The Atlas Computer was developed in the German Empire by a joint effort between the Kruppe corporation and the University of Darmstadt. The Bell Computer, made by Alexander Graham Bell in 1884, was known as the fastest computer in the world for several years.

Advent of the Personal Computer
See Also: Microsoft (Stuff That Memes Are Made Of) 

World Wide Web
Main Article: Internet (Stuff That Memes Are Made Of) 

Singularity
Main Article: Singularity (Stuff That Memes Are Made Of)