APCS – Unit 1 – Lesson 1 – A Very Brief History of Computing

1. Early History of Algorithms and Development of Binary Logic

According to Wikipedia, the word ‘algorithm’ has its roots in Latinizing the name of mathematician Muhammad ibn Musa al-Khwarizmi in the first steps to algorismus. Al-Khwārizmī (c. 780–850) was a mathematician, astronomer, geographer, and scholar in the House of Wisdom in Baghdad.

About 825, al-Khwarizmi wrote an Arabic language treatise on the Hindu–Arabic numeral system, which was translated into Latin during the 12th century under the title Algoritmi de numero Indorum. This title means “Algoritmi on the numbers of the Indians”.

In English, it was first used in about 1230 and then by Chaucer in 1391. English adopted the French term, but it wasn’t until the late 19th century that “algorithm” took on the meaning that it has in modern English.

The binary system was invented by the Indian mathematician Pingala in the 3rd century BCE. In this system any number can represented with just zeroes and ones.

It was not until the 1700’s however, that binary logic was formally developed from the binary system by German mathematician Gottfried Leibniz. Leibniz is also known for having invented Calculus independently of Newton. In binary logic, the zeroes and ones take on the values of false and true, respectively, or OFF and ONs. More than a century later, George Boole refined the process in his publication of Boolean Algebra.

2. Modern Computing

Charles Babbage and Ada Lovelace together are often thought of as the founders of modern computing. Babbage invented the Difference Engine, and, more importantly, the Analytical Engine. The latter is often recognized as a key step towards the formation of the modern computer.

FUN FACTS: Babbage was obsessed with fire-he once baked himself in an oven for four minutes at 265 degrees Fahrenheit just to see what would happen. He reported “No great discomfort”.

Ada Lovelace, daughter of famous poet Lord Byron, is known for describing-in algorithms- the processes the Analytical Engine was intended for. In this sense she is considered a pioneer in computer programming.

3. Analog Computers

  • According to Wikipedia, analog computer uses the continuously changeable aspects of physical phenomena such as electrical, mechanical or hydraulic quantities to model the problem being solved.
  • Analog computers are believed to have been first developed by the Greeks with the Antikythera mechanism, which was used for astronomy. The Antikythera mechanism was discovered 1901 and was dated back to circa 100 BCE.

The photo below shows an analog computing machine at the Lewis Flight Propulsion Laboratory circa 1949.

4. The First Digital Computer and Transition from Analog to Digital

According to Wikipedia, ENIAC (ɛniæk/; Electronic Numerical Integrator and Computer) was the first electronic general-purpose digital computer. It was Turing-complete, and able to solve “a large class of numerical problems” through reprogramming.

In computability theory, a system of data-manipulation rules (such as a computer’s instruction set, a programming language, etc.) is said to be Turing-complete or computationally universal if it can be used to simulate any Turing machine. This means that this system is able to recognize or decide other data-manipulation rule sets. Turing completeness is used as a way to express the power of such a data-manipulation rule set. Virtually all programming languages today are Turing-complete. The concept is named after English mathematician and computer scientist Alan Turing.

Although ENIAC was designed and primarily used to calculate artillery firing tables for the United States Army’s Ballistic Research Laboratory (which later became a part of the Army Research Laboratory), its first program was a study of the feasibility of the thermonuclear weapon.

ENIAC was completed in 1945 and first put to work for practical purposes on December 10, 1945.

The advent of World War Two prompted the transition from analog computers to digital. Electronic circuits, relays, capacitors and vacuum tubes replaced mechanical gears and analog calculations became digital ones. Examples of new digital computers were Atanasoff-Berry Computer, the Z3, the Colossus and ENIAC (which was 1000 times faster than its contemporaries).  These computers were hand built and relied on vacuum tube technology. For input assimilation they relied on punched cards or punched paper tape.

5. Alan Turing

Have you ever watched the movie The Imitation Game? It tells the story of Alan Turing, the brilliant mathematician and father of computing. 

Charles Babbage laid the foundations of Computer Science, but it was Alan Turing of England who is regarded as the “Father of Computer Science”. He provided a new concept of both algorithms and the process of calculations with the invention of his Turing Machine.

The Turing Machine is a basic abstract symbol manipulating device that can be used to simulate the logic of any computer that could possibly be constructed. It was not actually constructed, but its theory yielded many insights.

The Turing Test is Turing’s idea of how to determine a machines capability as far as thought is concerned.

FUN FACT: Alan Turing was a world class marathon runner!

6. The Von Neumann Machine

Every modern computer has the same five basic components: memory, control unit, arithmetic logic unit, input and output. This was designed by noted mathematician John von Neumann in the 1940’s. It has been very influential in the design, evolution, and continued architectural setup of the modern computer.

8. Nowadays and Beyond

Parallel computers continue to be developed.

Biological computing, with the recent work of Len Adleman on doing computations via DNA, has great promise. The Human Genome Project is attempting to sequence all the DNA in a single human being.

Quantum computing gets a boost with the discovery by Peter Shor that integer factorization can be performed efficiently on a (theoretical) quantum computer.

The “Information Superhighway” links more and more computers worldwide.

Computers get smaller and smaller; the birth of nano-technology.

List of Sources and References:

https://www2.cs.duke.edu/courses/summer07/cps001/Lectures/History_CS.pdf

https://cs.uwaterloo.ca/~shallit/Courses/134/history.html

https://amturing.acm.org/byyear.cfm

https://www.computerhistory.org/timeline/computers/

https://www.quora.com/Who-was-the-first-programmer-1

https://www.alamy.com/stock-photo-ada-lovelace-charles-babbage-modern-illustration-portrait-80617651.html