By the beginning of 1946 two major purely electronic digital computers had been built, the ENIAC in the U.S.A. and the Colossus in the U.K. In addition there were a number of electro-mechanical machines in existence, notably the "Harvard Mark I", built at Harvard University under Howard H. Aiken, completed in 1943.
The first Colossus was designed and built at the Post Office Research Laboratories at Dollis Hill in North London in 1943, under Dr Tommy Flowers, for the code-breaking centre at Bletchley Park, to help in breaking the German Lorenz codes. In all 10 were built and they were extensively used in the last 16 months of the war in Europe. The Colossus operation at Bletchley Park was directed by M.H.A. (Max) Newman.
ENIAC was built at the Moore School of Electrical Engineering, at the University of Pennsylvania, Philadelphia, for the US Army's Ballistics Research Lab. It was first working (in secret) in 1945, and was unveiled to the public in February 1946. It was built under John W. Mauchly and J. Presper Eckert, and the team was joined in 1945 by John von Neumann.
Colossus was a highly specific machine, programmed rather than programmable. ENIAC was programmable, but a complete change of program could take days (no great problem given its original intended use). Neither machine had an effective random access memory that could work at electronic speeds, and (therefore) neither machine used the stored-program principle.
Colossus had relatively little direct impact on the evolution of computers. It was a highly secret operation, with its existence barely acknowledged for decades. There was no contemporary published material. Nearly all the machinery and documentation was destroyed immediately after the war. Its key contribution was that people closely involved, as they moved into civilian occupations, would have both a vision of future possibilities and useful practical experience.
Alan M. Turing, who published his now famous paper introducing the Turing Machine in 1937, made a key contribution in the period 1939 to 1942 to the work at Bletchley Park, not only on the theoretical side (for breaking both the Enigma and Lorenz codes), but also designing the "Bombe" to help in breaking the Enigma codes. Although he was not directly involved in the later (and very different) Colossus project, he acted as a consultant and was aware of what was happening. He saw that the addition of a stored-program capability to the speed of Colossus would create a practical realisation of his Universal Turing Machine. In 1945 he was asked to design ACE for the National Physical Laboratory (NPL), which was the first U.K. project to capitalise on the potential for a general-purpose computer as a result of the experience of Colossus. Turing completed an initial basic detailed design by the end of 1945, making a set of more advanced designs in the first half of 1946. He worked largely independent of outside influences, but the project stagnated for a couple of years, by which time Turing had left.
Max Newman moved to the University of Manchester as a professor in the Mathematics department, bringing two mathematicians from Bletchley Park with him, and in 1946 acquired a substantial grant to develop computers. He originally planned to build a computer using current US techniques and components, notably the ill-fated Selectron for his store. He would then use this to investigate uses of the computer, especially in pure mathematics. However his planned initiative was overtaken by the rapid progress of Freddie C. Williams and Tom Kilburn in the Electrical Engineering department, which culminated in the successful working of the "Baby" in June 1948. The work was effectively funded by TRE, and was led by Professor Williams, with Newman acting as consultant for programming and mathematical matters. Newman recruited Turing to his staff in September 1948, and from 1949 to 1951 Turing made a significant practical contribution on the software side to the continuing development of the Manchester Mark 1 and the Ferranti Mark 1. A further significant contribution from Newman and Turing was that they were enthusiastic early users of the Baby and Mark 1 for serious research (in Mathematics). In the end the first major call on Newman's grant was in October 1948 to pay Turing's salary and part of the salary bill for the new staff joining the Electrical Engineering department. The bulk of the grant was spent on the new computer building at the University, to house the first Ferranti Mark 1 in 1951.
ENIAC in contrast was central to the evolution of computers. It proved publicly that a large electronic digital machine was viable and useful. The need for an effective electronic random access store to make further progress was well understood -- but the means of achieving it seemed fraught with difficulty! In 1945 work was already in hand to design the successor to ENIAC, EDVAC. This would include an effective electronic Random Access Memory (well, nearly random access!) and the stored-program principle, i.e. the RAM would contain program as well as data, allowing for easy change of program and fast execution of programs. An early draft report was written by von Neumann, which resulted in the classic basic computer design being labelled the "von Neumann computer". (Sad as it is for joint pioneers, at least the public is grateful that it hasn't been known as e.g. the Mauchly-Eckert-von-Neumann computer -- or the Williams Tube as the Williams-Kilburn Tube!)
After a couple of years the design of EDVAC was finalised, and work started to build it. But the next key event was the Course at the Moore School "Theory and Techniques for the Design of Electronic Computers", given by inter alia Eckert, Mauchly, von Neumann, and Aiken, in July-August 1946. This was attended by a number of people from organisations interested in the potential of electronic computers, including two from the U.K., and it had a major impact in the US. Also it directly inspired one of the three major U.K. projects, the EDSAC under Maurice V. Wilkes at Cambridge University, which was closely based on the EDVAC design. A second U.K. project, the Manchester Mark 1, was not directly influenced by the lectures, but Freddie Williams, while visiting a number of places in the US in June 1946, saw the ENIAC, and he was impressed at the evidence that such a large electronic machine could be kept error free for long enough to make useful calculations. He was aware of the desperate need for an effective electronic storage system as the next step, and his decision to try and solve the storage problem using Cathode Ray Tubes led directly to the Baby and the Mark 1.
It is worth pointing out that if ENIAC had not existed (or had been kept top-secret like Colossus), then there would not have been any significant delay in computer evolution (except the weight of the US contribution might have been delayed a year or so). Turing almost certainly had the greatest theoretical understanding of computers and their future potential in the world. He well understood the concept of the stored-program. The reason he was capable of doing the detailed design for ACE is that he had set out in his last year or two at Bletchley Park to learn as much as he could about electronics, not only to assist in the portable speech-scrambling device he was working on, but because he saw in the electronic speed of Colossus the way forward towards his vision of the future. If the other developments had not been taking place publicly around the world the British Authorities might have been a bit slower initially in starting the project, but also there might not have been the two-year hiatus before NPL started to build (a cut down version of) Turing's design.
It is also quite possible that Williams could have had his interest sparked from the U.K. rather than the U.S.; in particular it is quite possible that he could have been co-opted by Newman. In any case the Manchester project owed very little directly to the ENIAC, the Moore School course or to the EDVAC report (except that the ENIAC satisfied Williams that electronic calculation on that scale was feasible, and he was aware that a suitable electronic store was essential to further development, with a CRT store being one of the less favoured ideas being floated). The detailed design of the EDVAC (and ACE) was of little use, based as it was on such a different store. Insofar as Williams and Kilburn needed external input on programming matters, by early 1947 Williams was in regular contact with Newman, who in turn was in touch with Turing, and Kilburn had attended Turing's NPL lectures on the ACE design. Newman had sent a member of staff to the Moore School lectures and had visited the U.S. in late 1946 looking for a suitable model to base his machine on, so he was generally well informed of progress on both sides of the Atlantic. Neither side was indispensable (so long as the other existed!)
Another machine which did not derive from the ENIAC, the EDVAC report or the Moore School course was the Australian CSIRAC, built under Maston Beard and Trevor Pearcey at the Radiophysics Laboratory in Sydney. This was inspired by Pearcey seeing the Harvard Mark I in 1945 and determining that he could do better with a fully electronic stored-programmed computer. This was developed with relatively little input from the outside world, using Delay Line store, and was first running test programs in late 1949, and was officially opened in 1951.
In 1946, when people were moving from general design of new computers to detailed design, the storage device that seemed most likely to be working first, as the basis for the all-important main electronic store, was the Mercury Acoustic Delay Line. This had a major disadvantage that it was not truly random-access, as you could only random-access a block of words at a time. If you wanted to access a particular word in the block, you had to wait until the particular string of bits cycled past. This spoilt the von Neumann principle somewhat, as the default of taking instructions from successive store locations would cause delays, so usually the instruction code of a Delay Line machine would provide a field to specify the address of the next instruction. It is likely that keeping things simple and avoiding this complication made a considerable contribution to Wilkes having the first machine with a Delay Line store working.
Because of the inherent disadvantage of the Delay Line stores, designers were looking towards electrostatic storage, where charge was controlled on the surface of a dielectric to provide an array of "bit positions" that could be held in one of two states indefinitely, but read and written at will. This provided random access to words in the store. One general class of electrostatic stores proposed was based on the Cathode Ray Tube, with the array of charges on the screen being powered by a scanning electron beam. F.C. (Freddie) Williams from the UK Telecommunications Research Establishment, TRE, came back from his trip to the States with the idea that he could built such a store based on the Cathode Ray Tubes he was so familiar with from his war work in radar. By November he had shown how to store a single digit, and by Autumn 1947, now at the University of Manchester, he and Tom Kilburn had demonstrated they could store 2048 bits for a number of hours on a standard CRT. The Williams-Kilburn CRT store (also known as the Williams Tube) was a fast, cheap and more compact system than the Mercury Acoustic Delay Line. And it was truly random access. However it was too late to be used by the machines already well into the detailed design stage, which would already be committed to the more complicated architecture forced by the ungainly Delay Lines.
An attempt was made starting in 1946 by RCA (the Radio Corporation of America) to construct an electrostatic store of a different class, the Selectron Tube. This was the storage von Neumann planned to use for the IAS computer at Princeton, which in turn was the computer Newman was planning to base his machine on. It was a true random-access store, but it used a totally different technique from the Williams-Kilburn CRT store. It was more like a multi-faceted vacuum tube, being powered by a continuous emission of electrons from a thermionic cathode on the axis of a cylinder holding the array of charged elements. This had the advantage over CRT-based stores that the screen would not need refreshing on a regular basis. However the design was very ambitious, and it was a long time before they got the mechanism to work, and the IAS computer had to be switched to using a Williams-Kilburn CRT store.
For the purposes of the following discussion it is convenient to use the modern term RAM to refer to a main electronic store, either electrostatic or Delay Line, which could be accessed at electronic speeds rather than electro-mechanical (e.g. electro-magnetic telephone relays), even though the Delay Line was not truly random-access.
Williams and Kilburn immediately wanted to develop a basic computer as the only way of fully testing their proposed storage mechanism. Tom Kilburn led the design and construction, and the "Small Scale Experimental Machine", the Manchester "Baby", was up and running by June 1948. Although small and primitive, it was the first working machine to have all the basic ingredients we would regard as essential to the von Neumann computer, in particular it had a true Random Access Memory and used the stored-program principle. The Baby so successfully demonstrated the effectiveness and potential of the von Neumann computer that Williams immediately embarked on developing the Baby into a full-sized usable machine, the Manchester Mark 1, and the U.K. government immediately contracted Ferranti Ltd. to build a commercial machine based on its design (whatever it would turn out to be!). (Note that although the Baby store was only 32 words of 32 bits on a single CRT, the design allowed for up to 8192 words, but it was not deemed worth adding more CRTs to the Baby rather than embarking immediately on the Manchester Mark 1.)
In the end the "race" to produce the first "proper" stored-program computer was "won" by the university projects in the U.K., at Manchester and Cambridge Universities. No doubt they had an advantage in that they could operate without governmental or commercial constraints. Cambridge had the advantage that they were using the EDVAC design as a starting point. Manchester had the advantage that although all their design was their own (accepting the general principle of the von Neumann computer), they were working with a simpler storage mechanism. All the Manchester construction was their own (though they were effectively "sponsored" by TRE), except that in the later stages of developing the Mark1 they had some help from Ferranti, who were already starting work on the commercial version, the Ferranti Mark 1. Cambridge had help in building the EDSAC from the J.C. Lyons & Co. Ltd., who later built the LEO 1 based on the EDSAC.
The EDSAC at Cambridge came on the air in May 1949, with a fully operational Delay Line store and paper tape input and output, and with an organised computing service planned, but with no backing store. The Manchester Mark 1 was a continuous evolution from the Baby, with sections being added or replaced over a period of time. It was not till around October 1949 that it was fully operational, with paper tape input-output, a fast magnetic random-access backing store (a "drum", nowadays the hard disc), and providing a basic computing service. However it was available for general use for other departments and Ferranti from April 1949, without paper tape input-output (you still had to key into store in binary, and read output from CRT displays in binary). But it did have a prototype drum working, though transfers to and from RAM had to be done by manual intervention from the keyboard; this was very useful for holding pre-prepared input, output, useful routines, and intermediary calculations during a long run. In June 1949 it recorded an error-free run of 9 hours working on Mersenne Primes.
It was always the aim of Maurice Wilkes' team at Cambridge (as it had originally been of Max Newman at Manchester) to get a computer built as quickly and easily as possible so that they could investigate the use of computers, and they can justifiably claim that they got the first "proper" stored-program computer up and running and providing a reasonable Computing Service, with a simple mnemonic programming language. Williams at Manchester, and his team of computer designers and builders, always had the major emphasis on the development of computer design, and users, although necessary and encouraged, were secondary. They were working on a more powerful and sophisticated machine, with a fast, random-access, integrated and programmable backing store, fully operational by October 1949. And there was considerable government pressure to get the Ferranti Mark 1, for which it was the prototype, into production for the national interest as fast as possible.
The two projects that were started before the Moore School course, EDVAC and ACE, and which might have been expected to be the first running, both encountered problems at various stages, and in the end were not completed until late 1951 and May 1950 respectively.
Meanwhile in the U.S.A. there was progress being made still in 1947-48 with electro-mechanical and non-stored-program machines, e.g. the Harvard Mark II, improvements to ENIAC, and by IBM -- SSEC and the IBM 604. All of these machines had some form of pseudo-stored-program capability, but not the ability to store a program in RAM. The Harvard Mark III, completed in September 1949 had no true RAM, but it did have magnetic drums which acted as the main store, and on which program as well as data was stored.
By 1950 true stored-program computers with later design starts than EDVAC were being completed, SEAC and SWAC built by the US National Bureau of Standards, and an early version of the Whirlwind built under Jay W. Forrester at MIT for the US Navy. SWAC and Whirlwind had CRT stores, though Forrester had already started work on the successor to Delay Line and Williams-Kilburn CRT stores, the magnetic core store, which was fitted to Whirlwind around 1952/53.
As early as August 1949, BINAC was completed, a computer for the US Air Force built by Eckert and Mauchly, who had broken away from the EDVAC project to form their own company. However this had significant reliability problems, ameliorated by having two identical processors working in tandem. They were also developing UNIVAC at the same time (see below).
It was not until 1951 that the first commercial production computers appeared. The first Ferranti Mark 1 was delivered in February 1951, closely based on the Manchester Mark 1. It was aimed at the scientific market rather than the commercial market, and had a fast magnetic drum store of 16,000 40-bit words. The first UNIVAC was accepted by the US Census Department in March 1951; this was the result of Mauchly and Eckert setting up their own company, by now taken over by Remington Rand, to design and build a computer for general commercial and industrial use. The UNIVAC had a Delay Line RAM and magnetic tape as backing store. In the autumn of 1951 LEO 1 was completed, the version of the EDSAC built by Lyons. This was originally intended purely for in-house use, to help in running their food and restaurant business, but it was so successful that they ended up building a succession of computers for general sale!
Surprisingly it was not till 1953 that IBM delivered its first stored-program computer, the IBM 701, using a Williams-Kilburn CRT store. They of course already had a large market in business machines and were unhappy in competing against it with the new technology.
John V. Atanasoff is officially credited in the US for inventing the electronic computer, in preference to Mauchly and Eckert, who designed ENIAC. Atanasoff and a graduate student Clifford Berry built a prototype in 1939 at Iowa State University, and built a more advanced machine, the Atanasoff-Berry Computer (ABC) in 1941. Atanasoff joined the war effort soon after and the computer never really got off the ground. However Mauchly visited Atanasoff at his house for a few days in 1941 with the aim of finding out all about ABC; he was shown ABC (already partly working) and he read but was not given a copy of Atanasoff's document describing the machine. In 1973, the patent of Mauchly and Eckert for the invention of the electronic computer was overturned in court in favour of Atanasoff.
Konrad Zuse designed a series of programmable calculators in Germany between 1938 and 1944. The first machine, the Z1, was purely mechanical, but he progressed with an increasing conversion to electrical and electro-mechanical components. He always worked in binary, and the first progression was to use a telephone relay for storing a bit rather than a steel pin that could be held in one of two positions. The last of the machines, the Z4, nearly complete in 1944, was developed after the war, still using relays for storage, and he formed a company which eventually sold around 300 machines, the first installed at ETH (the Federal Polytechnical Institute) in Zurich in 1950.
In contrast to Turing, Zuse arguably had the clearest practical understanding in the 1930s and 1940s of programmable computers and their short-to-medium term use.