Electronics Guide

Computer Industry Origins

The period from 1945 to 1960 witnessed the transformation of electronic computing from experimental laboratory projects into a commercial industry. What began as one-of-a-kind machines built for government agencies evolved into products manufactured for sale to businesses, universities, and government organizations worldwide. This era established the patterns of computer development, marketing, and use that would shape the industry for decades to come.

The transition from wartime computing projects to peacetime commercial products required solving problems that went far beyond electronics. Manufacturers had to develop reliable production methods for complex machines, create service and support organizations, and find customers willing to invest enormous sums in unproven technology. The pioneers who built this industry created not just computers but the entire ecosystem of programming, training, and services that made computers useful.

UNIVAC I: The First Commercial Computer

The Universal Automatic Computer, known as UNIVAC I, represented the transition from experimental computing machines to commercial products. Designed by J. Presper Eckert and John Mauchly, the team behind ENIAC, UNIVAC became the first computer manufactured for sale rather than built as a unique research project. Its delivery to the United States Census Bureau in March 1951 marked the beginning of the commercial computer era.

From ENIAC to Commercial Vision

Eckert and Mauchly recognized during ENIAC's development that electronic computing had commercial potential far beyond military applications. In 1946, they left the University of Pennsylvania to form the Electronic Control Company, later renamed the Eckert-Mauchly Computer Corporation. Their vision was ambitious: to design and manufacture computers for sale to organizations that could use them for business data processing, not just scientific calculation.

The business path proved difficult. The company struggled to find adequate financing while simultaneously developing revolutionary technology. A contract with the Census Bureau provided crucial early funding, but development costs consistently exceeded projections. Financial pressures eventually forced the sale of the company to Remington Rand in 1950, which provided the resources to complete UNIVAC development but ended Eckert and Mauchly's independent entrepreneurial venture.

Despite the business challenges, the technical work proceeded remarkably well. The UNIVAC design incorporated lessons learned from ENIAC and from the BINAC, a smaller computer the company had built for Northrop Aircraft. UNIVAC used mercury delay line memory, a technology that stored data as acoustic pulses traveling through tubes of liquid mercury. While somewhat exotic, this approach provided the large-capacity, relatively affordable storage that commercial applications required.

Delivery to the Census Bureau

The Census Bureau had long been interested in automated data processing. Herman Hollerith had invented punched card tabulating equipment specifically for the 1890 census, and the Bureau had used increasingly sophisticated punched card equipment ever since. By the late 1940s, Census officials recognized that electronic computing offered capabilities far beyond what punched card equipment could provide.

UNIVAC I Serial Number 1 was accepted by the Census Bureau on March 31, 1951, and formally dedicated on June 14, 1951, though Remington Rand retained the machine in Philadelphia for sales demonstrations and did not install it at Census Bureau offices until late 1952. The machine occupied a room-sized installation with the main processor, mercury delay line memory, tape drives, and power supplies, and used roughly 5,200 vacuum tubes. It could perform about 1,905 operations per second from a 2.25 MHz clock and had a main memory capacity of 1,000 words, each holding twelve six-bit characters, or eleven decimal digits and a sign. The complete system weighed roughly 13 metric tons and drew about 125 kilowatts, figures that were modest by the standards of ENIAC but revolutionary as a product that could be ordered from a catalog.

The Census Bureau used UNIVAC for processing the 1950 census data, which had been collected before the computer's delivery. The machine demonstrated its value by completing statistical analyses that would have taken years using punched card equipment. Census officials reported that UNIVAC could perform in a few minutes calculations that previously required weeks of labor. This tangible demonstration of computing value helped establish credibility for the emerging computer industry.

The 1952 Election Prediction

UNIVAC achieved widespread public recognition through its role in the 1952 presidential election broadcast. CBS News arranged to use a UNIVAC to predict the election outcome based on early returns. The computer, working from a small fraction of the vote, projected an Eisenhower landslide of roughly 438 electoral votes when conventional wisdom and pre-election polls suggested a close race. The final tally gave Eisenhower 442.

Initially, the CBS team doubted the computer's prediction and delayed reporting it, going on the air instead with a deliberately hedged projection. When later returns confirmed UNIVAC's accuracy, the network acknowledged the computer's correct early call. This highly publicized success introduced electronic computing to millions of Americans and established the image of computers as intelligent, almost magical machines capable of predictions beyond human capability.

The election broadcast was a masterwork of publicity, though the technical reality was somewhat more mundane. The actual calculations were relatively simple statistical projections that human analysts could have performed, albeit more slowly. Nevertheless, the dramatic demonstration of computer capability captured public imagination and helped create demand for computing services. The phrase "electronic brain," popularized during this era, reflected public fascination with machines that seemed to think.

UNIVAC Production and Sales

Remington Rand eventually installed 46 UNIVAC I systems, most of them by 1957, a commercial success by early computer standards. Customers included government agencies such as the Atomic Energy Commission and the Navy's David Taylor Model Basin, insurance companies, and large industrial corporations. Each installation represented a major investment, on the order of a million dollars for the machine alone, before peripheral equipment, site preparation, and ongoing support.

