Columbia University Computing History   
Translations  (see below for credits):
Farsi | فارسی   French | Français   German | Deutsch   Greek | Ελληνικά   Hebrew | עִברִית   Italian | Italiano   Polish | Polski   Romanian | Română   Russian | Русский   Serbian | Српски   Slovenian | Slovenščina   Spanish | Español  

The IBM Selective Sequence Electronic Calculator

Frank da Cruz
IBM's Selective Sequence Electronic Calculator (SSEC), built at IBM's Endicott facility under the direction of Columbia Professor Wallace Eckert and his Watson Scientific Computing Laboratory staff in 1946-47, shown here after it was moved to the new IBM Headquarters Building at 590 Madison Avenue in Manhattan [4], where it occupied the periphery of a room 60 feet long and 30 feet wide [42] (Herb Grosch [59] estimates the dimensions of its "U" shape at 60 + 40 + 80 feet, 180 feet in all, about half a football field!)


Visible along the wall in the background are three punches and thirty readers that form the paper-tape storage, with a large roll of tape above each punch. The paper tape was actually uncut IBM card stock, more than seven inches wide, weighing 400 pounds per roll [57, 59] (CLOSEUP). Along the left wall are banks of vacuum tube circuits for card reading and sequence control and 36 paper tape readers comprising the table-lookup section, many of them loaded with custom tape loops for commonly referenced data. Most of the panels along the right wall are occupied by the electronic arithmetic unit and storage. In the center of the room: card readers, card punches, printers, and (not visible) the operator's console.

SSEC "Designed, built, and placed in operation in only two years, the SSEC contained 21,400 relays and 12,500 vacuum tubes. It could operate indefinitely under control of its modifiable program. On the average, it performed 14-by-14 decimal multiplication in one-fiftieth of a second, division in one-thirtieth of a second, and addition or subtraction on ninteen-digit numbers in one-thirty-five-hundredth of second... For more than four years, the SSEC fulfilled the wish Watson had expressed at its dedication: that it would serve humanity by solving important problems of science. It enabled Wallace Eckert to publish a lunar ephemeris ... of greater accuracy than previously available... the source of data used in man's first landing on the moon" [4]. "For each position of the moon, the operations required for calculating and checking results totaled 11,000 additions and subtractions, 9,000 multiplications, and 2,000 table look-ups. Each equation to be solved required the evaluation of about 1,600 terms — altogether an impressive amount of arithmetic which the SSEC could polish off in seven minutes for the benefit of the spectators" [9].

SSEC console Control is accom­plished by means of written instructions, which the machine reads and follows. Typical commands are: • "Read a number from one of the reading units and store it in a given memory unit"; • "Take the number from a given memory unit, multiply it by the one in another unit, drop a specified number of digits from the answer, and deposit it in a third unit." [83].

New Yorker magazine cover, February 1961 The SSEC was visible to pedes­trians on the sidewalk, and inspired a generation of car­toon­ists to portray the computer as a series of wall-sized panels covered with lights, meters, dials, switches, and spinning rolls of tape (click image to enlarge). The SSEC ran at this location from January 1948 to July 1952, when it was replaced by the first-off-the-line 701, IBM's first "mass"-produced computer (i.e. more than one).

SSEC At the SSEC opening ceremony, 27 January 1948, Betsy Stewart [57] at the SSEC operator console. From left, standing behind the console: Robert R. "Rex" Seeber (SSEC chief architect) Columbia professor Wallace J. Eckert (project director), Thomas J. Watson (IBM president), and Frank E. Hamilton (chief engineer) [42].

Here's a view of the SSEC from the brochure given out at the opening ceremony, courtesy Herb Grosch:


"[Above is] the famous retouched photo of [the SSEC room]: Bill McClelland at the table-lookup unit [left], Betsy Stewart at the console, an engineer on the right. NO columns" [59]. CLICK HERE for an unretouched view.

Watson Senior, upon first viewing SSEC prior to the public unveiling: "There is just one thing," he said somewhat off-handedly. "The sweep of this room is hindered by those large black columns down the center. Have them removed before the ceremony." But since they supported the building, the columns stayed. Instead, the photo in the brochure handed out at the ceremony was carefully retouched to remove all traces of the offending columns [57].

