It is anyone’s guess how far computer technology will advance. And as
software applications have become vital to virtually every aspect of modern
life, it is anyone’s guess how fully integrated technology will become
in modern living. Recent decades have rapidly evolved technologically, building
upon innovations of previous decades with greater speed than at any other time
in history. And speed is a primary reason for it. Since the Industrial Revolution,
humankind has sought ways to become ever more efficient in all realms of life
from production at the factory to cooking meals at home. Today the mediating
force between technology and humans is software.
Through machine code
instructions called programming languages, software allows individualized
access to the complicated interaction of input and output technology, memory,
and processing—that is, individualized control over the hardware components.
Electronic data management proved useful in its earliest commercial applications
such as employee payroll and airline reservations, but even the earliest
pioneers in software development could never have predicted the personal
computer and its full range of applications in the home. Software, though
ubiquitous now, was only a gradual emergence in the computer industry, and
it took individual contributions by a number of brilliant minds to evolve
into the products and services we take for granted today.
Software
Predecessors: Punch Cards and Manual Electrical Relays
Mechanical
methods of computation were forever changed by the advent of electronics,
and electronic computation was forever changed by the versatility that
software provided. The early problem in electronic computation was
in distinguishing among distinct numerical quantities. This problem
led to the development of an electronic pulse technique, or the simple
distinction between off and on, or 0 and 1: binary code (Glass 1998).
Before programs began to be written to make the most of electronic
computing power, the computer industry was dominated by engineers developing
hardware. The history of the computer industry extends at least as
far back as Edwin Howard Armstrong, who in the early twentieth century
improved radio transmission with a receiver called the “three-electrode
valve (or triode)…[that] was to be the seed of modern electronics,
computers and the Internet” (Evans 2004).
In the first
couple of decades of the twentieth century, three distinct entrepreneurial
forces combined to form the behemoth electronics and computer company
that has operated for nearly a century: International Business Machines
or, simply, IBM. First, the critically important punch-card tabulating
machine company of Herman Hollerith was absorbed by Charles Flint’s
Computer-Tabulating-Recording Company (CTR) in 1911. Second, Thomas
Watson, the man who would eventually transform CTR into IBM, cut
his teeth at John Patterson’s National Cash Register Company.
Patterson was an intense and distinguished salesperson who used rallying
slogans, an emphasis on sales and service, and technological innovation
to create “America’s first national sales force” (Evans
2004). And third, Watson’s unique ability to unite the divided
CTR combined with his sales and marketing experience helped him transform
the company through a focus on engineering and technology, such that
by the time of the New Deal, IBM was in the position to lead the
nation in mechanical computation products.
From the 1930s to
the 1950s, punch cards became the driving force of corporate America
as they were used in virtually every office accounting machine.
Software pioneer Raymond Houghton recalls the “punched little
rectangular holes in [decks of] cards” that were read by
computing machines without operating systems well into the 1960s
(Glass 1998). Cards were notated with programming languages such
as IBM’s FORTRAN (FORmula TRANslation) and the U.S. Department
of Defense’s COBOL (COmmon Business Oriented Language) and
they combined coded instruction sets such as compilers and assemblers
to try to make computing more efficient. Compilers “automated
the process of selecting and reusing code to create programs” while
assemblers were “program[s] that translated between a more
recognizable assembly notation and machine code” (Yost 2005).
These slow, sometimes unreliable language-programming methods were
basically analogue precursors to digital software programming techniques.
With
pressure from emerging competitors in the field, Thomas Watson
steered his company into electronics and hired new engineers en
masse to develop IBM’s own mainframe calculating machines.
The early massive mainframe computation machines were composed
of tons of steel and glass, hundreds of thousands of parts, and
thousands of vacuum tubes and clunky relays. Early electronic
relays, such as those on the University of Pennsylvania’s
Pentagon-sponsored Electronic Numerical Integrator and Computer
(ENIAC), had to be manually plugged and unplugged individually
according the specific computations being programmed. His son
Thomas Watson, Jr. later observed ENIAC in action and was not
convinced such immense, unreliable machines could ever be useful
in business applications. Yet he would eventually lead IBM into
a dominating position in the computer industry as mainframes
evolved and software became a codependent but independent field.
At
the time, however, ENIAC’s designers got the attention
of Prudential Insurance (a major client of punch-card technology
that was finding it increasingly difficult to store millions
of programming and archived cards) and the U.S. Census Bureau
when they proposed digital computation with magnetic tape technology
for storage. According to Paul E. Ceruzzi of the Smithsonian,
this step was the critical one leading to development of programming “as
something both separate from and as important as hardware design” (Evans
2004). In the 1950s, computer hardware technology improved
with the development of magnetic-core memory, transistorized
circuits instead of vacuum tubes, and random-access storage.
Software programs were needed to manage such complex needs
like that of the growing airline industry, which handled the
massive “flow of bookings, cancellations, seat assignments,
availability of seats, [and] connecting flights” among
other such “complications.” The need for computer
software was becoming painfully evident (Evans 2004).
Birth
of “Software” and the Interactive Minicomputer
According
to Jeffery R. Yost, the term “software” was
created in the late 1950s and was soon adopted throughout
the industry (2005). Coined by statistician John Tukey,
the term became a catchall, user-friendly term for the
work of computer programmers who were using terminology
ranging from “computer program” to “code.” The
America Heritage New Dictionary of Cultural Literacy describes
software as “[t]he programs and instructions that
run a computer, as opposed to the actual physical machinery
and devices that compose the hardware.” Meanwhile, The
Free On-Line Dictionary of Computing adds that software
is divided into two primary types: system software and
program applications. System software includes general
program execution processes such as compilers and, most
recognizably, the disk operating system (DOS), which
has evolved in form in IBM PC-style computers within
the last two decades from the ubiquitous Microsoft DOS
prompt (MS-DOS) to stylish Windows-based platforms from
Microsoft 2000 to Windows Vista. Similarly, Apple has
seen countless new releases from the Apple DOS 3.1 of
1977 to the OS X series of recent years. Program applications
include everything else, from gaming to multimedia to
scientific applications. Finally, software combines lines
of source code written by humans with the work of compilers
and assemblers in executing machine code (Dictionary.com).
At
the Massachusetts Institute of Technology in 1955,
a project called TX-O was given to Ken Olsen. The project
hoped to develop smaller research computers out of
tiny, powerful transistor technology. MIT programmer
Wesley Clark designed the TX-O and with Olsen’s
methodical and persistent management helped develop
the foundation of Olsen’s dream: “a reliable
computer…accessible by one person, inexpensive
and low powered, but…compact, fast, and exciting” (Evans
2004). After MIT, Olsen and his assistant Harlan Anderson
obtained venture capital to found the Digital Equipment
Corporation (DEC) to develop interactive minicomputers
to sell on the open market. Computer models such as
DEC’s Programmed Data Processor series used a
concept called “open architecture” to allow
personalized software to run everything from submarines
to refineries to neon displays at Times Square. DEC
used the millions of dollars gained by going public
in 1966 to enter into the field of networking by developing “standardized
technologies and communication protocols.” IBM
machines didn’t have the networking capacity
other companies had begun to develop, resulting in
the loss of most of its market share. It re-entered
the playing field in 1976 by developing minicomputers
of its own, entering into a field that so many had
not believed in: the personal computer (Evans 2004).
Advanced
Hardware for Complex Applications
As
early as 1939, scientists such as William Shockley
theorized that diminutive semiconductors would
replace vacuum tubes. Indeed, all of modern electronics
is based on Shockley’s ideas. Semiconductors
can handle electronic pulses at the rate of billions
of times per second, instead of the 10,000-times-persecond
speed of the clunky and precarious vacuum tubes.
Fairchild Semiconductor entered the market to
compete with Shockley Semiconductor, and soon
Fairchild became known for an innovation in semiconductors
that is now familiar around the world: the use
of silicon.
Silicon, “a commonplace
mineral that constitutes 90 percent of the
earth’s surface” was first used
by Fairchild for U.S. Air Force rockets in
transistors that needed to withstand intense
heat. Additional elements were combined with
silicon on flattened transistors to create
the first integrated circuits capable of handling
multiple devices and increasingly complex software
applications. “Silicon Valley” was
born as innumerable high-tech companies emerged
on the scene, congregating in at the southern
end of California's San Francisco Bay area.
Perhaps most notably, Integrated Electronics,
or Intel, was founded and new advances in memory
chips and microprocessors allowed computers
to handle software light years more complex
than the single mathematical computations of
the original mainframes (Evans 2004).
The Innovators of the Digital Age
Microsoft's MS-DOS was directly modeled on a now lesser-known operating
system called CP/M that was developed by University of Washington graduate
Gary Kildall’s Digital Research (DRI). Kildall’s work was essential
to Bill Gates and Microsoft (which was originally founded to sell the Beginners’ All-Purpose
Symbolic Instruction Code (BASIC) programming language interpreter for hobbyists
to write their own programs), but so were the early personal computer developments
of Apple and its subsequent graphical user interface (GUI) that preceded Windows.
It is Kildall’s work, nevertheless, that truly shaped Microsoft and much
about modern computing. Evans theorizes that had Kildall had his way, the personal
computer industry would have had access to multitasking windows-style platforms
much sooner and the entire industry would be much more advanced today. Still,
Kildall is attributed with the ideas that were “the genesis of the whole
third-party software industry” (2004).
Gary Kildall’s style
of programming helped drive the transition from mechanical computing into
digital computing. Kildall developed open language programming years before
IBM’s PC, and a number of months before Apple. In short, before microcomputers
even existed, Kildall authored a programming language “for a microcomputer
operating system and the first floppy disk operating system” (Evans
2004). Intel’s microprocessors were already running everything from
microwaves to watches, but Kildall imagined them in home computers running
software that would drive networks and wouldn’t be bogged down by hardware
compatibility issues. His Programming Language for Microcomputers (PL/M)
evolved into the Control Program for Microcomputers (CP/M), which contained
the first PC prompt, wherein Kildall could open and store files in directories--work
that is now down seemingly automatically as users click-and-drag files through
virtual space on the computer desktop.
Next, Kildall’s basic
input/output system (BIOS) could be easily changed by programmers to adapt
to their specific hardware. Kildall’s software advancements were
easily adapted into clone systems, though Kildall had largely retained
licensing rights to his software through encoded copyright and encryption
techniques. One operating system, however, Tim Patterson’s DOS, or
the Quick ’n’ Dirty Operating System (QDOS), was developed
for Rod Brock’s Seattle Computer Products. QDOS, according to Evans, “was
yet another one of the rip-offs of the CP/M design” that would not
have necessarily mattered had IBM’s business arrangements not aligned
with those of Bill Gates. Spurred by the success of Steve Jobs and Steve
Wozniak’s Apple products from the late 1970s and 1980s, IBM entered
the field of microcomputers. Bill Gates seized the opportunity of Kildall’s
delayed CP/M-86 (being designed for the faster Intel chip IBM had decided
upon) and purchased Patterson’s operating system in order to strike
a deal (2004).
The trouble was, Kildall had already made arrangements
with IBM and he thought he had successfully negotiated CP/M a share of
the market upon the release of IBM’s new personal computer in 1981.
But the final price point of CP/M was six times that of Microsoft’s
PC-DOS, effectively flushing CP/M out of the market. Kildall had been
betrayed. Ironically, only Kildall knew the limitations of CP/M and PC-DOS.
His intentions for multitasking operating software would have revolutionized
the industry at that time, but the IBM-Microsoft partnership dominated
the American market and they evolved at their own pace. Meanwhile, Kildall
kept his operation afloat with his European offices, which embraced the
multitasking capacities of his MP/M OS.
While Kildall went on to
innovate in areas from CD-ROMs to computer networking, DRI combined
the graphic display technology of Atari with the expertise of former
Microsoft programmer Kay Nishi and cloned the single-tasking MS-DOS
with their DR-DOS. Upon entering the market, DR-DOS not only drove
down Microsoft’s price point, but also fixed a number of MS-DOS
bugs. This move helped lead to Novell’s acquisition of DRI in
1991 for $120 million. Gates missed the opportunity to acquire DRI
for $10 million a few years earlier but, oddly enough, his investment
in the ideas of Steve Jobs in 1996 helped Apple enter successful new
fields of digital innovation such as the iPod and music downloading
software, a field that, of course, Microsoft soon entered. Perhaps
most importantly, Microsoft proved the power of owning the operating
system. After years of working with IBM as the provider of the software
for their hardware, Microsoft surpassed IBM (Evans 2004).
From
Personal to Global Network: the World Wide Web
Early
computer networking technology was commercialized especially
for use in corporations or other large organizations. Local area
networks (LANs) allowed both the internal exchange of information
and the sharing of peripheral devices such as expensive printers.
Educational institutions were especially likely to take advantage
of personal computing, but through the 1980s individuals were
snapping up computers for home use at an ever-increasing rate.
The early computer hobbyists who facilitated the expansion of
the industry into one that made software applications both desirable
and accessible to broader audiences now saw these standalone
tools become centers for information and communication. Computer
software has become integral in virtually every industry from
drafting software for architects to editing software for filmmakers
and everything in-between. Data and word processing aside, software
has quickly evolved from videodiscs and CD-ROMs containing entire
encyclopedias to Internet browsing software allowing access to
entire networks of libraries.
LANs evolved into WANs (wide
area networks) and as multiple-linked local area networks expanded,
particular among universities, the seeds for the Internet sprouted
(Yost 2005). With Internet Service Providers (ISPs), the computer
became larger than the little box in which it was contained.
Browsing software such as Netscape’s Navigator (written
by Marc Andreessen and Eric Bina in 1993, and now owned by
AOL), Microsoft’s Internet Explorer, and Mozilla’s
Firefox became the means for connecting to a digitized multimedia
world now largely powered by Google,
which daily guides hundreds of millions of users through billions
of pages on the World Wide Web.
The World Wide Web all
began with Sir Tim Berners-Lee’s fusion of the U.S.
Defense Department’s Internet, which linked research
centers, and hypertext, which allows quick navigation among
documents. The now ubiquitous tools of the Internet devised
by Berners-Lee include HTML (HyperText Markup Language, the
language of Internet formatting code), communication protocols
(called HyperText Transfer protocols or HTTP), and individually
accessible Web addresses (called Uniform Resource Locators
or URLs). Most importantly, Berners-Lee made “the Web
a decentralized network” that could be accessed and
contributed to by anyone with a connection (Evans 2004).
Software, once an esoteric sparkle in the hardware engineer’s
eye, has been democratized, and its applications in the modern,
digital world seem infinite.
-- Posted June 26, 2008
References
Evans, Harold. 2004. They Made America. New York, NY: Little, Brown and Company.
Glass, Robert L. 1998. In the Beginning: Recollections of Software Pioneers. Los Alamitos, CA: IEEE Computer Society Press.
software. Dictionary.com. American Heritage New Dictionary of Cultural Literacy, Third Edition. Houghton Mifflin Company, 2005. Accessed: May 20, 2008.
----. ----. Free On-line Dictionary of Computing. Denis Howe. Accessed: May 20, 2008.
Yost, Jeffrey R. 2005. The Computer Industry. Westport, CT: Greenwood Press.