A milestone came in 1954, when General Electric placed a UNIVAC I at its Appliance Park complex in Louisville, Kentucky, and used it for payroll and related accounting work. This is generally counted as the first computer bought by a private American business for routine commercial data processing rather than for research or defense work, and it signaled that computing had become a line item in ordinary corporate budgets.

The customer base revealed the kinds of organizations that could benefit from early computing: those with large volumes of data processing work and the resources to invest in new technology. Insurance companies had to process millions of policy records. Large manufacturers needed to track inventory and production. Government agencies managed vast amounts of citizen data. These applications, which involved processing large files of relatively simple records, proved well-suited to UNIVAC's capabilities.

Remington Rand established a service organization to support UNIVAC installations. Field engineers maintained the hardware, which required constant attention given vacuum tube reliability issues. Systems analysts helped customers adapt their business procedures to computer processing. Programmers developed applications and trained customer personnel. This service infrastructure became essential to the computer business and established patterns that persist in the industry today.

IBM 701: Big Blue Enters Computing

International Business Machines Corporation, the dominant force in punched card data processing equipment, initially showed limited interest in electronic computers. IBM's leadership questioned whether electronic machines would prove reliable enough for business use and worried about cannibalizing their profitable tabulating equipment business. The Korean War changed this calculation, creating urgent demand for scientific computing that pulled IBM decisively into the computer market.

The Defense Calculator Project

IBM's 701, initially called the Defense Calculator, was designed primarily for scientific and engineering calculations rather than business data processing. The Korean War created demand for computations related to weapons design, logistics planning, and operations analysis that exceeded available computing capacity. Government agencies and defense contractors urgently needed more computing power than UNIVAC and a handful of other machines could provide.

Thomas Watson Jr., who was positioning himself to succeed his father as IBM's leader, championed the computer project. He recognized that IBM's future depended on participating in electronic computing, regardless of short-term impact on tabulating equipment sales. The project received substantial resources and high-level attention, enabling rapid development.

The 701 design emphasized speed and reliability over the programming convenience of UNIVAC's more sophisticated instruction set. The machine used electrostatic memory, storing data as patterns of electric charge on cathode ray tubes. This technology offered faster access than UNIVAC's mercury delay lines but proved more temperamental and required constant adjustment. An addition or subtraction took about 60 microseconds, or roughly 16,000 per second, and a multiplication or division about 456 microseconds, close to an order of magnitude faster than UNIVAC I.

Technical Characteristics

The 701 was a binary machine, storing and processing data as patterns of ones and zeros rather than the decimal representation UNIVAC used. This choice, which aligned with the mathematical nature of the machine's logical circuits, became standard for subsequent computers. The machine's word length of 36 bits provided good precision for scientific calculations, the primary intended application.

Memory capacity of 2,048 words in the basic configuration could be expanded to 4,096 words by adding Williams tubes or, on later installations, by substituting magnetic core, still modest but adequate for many scientific applications. Programs and data were loaded from magnetic tape, which IBM had developed for the 701 project. The IBM 726 tape unit recorded on half-inch plastic tape at 100 to 200 bits per inch, providing reliable secondary storage at densities far exceeding punched cards and establishing magnetic tape as the standard medium for computer data storage. An IBM 731 magnetic drum unit supplied intermediate storage between the electrostatic main memory and tape.

The 701 installation included not just the processor but an array of peripheral equipment: card readers and punches for input and output, a printer for human-readable results, magnetic tape drives for data storage, and a console for operator control. The complete installation occupied a significant space and required careful environmental control, establishing the pattern of dedicated computer rooms with specialized cooling and power systems.

Customer Installations and Applications

IBM installed 19 Model 701 systems between 1953 and 1955. Rather than sell the machines, IBM rented them, at roughly $12,000 a month for basic service and about $15,000 a month for a forty-hour operating shift, with additional shifts charged separately. Rental lowered the barrier to adoption, kept IBM responsible for maintenance, and gave the company recurring revenue, and it became the industry's dominant commercial model for the next two decades.

Customers were predominantly aerospace companies, government laboratories, and research institutions with scientific computing needs. Lockheed, Douglas Aircraft, Boeing, North American Aviation, General Electric, General Motors, the RAND Corporation, Los Alamos and Livermore, and the National Security Agency were among them. These installations typically ran around the clock, with programs prepared during the day executed during overnight shifts.

Applications ranged from aircraft structural analysis to nuclear weapons calculations to weather prediction. The 701 at the Weather Bureau's Joint Numerical Weather Prediction Unit demonstrated that computers could produce weather forecasts faster than the weather itself changed, a longstanding goal that had eluded earlier efforts. Defense contractors used 701 systems for missile trajectory calculations and radar system design.

The 701 customer base overlapped little with UNIVAC installations. While UNIVAC served business data processing applications, the 701 addressed scientific and engineering computation. This market segmentation would persist as the computer industry developed, with different machine designs optimized for different application categories. IBM would eventually address business computing with subsequent machines while maintaining strength in scientific computing.

IBM's Competitive Advantage