SSEC floorplan Here are some additional images from Eckert's 1948 Scientific Monthly article [83] (click on each image for detail):
IBM SSEC printers
Arithmetic Unit
IBM SSEC arithmetic unit
Punched Tape
IBM SSEC punched tape
Program Card
IBM SSEC program card

And here are scans of two glass slides unearthed by Herb Grosch in April 2004 (click images for detail):
Table Lookup Unit
SSEC table lookup unit
SSEC People
SSEC people

Watson-signature plaque attached high on the limestone "frame" to the extreme right [59] (not visible in photo):
SSEC plaque

From a biography of John Backus, who was later to develop FORTRAN (among many other contributions):

During that spring [1949], Backus visited the IBM Computer Center on Madison Avenue, where he toured the Selective Sequence Electronic Calculator (SSEC), one of IBM's early electronic computers. While on the tour, Backus mentioned to the guide that he was looking for a job. She encouraged him to talk to the director of the project, and he was hired to work on the SSEC.

The SSEC was not a computer in the modern sense. It had no memory for software storage, and programs had to be entered on punched paper tape. It had thousands of electromechanical parts, making it unreliable and slow as well. Part of Backus's job was to attend the machine, and fix it when it would stop running. Programming the SSEC was also a challenge, as there was no set way of doing it.

Backus spent three years working on the SSEC, during which time he invented a program called Speedcoding. The program was the first to include a scaling factor, which allowed both large and small numbers to be easily stored and manipulated.

The SSEC was used for a variety of large-scale scientific calculations, including by Columbia Professors Eckert (astronomy), Thomas (physics), and Grosch (optics), all of Watson Lab. It was also the focus of one of the world's first Computer Science courses, offered beginning in 1946; here's the listing from a 1951 Columbia course catalog:

Astronomy 111 — Machine methods of scientific calculation, I.
2 to 4 points   Winter Session. Dr. ECKERT and assistants.
  M. 2:10-3.
  Laboratory hours to be arranged.
  The use of modern calculating machines in scientific research: keyboard calculators,
punched-card equipment, relay and electronic calculators, non-digital machines. Lectures,
demonstrations and laboratory work.

  Prerequisite or parallel: Engineering 281, and at least one other course listed in this
Announcement, or an equivalent. Permission of instructor required.

Astronomy 112 — Machine methods of scientific calculation, II.
2 to 4 points   Spring Session. Mr. SEEBER.
  Hours to be arranged.
  This course deals primarily with the Selective Sequence Electronic Calculator;
organization of the machine and the preparation of problems for it.

  Prerequisite: Astronomy 111,

The following photos are from a November 1952 article in Chemical Engineering describing L.H. Thomas's solution, on the SSEC, of the then-64-year-old problem of the stability of plane Poiseuille flow, based on an analytical solution to the problem suggested by John von Neumann, and programmed by Phyllis K. Brown and Donald A. Quarles, Jr., of Watson Lab. The calculation took 150 hours, compared to the 100 years that would have been needed for hand computation.

Working on the SSEC Pictured: Don Quarles (seated), L.H. Thomas (hovering), Phyllis Brown (seated).

Was the SSEC the First Stored-Program Computer?

The SSEC is often excluded from consideration as the first computer, or the first stored-program computer, because IBM did not call it a computer. According to Bashe [4,p.143] this was because Thomas J. Watson did not want to give the impression that he was building devices that would put people (human computers) out of work! (In 1951, in a series of five lectures about the new machines broadcast on the BBC, four of them used the term "automatic calculating machine"; only one, by Alan Turing, used the term "digital computer" [Jones reference below].)

