A Continued History

This post looks set to at least begin by following on directly from my last one- that dealt with the story of computers up to Charles Babbage’s difference and analytical engines, whilst this one will try to follow the history along from there until as close to today as I can manage, hopefully getting in a few of the basics of the workings of these strange and wonderful machines.

After Babbage’s death as a relatively unknown and unloved mathematician in 1871, the progress of the science of computing continued to tick over. A Dublin accountant named Percy Ludgate, independently of Babbage’s work, did develop his own programmable, mechanical computer at the turn of the century, but his design fell into a similar degree of obscurity and hardly added anything new to the field. Mechanical calculators had become viable commercial enterprises, getting steadily cheaper and cheaper, and as technological exercises were becoming ever more sophisticated with the invention of the analogue computer. These were, basically a less programmable version of the difference engine- mechanical devices whose various cogs and wheels were so connected up that they would perform one specific mathematical function to a set of data. James Thomson in 1876 built the first, which could solve differential equations by integration (a fairly simple but undoubtedly tedious mathematical task), and later developments were widely used to collect military data and for solving problems concerning numbers too large to solve by human numerical methods. For a long time, analogue computers were considered the future of modern computing, but since they solved and modelled problems using physical phenomena rather than data they were restricted in capability to their original setup.

A perhaps more significant development came in the late 1880s, when an American named Herman Hollerith invented a method of machine-readable data storage in the form of cards punched with holes. These had been around for a while to act rather like programs, such as the holed-paper reels of a pianola or the punched cards used to automate the workings of a loom, but this was the first example of such devices being used to store data (although Babbage had theorised such an idea for the memory systems of his analytical engine). They were cheap, simple, could be both produced and read easily by a machine, and were even simple to dispose of. Hollerith’s team later went on to process the data of the 1890 US census, and would eventually become most of IBM. The pattern of holes on these cards could be ‘read’ by a mechanical device with a set of levers that would go through a hole if there was one present, turning the appropriate cogs to tell the machine to count up one. This system carried on being used right up until the 1980s on IBM systems, and could be argued to be the first programming language.

However, to see the story of the modern computer truly progress we must fast forward to the 1930s. Three interesting people and acheivements came to the fore here: in 1937 George Stibitz, and American working in Bell Labs, built an electromechanical calculator that was the first to process data digitally using on/off binary electrical signals, making it the first digital. In 1936, a bored German engineering student called Konrad Zuse dreamt up a method for processing his tedious design calculations automatically rather than by hand- to this end he devised the Z1, a table-sized calculator that could be programmed to a degree via perforated film and also operated in binary. His parts couldn’t be engineered well enough for it to ever work properly, but he kept at it to eventually build 3 more models and devise the first programming language. However, perhaps the most significant figure of 1930s computing was a young, homosexual, English maths genius called Alan Turing.

Turing’s first contribution to the computing world came in 1936, when he published a revolutionary paper showing that certain computing problems cannot be solved by one general algorithm. A key feature of this paper was his description of a ‘universal computer’, a machine capable of executing programs based on reading and manipulating a set of symbols on a strip of tape. The symbol on the tape currently being read would determine whether the machine would move up or down the strip, how far, and what it would change the symbol to, and Turing proved that one of these machines could replicate the behaviour of any computer algorithm- and since computers are just devices running algorithms, they can replicate any modern computer too. Thus, if a Turing machine (as they are now known) could theoretically solve a problem, then so could a general algorithm, and vice versa if it couldn’t. Not only that, but since modern computers cannot multi-task on the. These machines not only lay the foundations for computability and computation theory, on which nearly all of modern computing is built, but were also revolutionary as they were the first theorised to use the same medium for both data storage and programs, as nearly all modern computers do. This concept is known as a von Neumann architecture, after the man who first pointed out and explained this idea in response to Turing’s work.

Turing machines contributed one further, vital concept to modern computing- that of Turing-completeness. A Turing-complete system was defined as a single Turing machine (known as a Universal Turing machine) capable of replicating the behaviour of any other theoretically possible Turing machine, and thus any possible algorithm or computable sequence. Charles Babbage’s analytical engine would have fallen into that class had it ever been built, in part because it was capable of the ‘if X then do Y’ logical reasoning that characterises a computer rather than a calculator. Ensuring the Turing-completeness of a system is a key part of designing a computer system or programming language to ensure its versatility and that it is capable of performing all the tasks that could be required of it.

Turing’s work had laid the foundations for nearly all the theoretical science of modern computing- now all the world needed was machines capable of performing the practical side of things. However, in 1942 there was a war on, and Turing was being employed by the government’s code breaking unit at Bletchley Park, Buckinghamshire. They had already cracked the German’s Enigma code, but that had been a comparatively simple task since they knew the structure and internal layout of the Enigma machine. However, they were then faced by a new and more daunting prospect: the Lorenz cipher, encoded by an even more complex machine for which they had no blueprints. Turing’s genius, however, apparently knew no bounds, and his team eventually worked out its logical functioning. From this a method for deciphering it was formulated, but it required an iterative process that took hours of mind-numbing calculation to get a result out. A faster method of processing these messages was needed, and to this end an engineer named Tommy Flowers designed and built Colossus.