IBM brought formidable resources to the computer business. The company had extensive experience manufacturing complex electromechanical equipment and maintaining it in customer locations worldwide. IBM's sales organization was legendary for its customer relationships and service orientation. The company's financial strength allowed investment in development, manufacturing, and customer support that smaller competitors could not match.

Perhaps most importantly, IBM had deep relationships with business customers through decades of punched card equipment installations. These customers trusted IBM and were accustomed to the company's sales and service approach. When these organizations eventually adopted computers, many would turn naturally to IBM, even though the company had entered computing later than some competitors.

The 701 established IBM as a serious computer manufacturer and began the company's rise to industry dominance. While Remington Rand's UNIVAC had the early lead, IBM's resources and customer relationships would prove decisive in the long run. By the end of the 1950s, IBM had captured the majority of the computer market, a position it would maintain for decades.

Business Computer Development

While UNIVAC I and the IBM 701 represented the first generation of American commercial computers, parallel developments in Britain and competing products from IBM transformed computing from scientific curiosity to business necessity. The late 1950s saw computers move from research laboratories and defense installations into corporate data centers, where they automated payroll, inventory, and accounting functions that formed the backbone of business operations.

LEO: The World's First Business Computer

The Lyons Electronic Office, known as LEO, holds the distinction of being the first computer used for routine commercial business data processing. J. Lyons and Company, a British food and catering company, recognized computing's business potential even before commercial machines were available. Two senior managers, Oliver Standingford and Raymond Thompson, were sent to the United States in 1947 to study new business methods, returned convinced that electronic computing was the answer, and persuaded the board to build a machine of its own based on the EDSAC design from Cambridge University. Lyons even helped fund the EDSAC project, an unusual case of a catering company underwriting academic computer research.

LEO I ran a test program in February 1951 and executed its first business job, the bakery valuations, on 5 September 1951, taking the work over completely at the end of November. The valuation was a calculation of the daily distribution of bread and cakes to Lyons shops throughout England, determining what each shop should receive based on previous sales, special orders, and day-of-week patterns. This mundane application demonstrated that computers could handle routine business calculations, not just the exotic scientific problems that had motivated earlier development.

Lyons subsequently used LEO for payroll, inventory control, and other business applications, and sold spare machine time to outside organizations, an early form of computing as a service. The success of these applications convinced the company to form LEO Computers Ltd. in 1954 to manufacture and sell computers to other businesses. LEO II and LEO III followed, and the firm was merged into English Electric in 1963, contributing to a lineage that would eventually be consolidated into International Computers Limited.

LEO's significance extended beyond its specific applications. The project demonstrated that business users, not just scientists and engineers, could benefit from computing. It showed that data processing applications, which involved large volumes of relatively simple calculations on business records, were as important as the scientific calculations that had driven earlier development. This realization would shape the computer industry's evolution throughout the 1950s and beyond.

IBM 650: The Workhorse Computer

The IBM 650, announced in 1953 and first delivered in December 1954 to the John Hancock Mutual Life Insurance Company in Boston, became the most successful computer of the 1950s. Almost 2,000 were built before production ended in 1962, making it the first computer manufactured in genuine volume and, by most accounts, the first to earn IBM a meaningful profit. Designed as a smaller, more affordable machine than the 701, the 650 brought computing within reach of organizations that could not justify the expense of the largest systems. Its relative simplicity and IBM's extensive support organization made it accessible to users without deep technical expertise.

The 650 used a magnetic drum for main memory rather than the more expensive electrostatic or magnetic core memories of larger machines. The drum held 1,000, 2,000, or 4,000 signed ten-digit words depending on the model and spun at 12,500 revolutions per minute, giving an average access time of roughly 2.5 milliseconds. The processor could reach a given word only when it rotated past the read/write heads. This architecture was slower than random-access memory but far less expensive, making the 650 affordable for a broader market. Decimal arithmetic and a two-address instruction format, in which every instruction named both its operand and the drum location of the next instruction, kept the machine familiar to users of punched card equipment.

IBM priced the 650 aggressively, offering rental terms that many businesses could accommodate. Monthly rental in the range of $3,000 to $4,000 depending on configuration, while still substantial, was a fraction of the $12,000 to $15,000 a month that a 701 installation commanded. This pricing strategy, combined with IBM's marketing prowess and service organization, drove rapid adoption.

The 650's success established IBM's dominance in the computer market. The machine's installed base created a large community of trained programmers and users, making subsequent IBM systems easier to adopt. Universities used 650 systems for education, training a generation of programmers who became familiar with IBM equipment and software conventions. This educational role proved valuable as these programmers entered industry and influenced computer purchasing decisions.

Other Business Computing Pioneers

The late 1950s saw numerous manufacturers enter the business computer market, most of them established office equipment or electronics firms extending an existing customer base. Burroughs Corporation, with its long history of adding machines and accounting equipment, bought the ElectroData Corporation in 1956 and inherited its Datatron line. National Cash Register acquired Computer Research Corporation in 1953 and later fielded the transistorized NCR 304. Honeywell entered through Datamatic Corporation, a joint venture with Raytheon, whose Datamatic 1000 was delivered in 1957. RCA shipped the vacuum-tube BIZMAC in 1956 and then the RCA 501 in 1958, one of the first fully transistorized commercial computer systems. General Electric, working from a design that the Stanford Research Institute had developed for Bank of America, built the ERMA check-processing systems that automated demand deposit accounting and helped establish magnetic ink character recognition on bank checks.