Cambridge University's EDSAC (1949) or Manchester University's Baby (also 1949) are commonly cited as the first stored-program computers; that is, computers that could be controlled from a program stored in main random-access memory. But if SSEC was also a stored-program computer, it predated EDSAC by a year. Opinions differ as to its qualifications. In his 1958 Encyclopedia Americana article, Wallace Eckert said the SSEC "combined electronic speed of operation with large storage capacity (nearly a million digits principally in serial form) and facilities for completely flexible stored-program control. The random-access storage was on electromagnetic relays and the serial storage on very high-speed paper tapes. The calculator solved many large problems in celestial mechanics, hydrodynamics, geophysics, and atomic theory" [81]. Different authors voice different opinions. In fact, the SSEC was a hybrid device, capable of executing instructions from paper tape or storing them into its (admittedly rather small) relay memory and executing them from there; when doing that, it fit the definition of "von Neumann architecture". If von Neumann architecture is a critical element of the definition of "computer", then arguably the SSEC might be considered the world's first computer, even if it was also (as some say), a "bizarre hybrid incorporating vacuum tubes, relays, and paper-tape reader-punches" or a "giant publicity stunt of a machine". Proponents of the SSEC-as-first-computer view include Emerson Pugh [40] (computer historian), R. Morceau (1981 book, GET REFERENCE), as well as numerous computer-history websites. The abstract to Bashe's 1982 Annals article (see References just below) states:

The Selective Sequence Electronic Calculator (SSEC) was the first machine to combine electronic computation with a stored program, and the first machine capable of operating on its own instructions as data. When placed in operation in 1948, and for some time thereafter, it was the most flexible and powerful computer in existence. IBM published relatively little about it, and the SSEC has been largely overlooked by computer historians. This paper provides a historical setting for the SSEC.

John Backus [102] told me “I think it's an extreme stretch to consider it the first ‘stored program’ computer--even though one of the programs I did used some specially prepared storage cells as the source of an instruction after some data was stored in it.”  On the other hand, the SSEC's chief design engineer, A. Wayne Brooke, claimed (e.g. in his unpublished book manuscript, SSEC, The First Electronic Computer) that the SSEC was the first electronic computer because of its stored-memory capacity.  In April 2019, John Savard added:

As noted, the SSEC possessed several types of memory. It had a paper tape which could be punched and re-read for intermediate results of calculations. It had eight registers built from vacuum-tube flip-flops. Neither of those seems like a promising place to put a stored program.

But it also had 150 locations of relay memory. While setting locations in that memory is an electromechanical operation, detecting whether a current passes through a relay would not seem to involve such delays. Could placing a short loop in the relay memory allow the SSEC to operate at electronic speeds? Alas, not. Lacking anything similar to the coincident-current principle of core memory, the large number of locations in relay memory meant that its addressing also had to be done with relay logic, and thus reading a number, or instruction, from relay memory took 20 milliseconds, the same time as it took to read a number from paper tape (W. J. Eckert, "Electrons and Computation"[83]).

John also noted that "IBM's Early Computers"[4] yields that the program with which the SSEC was first demonstrated determined the sine of an angle by using an instruction that was modified; the reference is given as Phelps, 1980: apparently an interview.


Onsite Links:

Offsite Links
(all good as of 26 January 2019) [Thanks to Allan Olley for several of these]

Translations of this page courtesy of...

Language Link Date Translator Organization
German Deutsch 2019/02/05 Anonymous Word Art America
Farsi فارسی 2019/02/04 Anonymous 3 Piece Wall Art
French Français 2019/02/04 Anonymous Hootsuite Login
German Deutsch 2019/02/07 Anonymous Word Art America
Greek Ελληνικά 2019/02/08 Anonymous Canvas Prints Brisbane
Hebrew עִברִית 2019/02/08 Anonymous Canvas Prints Sydney
Italian Italiano 2019/02/08 Anonymous Personalized Soundwave Art
Polish Polski 2019/02/04 Anonymous Word Art Sydney
Romanian Română 2019/05/17 (anonymous) Essay Writing Services
Russian Русский 2019/11/04 Anna Clarke Essay Writing Services
Serbian Српски 2019/03/13 Бранка Фиагић / Branca Fiagić Универзитет у Београду / University of Belgrade
Slovenian Slovenščina 2019/03/27 Andrijana Savicević Univerzitet u Beogradu / University of Belgrade
Spanish Español 2019/02/08 Anonymous Gustav Klimt Prints

[About translations]    Page created: May 2003.  Most recent update: 4 November 2019

Columbia University Computing History Frank da Cruz / This page created: January 2001 Last update: 27 March 2021