Colossus was a landmark of the computing world- the first electronic, digital, and partially programmable computer ever to exist. It’s mathematical operation was not highly sophisticated- it used vacuum tubes containing light emission and sensitive detection systems, all of which were state-of-the-art electronics at the time, to read the pattern of holes on a paper tape containing the encoded messages, and then compared these to another pattern of holes generated internally from a simulation of the Lorenz machine in different configurations. If there were enough similarities (the machine could obviously not get a precise matching since it didn’t know the original message content) it flagged up that setup as a potential one for the message’s encryption, which could then be tested, saving many hundreds of man-hours. But despite its inherent simplicity, its legacy is simply one of proving a point to the world- that electronic, programmable computers were both possible and viable bits of hardware, and paved the way for modern-day computing to develop.

Fist Pumping

Anyone see the Wimbledon final yesterday? If not, you missed out- great game of tennis, really competitive for the first two sets, and Roger Federer showing just why he is the greatest player of all time towards the end. Tough for Andy Murray after a long, hard tournament, but he did himself proud and as they say: form is temporary, class is permanent. And Federer has some class.

However, the reason I bring this up is not to extol the virtues of a tennis match again (I think my post following Murray’s loss at the Australian Open was enough for that), but because of a feature that, whilst not tennis-specific, appears to be something like home turf for it- the fist pump.

It’s a universally-recognised (from my experience anyway) expression of victory- the clenched fist, raised a little with the bent elbow, used to celebrate each point won, each small victory. It’s an almost laughably recognisable pattern in a tennis match, for whilst the loser of a point will invariably let their hand go limp by their side, or alternatively vent his or her frustration, the winner will almost always change their grip on the racket, and raise one clenched fist in a quiet, individual expression of triumph- or go ape-shit mental in the case of set or match wins.

So then, where does this symbol come from? Why, across the world, is the raised, clenched fist used in arenas ranging from sport to propaganda to warfare as a symbol of victory, be they small or world-changing? What is it that lies behind the fist pump?

Let us first consider the act of a clenched fist itself. Try it now. Go on- clench your fist, hard, maintaining a strong grip. See the knuckles stand out, sense the muscles bulge, feel the forearm stiffen. Now, try to maintain that position. Keep up that strong grip for 30 seconds, a minute, maybe two. After a while, you should feel your grip begin to loosen, almost subconsciously. Try to keep it tight if you can, but soon your forearm will start to ache, grip fading and loosening. It’s OK, you can let go now, but you see the point- maintaining a strong grip is hard old work. Thus, showing a strong grip is symbolic of still having energy, strength to continue, a sign that you are not beaten yet and can still keep on going. This is further accompanied by having the fist in a raised, rather than slack, position, requiring that little bit more effort. Demonstrating this symbol to an opponent after any small victory is almost a way of rubbing their noses in it, a way of saying that whilst they have been humbled, the victor can still keep on going, and is not finished yet.

Then there is the symbolism of the fist as a weapon. Just about every weapon in human history, bar those in Wild Wild West and bad martial arts films, requires the hands to operate it, and our most basic ones (club, sword, mace, axe etc.) all require a strong grip around a handle to use effectively. The fist itself is also, of course, a weapon of sorts in its own right. Although martial artists have taken the concept a stage further, the very origins of human fighting and warfare comes from basic swinging at one another with fists- and it is always the closed fists, using knuckles as the driving weapon, that are symbolic of true hand-to-hand fighting, despite the fact that the most famous martial arts move, the ‘karate chop’ (or knife-hand strike to give it its true name) requires an open hand. Either way, the symbolism and connection between the fist and weaponry/fighting means that the raised fist is representative not only of defiance, of fighting back,  standing tall and being strong against all the other could throw against them (the form in which it was used in large amounts in old Soviet propaganda), but also of dominance, representing the victor’s power and control over their defeated foe, further adding to the whole ‘rubbing their noses in it’ symbolism.

And then there is the position of the fist. Whilst the fist can be and is held in a variety of positions ranging from the full overhead to the low down clench on an extended arm, it is invariably raised slightly when clenched in victory. The movement may only be of a few centimetres, but its significance should not be underestimated- at the very least it brings the arm into a bent position. A bent arm position is the starting point for all punches and strikes, as it is very hard to get any sort of power from a bent arm, so the bending of the arm on the fist clench is once again a connection to the idea of the fist as a weapon. This is reinforced by the upwards motion being towards the face and upper body, as this is the principle target, and certainly the principle direction of movement (groin strikes excepted) in traditional fist fighting. Finally, we have the full lift, fists clenched and raised above the head in the moment of triumph. Here the symbolism is purely positional- the fists raised, especially when compared to the bent neck and hunched shoulders of the defeated compatriot, makes the victor seem bigger and more imposing, looming over his opponent and becoming overbearing and ‘above’ them.

The actual ‘pumping’ action of the fist pump, rarer than the unaccompanied clench,  adds its own effect, although in this case it is less symbolism and more naked emotion on show- not only passion for the moment, but also raw aggression to let one’s opponent know that not only are you up for this, but you are well ready and prepared to front up and challenge them on every level. But this symbolism could be considered to be perhaps for the uncivilised and overemotional, whereas the subtlest, calmest men may content themselves with the tiniest grin and a quick clench, conjuring up centuries of basic symbolism in one tiny, almost insignificant, act of victory.