These competitors faced the challenge of differentiating themselves from IBM's growing dominance. Some emphasized specific technical features; others focused on particular industries or applications. Burroughs pursued distinctive architectures, an approach that reached its fullest expression with the stack-oriented B5000 in 1961. RCA later chose compatibility as its weapon, building the Spectra 70 line of 1965 to run software written for the IBM System/360, but that strategy belonged to the following decade; in the 1950s, every manufacturer's machine required its own programs. Despite these efforts, IBM maintained its market leadership throughout the period, and the group of trailing competitors became known collectively, and not affectionately, as the seven dwarfs.

The emergence of multiple competitors established computing as an industry rather than a curiosity. Trade publications, professional associations, and user groups created an infrastructure of information and support. Standards began to emerge, though proprietary approaches still dominated. The patterns of competition, marketing, and customer relations that would characterize the computer industry for decades were established during this formative period.

Magnetic Core Memory

The invention and commercialization of magnetic core memory represented a fundamental advance in computer technology. Core memory provided the reliable, high-speed random access storage that made practical computing possible. Unlike earlier memory technologies that were slow, unreliable, or expensive, cores offered a combination of characteristics that made them the dominant memory technology for nearly two decades.

The Memory Problem

Early computers struggled with memory technology. Vacuum tube flip-flops could store data with fast access but were expensive and unreliable. Mercury delay lines, used in UNIVAC, provided reasonable capacity but sequential access that slowed programs requiring data from scattered locations. Electrostatic storage on cathode ray tubes, used in the IBM 701, offered random access but required constant adjustment and was sensitive to environmental conditions.

The ideal memory technology would offer random access (any location accessible as quickly as any other), non-volatility (data retained without power), reliability, reasonable cost, and adequate speed. No technology available in the late 1940s met all these requirements. The search for better memory technology became one of the central challenges of early computing.

Invention and Development

Jay Forrester at MIT led the development of magnetic core memory while working on the Whirlwind project, a computer designed for real-time aircraft simulation and later adapted for air defense. Forrester recognized that small rings of magnetic material could store binary data reliably: magnetized in one direction represented a one, magnetized in the opposite direction represented a zero. The challenge was developing practical ways to read and write data in arrays of thousands of tiny cores.

The solution involved threading wires through the cores in a grid pattern. A ferrite core switches only when the field applied to it exceeds a threshold, so driving half the necessary current down one X wire and half down one Y wire flips the single core at their intersection while leaving every other core on both wires undisturbed. This coincident-current selection scheme allowed large arrays to be addressed with a modest number of drive lines. A third sense wire threaded through every core on a plane detected the voltage pulse produced when a core reversed, and a fourth inhibit wire suppressed writing where a zero was wanted.

Reading was destructive: the act of sensing a core forced it to a known state, so every read had to be followed by a write-back cycle to restore the original value. This is why core specifications quote both an access time and a longer full cycle time. Forrester's team put core memory into the Whirlwind computer in 1953, replacing troublesome electrostatic storage, and the machine's reliability and speed improved so markedly that the technology was immediately recognized as transformational.

An Wang, working at the Harvard Computation Laboratory, had independently developed related magnetic memory concepts and filed a patent in 1949 for a pulse transfer controlling device that solved the read-and-restore problem. The resulting patent disputes complicated commercialization until IBM bought Wang's patent in 1956. Wang had already founded Wang Laboratories in 1951, and the proceeds helped finance a company that became a major force in calculators and word processing systems.

Commercialization and Impact

Core memory moved rapidly from laboratory demonstration to commercial product. The IBM 704, announced in 1954 and first delivered in 1955, was IBM's first production computer to use magnetic core in place of the Williams tubes of the 701, and IBM built 123 of them through 1960. IBM also offered core as a replacement for electrostatic storage in existing 701 installations. Core's advantages were immediately apparent: faster program execution, far fewer memory faults, and simpler programming because any location could be reached in the same time as any other.

Manufacturing core memory was labor-intensive. Each ferrite ring, no larger than a pinhead in later generations, had to be threaded with several wires by hand under magnification, work performed overwhelmingly by women and, as volumes rose, increasingly offshored to lower-wage regions. A single memory plane containing thousands of cores required hours of careful assembly. Despite the high manufacturing cost, core's performance and reliability advantages justified the expense, and cost per bit fell steadily as core sizes shrank and assembly techniques improved.

Core memory remained the dominant main memory technology until the mid-1970s, when semiconductor memory became cost-effective. The term "core" became so associated with computer memory that "core dump" and similar terminology persisted long after the technology itself became obsolete. Core's two-decade reign as the memory technology of choice enabled the computer industry's growth during its formative years.

Magnetic Drum Storage Systems

