The academy had a well-stocked library that prompted Babbage's love of mathematics. He studied with two more private tutors after leaving the academy. Of the first, a clergyman near Cambridge, Babbage said, "I fear I did not derive from it all the advantages that I might have done." The second was an Oxford tutor from whom Babbage learned enough of the Classics to be accepted to Cambridge.
Babbage arrived at Trinity College, Cambridge in October 1810. He had read extensively in Leibniz, Lagrange, Simpson, and Lacroix and was seriously disappointed in the mathematical instruction available at Cambridge. In response, he, John Herschel, George Peacock, and several other friends formed the Analytical Society.
In 1812 Babbage transferred to Peterhouse, Cambridge. He was the top mathematician at Peterhouse, but failed to graduate with honours. He instead received an honorary degree without examination in 1814.
On 25 July 1814, Babbage married Georgiana Whitmore at St. Michael's Church in Teignmouth, Devon. His father did not approve of the marriage. The couple lived happily at 5 Devonshire Street, Portland Place, London. They had seven children, but only three lived to adulthood. Charles' father, wife, and one son all died in 1827.
Design of computers
In recognition of the high error rate in the calculation of mathematical tables, Babbage wanted to find a method by which they could be calculated mechanically, removing human sources of error. Three different factors seem to have influenced him: a dislike of untidiness; his experience working on logarithmic tables; and existing work on calculating machines carried out by Wilhelm Schickard, Blaise Pascal, and Gottfried Leibniz. He first discussed the principles of a calculating engine in a letter to Sir Humphrey Davy in 1822.
Babbage's engines were among the first mechanical computers. His engines were not actually completed, largely because of funding problems and personality issues. Babbage realized that a machine could do the work better and more reliably than a human being. Babbage controlled building of some steam-powered machines that more or less did their job; calculations could be mechanized to an extent. Although Babbage's machines were mechanical monsters their basic architecture was astonishingly similar to a modern computer. The data and program memory were separated, operation was instruction based, control unit could make conditional jumps and the machine had a separate I/O unit. Inventions not talked about here but worth mentioning are: The cowcatcher, dynamometer, standard railroad gauge, uniform postal rates, occulting lights for lighthouses, Greenwich Time signals, and heliograph ophthalmoscope.
In Babbage's time, numerical tables were calculated by humans called 'computers'. At Cambridge he saw the high error rate of the people computing the tables and thus started his life's work in trying to calculate the tables mechanically, removing all human error. He began in 1822 with what he called the difference engine, made to compute values of polynomial functions.
Unlike similar efforts of the time, Babbage's difference engine was created to calculate a series of values automatically. By using the method of finite differences, it was possible to avoid the need for multiplication and division.
The first difference engine needed around 25,000 parts of a combined weight of fifteen tons standing eight feet high. Although he received much funding for the project, he did not complete it. He later designed an improved version, "Difference Engine No. 2". This was not constructed at the time, but was built using his plans in 1989-1991, to 19th century tolerances, and performed its first calculation at the London Science Museum bringing back results to 31 digits, far more than the average modern pocket calculator.
Babbage designed a printer for the second difference engine which had some remarkable features; it supported line-wrapping, variable column and row width, and programmable output formatting.
Soon after the attempt at making the difference engine crumbled, Babbage started designing a different, more complex machine called the Analytical Engine. The engine is not a single physical machine but a succession of designs that he tinkered with until his death in 1871. The main difference between the two engines is that the Analytical Engine could be programmed using punch cards, an idea unheard of in his time. He realized that programs could be put on similar cards so the person had to only create the program initially, and then put the cards in the machine and let it run. The analytical engine was also proposed to use loops of Jacquard's punched cards to control a mechanical calculator, which could formulate results based on the results of preceding computations. This machine was also intended to employ several features subsequently used in modern computers, including sequential control, branching, and looping, and would have been the first mechanical device to be Turing-complete.
Ada Lovelace, an impressive mathematician and one of the few people who totally understood Babbage's vision, created a program for the Analytical Engine. Had the Analytical Engine ever actually been built, her program would have been able to calculate a numerical sequence known as the Bernoulli numbers. Based on this work, Ada is now credited as being the first computer programmer and, in 1979, a contemporary programming language was named Ada in her honour. Shortly afterward, in 1981, a satirical article in Datamation magazine described the Babbage programming language, the "language of the future".
In 1824, Babbage won the Gold Medal of the Royal Astronomical Society "for his invention of an engine for calculating mathematical and astronomical tables".
From 1828 to 1839 Babbage was Lucasian professor of mathematics at Cambridge. He contributed largely to several scientific periodicals, and was instrumental in founding the Astronomical Society in 1820 and the Statistical Society in 1834. However, he dreamt of designing mechanical calculating machines.
... I was sitting in the rooms of the Analytical Society, at Cambridge, my head leaning forward on the table in a kind of dreamy mood, with a table of logarithms lying open before me. Another member, coming into the room, and seeing me half asleep, called out, "Well, Babbage, what are you dreaming about?" to which I replied "I am thinking that all these tables" (pointing to the logarithms) "might be calculated by machinery."
In 1837, responding to the official eight Bridgewater Treatises "On the Power, Wisdom and Goodness of God, as manifested in the Creation", he published his Ninth Bridgewater Treatise putting forward the thesis that God had the omnipotence and foresight to create as a divine legislator, making laws (or programs) which then produced species at the appropriate times, rather than continually interfering with ad hoc miracles each time a new species was required. The book is a work of natural theology. The book incorporated extracts from correspondence he had been having with John Herschel on the subject.
Charles Babbage also achieved notable results in cryptography. He broke Vigenère's autokey cipher as well as the much weaker cipher that is called Vigenère cipher today. The autokey cipher was generally called "the undecipherable cipher", though owing to popular confusion, many thought that the weaker polyalphabetic cipher was the "undecipherable" one. Babbage's discovery was used to aid English military campaigns, and was not published until several years later; as a result credit for the development was instead given to Friedrich Kasiski, who made the same discovery some years after Babbage.
Babbage also invented the pilot (also called a cow-catcher), the metal frame attached to the front of locomotives that clears the tracks of obstacles in 1838. He also performed several studies on Isambard Kingdom Brunel's Great Western Railway.
He only once endeavoured to enter public life, when, in 1832, he stood unsuccessfully for the borough of Finsbury. He came in last in the polls.
Babbage once counted all the broken panes of glass of a factory, publishing in 1857 a "Table of the Relative Frequency of the Causes of Breakage of Plate Glass Windows": 14 of 464 were caused by "drunken men, women or boys". His distaste for commoners ("the Mob") included writing "Observations of Street Nuisances" in 1864, as well as tallying up 165 "nuisances" over a period of 80 days; he especially hated street music. He was also obsessed with fire, once baking himself in an oven at 265oF (130oC) for four minutes "without any great discomfort" and to "see what would happen". Later, he arranged to be lowered into Mount Vesuvius in order to view molten lava for himself.
History of Programming Languages