Before magnetic disk drives became economical, magnetic drums provided the primary random-access storage for many computer systems. Drums bridged the gap between the small, expensive main memory and the large, sequential-access magnetic tape storage, providing a balance of capacity, speed, and cost that made them essential to 1950s computing architecture.

Drum Technology and Operation

A magnetic drum consisted of a cylinder coated with magnetic material, rotating at high speed beneath fixed read/write heads. Data was stored as magnetic patterns in tracks around the drum's circumference. Unlike tape, which required winding to reach desired data, drums could access any track simply by selecting the appropriate head and waiting for the desired location to rotate past.

Access time depended on rotational position: if the desired data happened to be passing the head, access was essentially instantaneous, but if it had just passed, the processor had to wait for a complete rotation. This latency, typically measured in milliseconds, was far slower than main memory access but much faster than tape access. Drum capacity depended on the cylinder's size and the density of recording, ranging from thousands to millions of characters.

The IBM 650 exemplified drum-based architecture. The machine's main memory was the drum itself, with instructions and data stored in tracks that rotated past reading and writing stations. Programming the 650 efficiently required understanding drum rotation and arranging instructions so that the next needed instruction would arrive at the read head just as the processor was ready for it. This "optimum programming" was tedious but could dramatically improve performance.

Applications and Significance

Drums served various roles in different system architectures. In smaller systems like the IBM 650, the drum was the primary memory. In larger systems, drums provided intermediate storage between fast core memory and slow tape drives. Operating systems used drums for temporary storage of programs and data that might be needed quickly but were not in active use.

The development of drum technology contributed directly to the success of disk drives. Many of the engineering challenges, including recording density, head positioning, and motor speed control, were similar. Engineers who had worked on drum systems applied their experience to disk development at IBM's San Jose laboratory, which announced the 305 RAMAC in 1956. Its 350 disk storage unit stacked fifty rotating disks two feet in diameter and held roughly five million characters, reachable by a single moving access arm in well under a second. A drum's capacity was limited by the surface area of one cylinder; a disk stack multiplied that surface many times over within a comparable volume, and that geometric advantage decided the contest.

Random access changed application design as much as it changed hardware. Tape and card systems forced batch processing, in which transactions were accumulated, sorted into the same sequence as the master file, and then applied in one pass. Disk and drum storage made it possible to look up and update an individual record on demand, which is what inventory control, reservations, and account inquiry actually required. The airline and banking systems of the following decade rested on that capability.

Drums remained in use for specialized applications well after disks became the standard storage medium. Their high reliability and predictable access times made them suitable for real-time systems where timing was critical. Some drum designs could access all tracks simultaneously, providing high aggregate bandwidth for applications that could use parallel data streams.

Punched Card Equipment Evolution

The computer era did not immediately displace punched card equipment. Rather, cards became the primary medium for getting data into and out of computers, and punched card equipment evolved to serve this new role. The transition from standalone tabulating equipment to computer peripheral equipment was gradual, with many organizations operating both technologies side by side during the 1950s.

Cards as Computer Input/Output

Punched cards proved ideal as a computer input medium for several reasons. The existing installed base of keypunch equipment meant that data entry personnel and procedures were already established. Cards were reliable, tolerating the rough handling of mechanical processing. Each card represented a complete record, allowing sorting, organization, and correction before computer processing. And cards provided a permanent, human-readable (through printed information along the top) record of input data.

Computer output to cards allowed results to be processed by conventional tabulating equipment. An organization could use a computer for complex calculations while continuing to use sorters, collators, and tabulators for simpler operations. This hybrid approach eased the transition to computing and allowed organizations to adopt new technology incrementally rather than replacing their entire data processing infrastructure at once.

The card format itself was a competitive instrument. IBM's rectangular-hole, eighty-column card, standardized in 1928, held a customer's entire archive of records, and Remington Rand's rival ninety-column round-hole card was incompatible with it. Organizations with warehouses full of punched records did not switch formats lightly, and this inertia carried IBM's advantage forward into the computer era intact.

Card reader and punch equipment evolved to meet computer requirements. Readers attached to early systems handled on the order of 150 to 250 cards per minute, and by the end of the decade units such as the one supplied with the IBM 1401 read roughly 800 cards per minute. Reliability improved to match computer operating requirements. These devices became integral parts of computer systems, with manufacturers designing readers and punches specifically for computer applications rather than adapting standalone equipment.

The Gradual Transition

Many organizations operated punched card and computer equipment simultaneously throughout the 1950s and into the 1960s. Computers handled applications that justified their expense: complex calculations, large file processing, or time-sensitive operations. Conventional tabulating equipment continued to handle routine work that could be processed economically without computers.

This gradual transition allowed organizations to develop computer expertise while maintaining operational continuity. Programming staff could be trained and developed. Procedures could be refined. The risks of depending on new, potentially unreliable technology could be managed. This conservative approach to adoption, while sometimes criticized as slow, helped many organizations avoid the disruptions that could accompany rapid technology change.

IBM's position as the dominant supplier of both punched card equipment and computers gave the company significant advantages during this transition. Customers comfortable with IBM tabulating equipment naturally considered IBM computers. IBM's sales organization could guide customers through the transition, suggesting appropriate timing and applications. This continuity helped IBM maintain its market position as the industry evolved from electromechanical to electronic technology.

Programming Language Development

The first computers were programmed in machine code, the binary instructions that processors directly executed. This programming was tedious, error-prone, and required intimate knowledge of hardware details. The development of programming languages that allowed humans to express computations in more natural notation was essential to making computers practical for a broad range of applications and users.

Assembly Language and Assemblers

The first step beyond machine code was assembly language, which used symbolic names for operations and memory locations. Instead of writing binary codes, programmers could write "ADD A, B" to add two values. An assembler program would translate these symbolic instructions into machine code.

Assembly language greatly reduced programming errors and made programs easier to read and modify. Programmers no longer needed to track absolute memory addresses or to remember obscure numeric codes, and the assembler recalculated every address automatically when an instruction was inserted or removed, a change that had previously forced the hand-editing of an entire program. Symbolic labels, macros, and relocatable subroutine libraries followed, and with them the beginnings of reusable software.

Assembly language did not, however, make programs portable. Each symbolic instruction still corresponded to one machine operation, so a program written for one architecture had to be rewritten for another. Every computer required its own assembler with its own conventions and mnemonics, and programming expertise transferred poorly between machines. This limitation motivated the development of higher-level languages that would be more independent of specific hardware.

FORTRAN: Scientific Programming

FORTRAN (Formula Translation), developed by John Backus and his team at IBM, was the first widely successful high-level programming language. The project began in 1954, and the first compiler was delivered to IBM 704 customers in 1957. FORTRAN allowed programmers to write mathematical expressions in notation resembling standard algebraic formulas, and the compiler translated these expressions into efficient machine code.

FORTRAN's design reflected its scientific computing orientation. The language emphasized numerical computation, with powerful facilities for handling mathematical expressions, arrays, and input/output of numerical data. Features useful for business data processing, such as character string manipulation and decimal arithmetic, received less attention in early versions.

Critics initially doubted that compiled code could match the efficiency of hand-written assembly language, and on machines rented for thousands of dollars a month the objection was serious. Backus made optimization the project's central goal, and the resulting compiler performed common subexpression elimination, register allocation, and index-register optimization at a sophistication that would not be matched for years. The generated code rivaled what skilled programmers wrote by hand. This demonstrated that high-level languages need not sacrifice performance, a finding that encouraged further language development.

FORTRAN's success was transformational. Programming productivity increased dramatically as programmers could express complex calculations in a few lines of FORTRAN rather than dozens of assembly language instructions. Programs became more reliable because the compiler caught many errors automatically. Most importantly, scientists and engineers could learn to program without mastering the details of computer hardware, opening computing to a much larger community of users.

COBOL: Business Programming

While FORTRAN served scientific computing, business data processing required different capabilities. In May 1959, computer users and manufacturers met at the Pentagon and formed the Conference on Data Systems Languages, or CODASYL, whose Short Range Committee was charged with defining a language suited to business applications that would work across different computers. The committee completed its specification in December 1959, and the government printed it in 1960 as COBOL 60.

COBOL emphasized features important for business programming: handling of decimal numbers with exact precision, sophisticated file processing, and verbose English-like syntax that would make programs self-documenting. A COBOL program describing payroll calculations could be read and understood by business managers, not just technical programmers.

The COBOL effort involved unprecedented cooperation among competitors. Representatives from IBM, Remington Rand, RCA, Burroughs, Honeywell, Sylvania, and major users worked together to define the specification. Government pressure, including the understanding that federal procurement would favor machines offering COBOL, motivated participation. Grace Hopper served as a technical adviser to the effort, and her earlier work on the A-0 compiler and on FLOW-MATIC, an English-language data processing language written for the UNIVAC, supplied much of the design vocabulary that COBOL adopted.

COBOL's portability promise proved partially successful, and it was demonstrated early. In December 1960, essentially the same COBOL program was run on an RCA 501 and on a Remington Rand UNIVAC II, the first public proof that one source program could execute on machines from rival manufacturers. In practice, implementations still varied, and truly portable programs required careful attention to avoid manufacturer-specific extensions. Despite these limitations, COBOL became the dominant language for business programming and remains in service in banking, insurance, and government systems more than sixty years later.

Other Language Developments

FORTRAN and COBOL were the most commercially successful languages of the 1950s, but other significant developments occurred during this period. ALGOL (Algorithmic Language) emerged from European and American cooperation, appearing first as ALGOL 58 and then in the influential ALGOL 60 report. It saw limited commercial use in the United States, but it introduced block structure, lexical scoping, and recursion, and its formal grammar notation, later called Backus-Naur form, became the standard way to define a programming language. Nearly every major language since, from Pascal and C to Java, descends from it. LISP, developed by John McCarthy at MIT beginning in 1958 for artificial intelligence research, took the opposite approach, building everything from list structures and recursive functions and introducing automatic memory management through garbage collection.

The IBM 650 also supported interpretive systems such as the Bell Laboratories interpretive system and IT (Internal Translator), developed at Purdue and Carnegie Institute of Technology. These gave modest drum machines something resembling floating-point arithmetic and algebraic notation years before compilers became common, and they trained many of the programmers who would go on to use FORTRAN.

The proliferation of programming languages created both opportunities and challenges. Different languages suited different applications, allowing programmers to choose tools appropriate to their tasks. However, the variety complicated training, hiring, and the sharing of programs. Debates about language choice, often passionate, became a permanent feature of the computing profession.

Computer User Groups

As computer installations multiplied, users faced common challenges that individual sites could not efficiently address alone. User groups emerged as forums for sharing experiences, exchanging software, and presenting collective concerns to manufacturers. These organizations became important institutions in the developing computer industry, creating communities that advanced the practice of computing beyond what any single organization could achieve.

SHARE: IBM Scientific Users

SHARE, formed in 1955 by Los Angeles-area users of the IBM 701 and the 704 that succeeded it, was the first major computer user group. Its first meeting was held on 15 August 1955 at the RAND Corporation in Santa Monica. The organization's name reflected its founding purpose: sharing programs among installations to avoid duplicating development effort. Members contributed programs to a common library from which any member could draw, dramatically expanding the software available to each installation.

SHARE quickly evolved beyond program sharing. Working groups addressed common technical problems, developing standards and best practices that individual installations adopted. The organization became a channel for communicating user needs to IBM, with formal requirements presented at regular meetings. IBM took these inputs seriously, incorporating SHARE recommendations into product development.

The SHARE program library grew to include thousands of programs ranging from mathematical subroutines to complete applications. While quality varied, the library represented enormous accumulated programming effort that new installations could exploit rather than reproduce. The model of cooperative software development and sharing that SHARE established would influence computing practices for decades, eventually evolving into the open-source movement.

USE and Other Groups

Users of UNIVAC equipment formed USE (UNIVAC Scientific Exchange) as a counterpart to SHARE. Prospective users of the UNIVAC 1103A scientific computer, among them Boeing, Lockheed, Holloman Air Force Base, and Ramo-Wooldridge, met with Sperry Rand representatives in Los Angeles in December 1955 to establish it. Its standards, programming, and publications committees produced common coding formats for routines and subroutines and a shared compiler. Similar organizations emerged for other manufacturers' equipment, performing functions analogous to SHARE: program sharing, technical information exchange, and collective representation to manufacturers.

User group meetings became important events in the computing calendar. Technical papers presented at these meetings advanced the practice of programming and system operation. Informal networking allowed professionals to share experiences and job opportunities. The personal relationships formed at user group meetings created lasting professional networks that facilitated information flow throughout the industry.

Manufacturers recognized user groups as valuable resources, not just sources of criticism. The feedback from user groups helped identify product deficiencies and guide development priorities. The technical work performed by user group volunteers, such as developing programming standards or testing proposed features, reduced manufacturer development costs. The communities built around user groups increased customer loyalty and made switching to competitive products more difficult.

Professional Organizations

The growth of computing created demand for professional organizations that crossed manufacturer boundaries. The Association for Computing Machinery (ACM), founded in 1947, provided a forum for academic and technical exchange. Conference activity was coordinated by the National Joint Computer Committee, formed in 1951 by the ACM, the American Institute of Electrical Engineers, and the Institute of Radio Engineers, which ran the Eastern and Western Joint Computer Conferences through the 1950s. These meetings were where most significant new machines and techniques were first presented.

That structure was formalized after the period covered here. The American Federation of Information Processing Societies (AFIPS) was organized in 1961 as successor to the National Joint Computer Committee, took over the Joint Computer Conferences, represented American societies in the International Federation for Information Processing, and renamed its meeting the National Computer Conference in 1973.

These organizations published journals that disseminated research findings and practical techniques. They established professional standards and ethical guidelines. They provided identity and community for the growing population of computing professionals. The infrastructure of professional computing, still recognizable today, was largely established during the 1950s.

Academic Computer Installations

Universities played multiple roles in early computing: training the programmers and engineers the industry needed, conducting research that advanced computing technology, and applying computers to academic problems across many disciplines. The establishment of university computer installations created centers of expertise that influenced computing development far beyond academia.

Educational Mission

The computer industry's growth created urgent demand for trained personnel. Universities responded by developing curricula in programming, system operation, and computer engineering. Early courses were often taught by instructors who had learned on the job, without formal textbooks or established pedagogical approaches. The lack of standardization in hardware and software complicated education, as skills learned on one system might not transfer to another.

IBM's policy of providing discounts and support for educational installations proved strategically significant. Universities could obtain IBM equipment on favorable terms, exposing students to IBM products and practices. Graduates familiar with IBM equipment naturally preferred it when they entered industry and influenced purchasing decisions. This educational strategy contributed to IBM's market dominance, though it also genuinely advanced computing education.

Computer science as an academic discipline was still forming during this period. Some universities housed computing in electrical engineering departments, others in mathematics, and some in business schools. The interdisciplinary nature of computing, drawing on engineering, mathematics, logic, and increasingly the social sciences, complicated academic organization. The establishment of computer science as a distinct field would largely occur in the 1960s, building on foundations laid during the 1950s.

Research Computing

University computer installations supported research across many disciplines. Physicists used computers to analyze experimental data and simulate theoretical models. Chemists calculated molecular structures. Economists built models of economic behavior. Social scientists analyzed survey data. The computer became an essential research tool for any field involving significant computation or data analysis.

Some research concerned computing itself. University laboratories advanced programming language design, algorithm development, and computer architecture. The Massachusetts Institute of Technology became particularly influential, with projects ranging from time-sharing systems to artificial intelligence. Stanford, Carnegie Mellon, and other universities developed programs that would shape computing for decades.

Government funding, primarily from the Department of Defense through agencies like the Office of Naval Research and later ARPA (Advanced Research Projects Agency), supported much academic computing research. This funding relationship gave the military significant influence over research directions while enabling investigations that might not have occurred under purely commercial motivation. The results of government-funded research, including time-sharing systems, computer graphics, and networking technology, would eventually transform commercial computing.

Computing Centers and Operations

University computing typically centered on a computing center that housed the computer and managed its operation. Faculty and students submitted programs to the center, where professional operators ran them and returned results. This batch processing approach, necessitated by the expense and complexity of early computers, imposed significant constraints on how computing was used.

The computing center model created bottlenecks and frustrations. Turnaround time, from submitting a program to receiving results, might range from hours to days. A simple programming error could waste precious computer time and delay results further. These limitations motivated research into interactive computing, where users could work directly with computers rather than through intermediaries. Time-sharing, in which a single machine rotates rapidly among many users so that each appears to have it alone, was proposed at the end of the 1950s by Christopher Strachey in Britain and John McCarthy at MIT, but the first working systems arrived in the following decade, with MIT's Compatible Time-Sharing System demonstrated in 1961. The progression from batch processing to time-sharing and eventually to personal and cloud computing began with the frustrations of the 1950s computing center.

Computing centers also created professional communities. System programmers who maintained operating systems and compilers, operators who ran the machines, and consultants who helped users develop applications formed a specialized workforce with skills and perspectives distinct from both academic faculty and typical university staff. This technical workforce would play important roles in the subsequent development of computing.

The Foundation for Growth

The period from 1945 to 1960 established the foundations upon which the modern computer industry would be built. The technical advances, from magnetic core memory to high-level programming languages, solved problems that had limited earlier computing. The commercial infrastructure, from manufacturing capability to service organizations to user communities, created an industry capable of sustained growth. The human capital, trained programmers and engineers and experienced managers, provided the expertise the expanding industry required.

The period closed with the technology beneath the industry changing again. The transistor displaced the vacuum tube in commercial machines at the end of the 1950s, in systems such as the Philco Transac, the RCA 501, and IBM's 7090 and 1401. The IBM 1401, announced in 1959 and delivered from 1960, paired core memory with a fast chain printer at a rental many mid-sized firms could afford and went on to be installed in numbers exceeding ten thousand, an order of magnitude beyond anything in the vacuum tube era. Transistors cut power consumption, heat, and failure rates so sharply that the operational assumptions of the 1950s, the daily tube replacement and the room-sized air conditioning plant, ceased to apply.

Several patterns established during this period would persist for decades. IBM's market dominance, established through superior sales and service organizations as much as through technical innovation, would define industry structure through the antitrust suit the Justice Department filed in 1969 and abandoned in 1982, and would only be broken by the minicomputer and microprocessor waves that followed. The separation between scientific and business computing, visible in different machines and different programming languages, would continue to influence system design and software development until architectures such as the System/360 deliberately merged the two lines. The relationship between government funding and computing advancement, particularly strong in defense applications, would remain important throughout the Cold War and beyond.

The transformation from experimental technology to commercial industry was perhaps the most significant development of this period. By 1960, computers were no longer curiosities but essential tools for large organizations. The question was no longer whether to use computers but which computers to use and for what applications. This normalization of computing technology set the stage for the explosive growth that would characterize subsequent decades.

Summary

The origins of the computer industry in the post-war period transformed electronic computing from laboratory experiments into commercial products and essential business tools. UNIVAC I's delivery to the Census Bureau marked the beginning of commercial computing, while IBM's entry with the 701 and subsequent dominance with the 650 established competitive patterns that would persist for decades. British innovations, particularly the LEO business computer, demonstrated that computing could serve routine commercial applications as well as exotic scientific calculations.

Technical advances were equally significant. Magnetic core memory provided the reliable, fast random access storage that practical computing required, and held that position for two decades. Magnetic drums offered economical intermediate storage until the RAMAC disk file of 1956 showed how much further the same recording principles could be pushed. High-level programming languages, especially FORTRAN and COBOL, made programming accessible to larger communities of users and increased programmer productivity. These innovations solved the practical problems that had limited earlier computing systems.

The human and organizational infrastructure of computing also developed during this period. User groups created communities for sharing software and experience. Professional organizations established standards and provided forums for technical exchange. Universities trained the growing workforce the industry required while conducting research that advanced the field. By 1960, the foundations were in place for the rapid expansion of computing that would transform business, science, and eventually society as a whole.

Related Topics