Visicalc Welcome to the first episode of Retro Tech Bytes, where we take a look at the history of
a piece of software or hardware that was either historically significant or just
has an interesting story attached to it. Today we will be looking at the history of
the very first personal computer spreadsheet, VisiCalc. And for that, we need to go all
the way back to fall of 1977 at the Harvard Business School where a first year student has
just encountered an incredibly tedious task. Dan Bricklin had been a programmer for about four
years, both as an employee of Digital Equipment Corporation, a major player in the minicomputer
computing world of the 1970s as well as for himself as an independent software developer.
However by 1977, Bricklin felt that programming was actually getting to be so easy that he would
be out of a job in the future if he didn’t do a career switch[a]. As hard as it is to imagine
this now, in the 1970s higher level programming languages like COBOL, FORTRAN, and Smalltalk
had brought a new accessibility to programming, especially when compared to the programming
world of the 1950s and early 1960s. Given the comparatively greatly reduced barriers to
entry, Bricklin felt that the world would soon have a marked oversupply of programmers, and
so he decided to enroll in the Harvard Business School and get his MBA in preparation
for a new career in the business world. As a fresh MBA student in fall of 1977, Bricklin’s
production professor introduced him to production planning using a matrix that could easily span
multiple blackboards across multiple rooms. This matrix of rows and columns was used to create
what-if scenarios, where changing the value in one cell; for example employee wages; sent changes
rippling across all related cells. This was great for modeling various business cases, and was
a fairly common business tool at the time, but it was also a brutally tedious one as every change
in a cell had to be manually recalculated by hand. True, there were fairly cheap calculators around
by the late 1970s but each calculation still had to be manually punched in, worked through,
and handwritten over an erased value on the blackboard. Since a single change in a cell could
ripple like a mathematical wave across dozens of other cells, large financial models could require
hours or even days to recalculate. And of course, any mistake by the human doing the calculation
or any missed cells that were linked to other cells would affect all other related
calculations and be difficult to track down. Bricklin wasn’t impressed by the thought of
wasting large chunks of his professional life on these boring, repetitive, error prone
calculations. In his book “Bricklin on Technology” he cites a paper he wrote in late
1978 for an advertising class that gives some insight into his thoughts at the time, stating
that after spending hours working on homework calculations he would “invariably find that
one of [my] initial calculations was in error, invalidating all of the numbers that
followed it.” As a professional programmer, his thoughts naturally turned to, as he put it
“If only I had a magic piece of paper where I could change a number at the beginning of a set
of calculations, and have all of the other numbers automatically recompute themselves...If only I
had an electronic spreadsheet.” and he started thinking about using one of the new personal
computers to do these calculations automatically. This was not necessarily an obvious
idea, in 1978 there were only about two hundred thousand personal computers worldwide.
The world’s first significant personal computer, the Altair 8800, had only come out three
years previously and the heavy hitters of the Commodore Pet, TRS-80, and Apple
II had just come out the previous year and were still gaining traction. The Apple II
in particular was lagging the other two systems, having only sold about 20,000 units in 1978.
Mainframes were embedded in companies large and small, but they were largely used
for things like inventory management, payroll processing, and things of a
similar nature, frequently batch related. Financial software did exist, including packages
like Foresight and Business Planning Language, but these were more time share focused, were not
really interactive, required considerable training to use, and were solely used on mainframes
designed to service many simultaneous users. According to one source “Spreadsheet-type
applications were readily available on mainframes and time-sharing computers (usually in
the form of financial modeling packages), but the lack of interactivity limited their usefulness.”
They were primarily tools requiring professional support to use and they were frequently not real
time. Additionally the timesharing systems cost hundreds or even thousands of dollars a month
in fees to access, further limiting their reach and usefulness. The name “spreadsheet”
did exist, although it typically referred to the physical matrix based financial models
that Bricklin saw at Harvard Business School. The lack of interactivity in systems such
as the pioneering LANPAR system from 1969 greatly limited their usefulness since there
was no easy way to sit in front of a computer screen and start playing with various financial
scenarios in real-time. Additionally, given that all existing spreadsheet type applications ran
on expensive mainframes they were not widely available to an individual but were rather
more the domain of large businesses. However the new personal computers were orders
of magnitude cheaper than these systems, and Bricklin realized that the demands of an
electronic spreadsheet could be handled by even their far slower processors. A spreadsheet after
all is not a terribly complex system, at least not in its most basic form, it is an excellent example
of a tedious task that is easily computerized. What Bricklin was envisioning was an easy to use
spreadsheet that was customized for a single user, running in real time on a comparatively
inexpensive personal computer. His program could not only be used for running
a small business’s finances but also for an individual who just wanted to keep track of
their monthly budget. Bricklin originally imagined his electronic spreadsheet
as part of a heads up display where he “could see the virtual image hanging in the air in
front of me. I could just move my mouse/keyboard calculator around on the table, punch in
a few numbers, circle them to get the sum, do some calculations and answer ‘10% will be
fine!’” Bricklin quickly refined this imaginative vision down to something that could realistically
be achieved by a 1 MHz processor with 32k of RAM. Bricklin received encouragement from some of
his teachers, as both his production professor and his accounting professor loved the concept,
although his finance professor did not agree, telling Bricklin that there were already plenty
of sophisticated financial analysis programs available for mainframes and that there was no
room for a little one that ran on a personal computer. However this professor did suggest
that Bricklin talk to a former student of his, Dan Fylstra, who had been exploring the
possibilities of selling software to the personal computer market, and had cofounded a
small software publishing company called Personal Software after graduating from Harvard Business
school with his own MBA in 1977. Personal Software was a pioneer in the early personal computer
software market, and was doing quite well, thanks to an early chess program called MicroChess
created by its other cofounder, Peter Jennings. Bricklin originally created a very rough
prototype of VisiCalc in early 1978, written entirely in BASIC on Harvard’s timesharing
system. It primarily served to help him flesh out the concept further. This is where some sources
tend to mix up Bricklin’s first prototype, created in early 1978 on the time sharing system
in BASIC, and his second prototype, which he did in Apple BASIC on a borrowed Apple II in the fall
of 1978. The first prototype on the timesharing system helped him refine the idea and matrix
interface and how the cells would be addressed, the second one on the Apple II helped him work
out things like how navigation would work. Bricklin had originally hoped to use a mouse
to control things, since he was aware of the pioneering work done by Douglas Engelbert and
Xerox PARC, but this was unfortunately not possible on a 1978 era Apple II, which wouldn’t
see a mouse until a prototype of a mouse and graphical user interface was created by Bill
Budge, Burrell Smith,and Andy Hertzfield in 1981, later released in 1982. Four years away from a
viable Apple II mouse, Bricklin’s next idea was to use the Apple II’s game paddles to hop from cell
to cell, but he found them to be too sluggish and imprecise for the fast navigation that he wanted,
so he eventually went with using the arrow keys. One wrinkle was that the Apple II did not have
up and down arrow keys, only left and right, forcing Bricklin to utilize the space bar to
switch between horizontal and vertical movement. Having worked out how he wanted
VisiCalc to look and work, Bricklin then partnered with a former roommate
of his from MIT by the name of Bob Frankston, who was an accomplished programmer in his own
right. The two of them formed a small company called Software Arts with the goal of developing
a full version of VisiCalc for retail sale. Frankston would be the one to actually
program the full version of VisiCalc, using Bricklin’s prototype as a reference and with
constant refinement and feedback from Bricklin. A veteran programmer, Frankston had been
programming since the 1960s and his handling of the coding allowed Bricklin to focus on
the high level view of exactly how all the pieces of the program should work, as well as
start writing some of the user documentation. When Bricklin spoke with Fylstra, he was very
interested in VisiCalc and quickly offered to publish VisiCalc through Personal Software.
Fylstra was also responsible for the choice of the Apple II as the initial target platform.
The Apple II was chosen purely because Fylstra had both it and a TRS-80 on hand in fall of 1978 when
Bricklin first spoke to him and since he wasn’t using the Apple II, that’s the one he loaned it
to Bricklin, who then used it to create his second prototype. This Apple II was solely used for
developing the second prototype, it was not used to develop the actual retail version. Bricklin
had no personal preference between the TRS-80, the Commodore Pet, or the Apple II as he owned
none of them and thus the enormous sales benefit that Apple gained from being the initial VisiCalc
target platform happened purely by chance. Once the second prototype had been used to
work out all the implementation details, Frankston got to work developing the final retail
version that would be distributed by Fylstra and Personal Software. He implemented VisiCalc
entirely in assembler, using a time-sharing system called MULTICS that ran on a big mainframe
that could be accessed remotely for an hourly fee. Since the fee for computer time was cheaper at
night, VisiCalc was primarily programmed during nights, with Frankston remoting into the mainframe
from his house, programming during the night and sleeping during the day. Frankston wasn’t
remoting in from a personal computer either, he did his development from a DEC LA-120 terminal
with no screen, just an endless roll of paper. Given that Fylstra had loaned Bricklin an
Apple II, I would assume that Frankston used the emulator on a timeshare system due
to the enhanced programming tools and more reliable backups the mainframe he was remoting
into offered. Programming the early personal computers was still difficult in the late 1970s
as they lacked many of the helpful tools that mainframes had and suffered from frequently
unreliable storage. Although some sources state that Frankston was using an Apple II emulator, he
in fact appears to have specifically used a 6502 emulator. Since he was coding entirely in 6502
assembler anyhow this would make the most sense. There seems to be some confusion over how long
it took to program VisiCalc as Wikipedia says it was programmed in two months at the end of
1978 while the seminal work on the development of the personal computer, Fire In The Valley, says
the first prototype of VisiCalc wasn’t available until spring of 1979 and Accidental Empires
states that it took “close to a year” to finish. This is presumably due to the confusion
over just how many versions of VisiCalc were created. To clarify, there were
three separate versions of VisiCalc, starting from when Bricklin first created a rough
prototype in BASIC on the Harvard mainframe, then another version done in Apple BASIC on the Apple
II borrowed from Fylstra, and finally the full version done in 6502 assembler, with Frankston
primarily working on a mainframe that ran a 6502 emulator. Final development was then moved to a
minicomputer that Frankston and Bricklin bought when they first rented office space. This last
one was the first to be given the name VisiCalc, as up until that point it had been known as
Calcu-Ledger. Fylstra, in his capacity as the man who would market the product, chose the name
VisiCalc, short for Visible Calculations, during a meeting with Frankston at a restaurant called
Vic’s EGG on One in Cambridge, Massachusetts. There is also some confusion over when it
launched with Wikipedia stating June 4th of 1979 and sources such as Accidental Empires giving the
date of October of 1979. This is because although VisiCalc was first announced and publicly shown at
the National Computer Conference in June of 1979, it initially attracted little interest and
there was still additional development needed on it. However, an influential analyst by
the name of Ben Rosen saw a demonstration of pre-release version of VisiCalc and
wrote that it was “hard to imagine any serious user of a personal computer not
owning-and frequently using-VisiCalc.” He additionally stated that VisiCalc “seems to be
unique in the computer industry. Mainframe people I’ve shown VisiCalc to claim there’s nothing
like it available on conventional machines.” His prediction would soon be put to the test, but
first VisiCalc needed to complete development. Based on VisiCalc’s anticipated sales, Personal
Software advanced Bricklin and Frankston a prepayment of 100,000 dollars, enabling
them to rent space in the basement of a commercial building, buy the aforementioned
minicomputer to finish development on, hire two employees and finish VisiCalc’s
development. They also started the process of porting VisiCalc to the other two dominant
members of the nascent personal industry, the Commodore PET and TRS-80. The PET was an easy
choice since it used the same 6502 processor that the Apple II did, which could not be said
for the TRS-80, which used a Z80 processor. Although VisiCalc was technically
available for sale at this point, only a literal handful of copies seem to have been
sold, with Bricklin remembering only five copies being shipped sometime that summer. VisiCalc’s
first real, boxed release was version 1.37 which shipped in October of 1979 with an initial
retail price of 100 dollars. As released, VisiCalc only ran on an Apple II with an expanded
RAM of 32k, eight times the 4k of the original 1977 Apple II and double the standard RAM of the
newly released Apple II+. VisiCalc was also a pioneer in its packaging, with Personal Software
shipping the boxed release out in a handsomely designed brown and gold binder, with excellent
documentation that was professionally typeset and illustrated. The vast majority of software
in 1979 was merely a floppy disk or cassette tape inside a ziploc bag with xeroxed documentation
that was merely stapled together. Fylstra knew the importance of presentation, and made sure
that VisiCalc presented itself professionally. Although slow to start, VisiCalc quickly became
the first “killer app” of the personal computer era. Up until VisiCalc’s launch, the uses for a
personal computer were not necessarily evident to most people who weren’t programmers. The
Altair 8800 that kicked off the personal computer industry in 1975 originally came with
no software, no display, had to be programmed in machine language by flipping toggle switches
on the front, and had no persistent storage. This all was rapidly changing but by 1979 the most
useful thing for most people that a computer could do was probably word processing, with the first
word processor, Electric Pencil hitting the market in 1976, and the WordStar reaching the market in
1978. But this was still a tiny market overall. Now however, for about 2500 dollars in
1979 dollars, a business could purchase a copy of VisiCalc and an Apple II to run it
on and “have a turnkey system for handling the accounting and spreadsheet work they had
been doing longhand (at small companies) or on mainframes with punch cards (at big companies)”
accessing real time capabilities that even big businesses lacked. And this was a single
one time cost, not a monthly recurring one. VisiCalc was something that any MBA, financial
analyst, small business owner, or anybody who dealt with numbers on a daily basis, could
immediately grasp and see its enormous utility. People bought a computer solely to run VisiCalc
and sales of Apple IIs, previously lagging far behind the PET 2001 and the TRS-80, its two main
competitors, skyrocketed. Prior to this Apple had been selling only small numbers of Apple
IIs but with VisiCalc fueling enormous demand, Apple’s sales exploded even after VisiCalc’s price
was raised from 100 dollars to 150 dollars and then to 250 dollars by 1982. Although VisiCalc
was only exclusive to the Apple II for a year, it gave Apple the jump it needed to become the
powerhouse it became in the 1980s. Additionally, because VisiCalc required the upgraded 32k Apple
II over the standard 16k model, Apple made even more money per sale as the upgraded Apple II
had a higher profit margin than the base model. VisiCalc eventually was ported to most major
computers of the era, not just the Commodore PET and TRS-80 but also Atari’s 8 bit line of
computers, CP/M machines, and was available at launch for the IBM PC in 1981. Personal Software
was put in the somewhat unique position of being primarily a single software company, almost
entirely dependent on VisiCalc for revenue, a program that as the publisher, it didn’t own the
rights to. A number of other programs were created to play off of the VisiCalc name, such as a GUI
called Vis-On and some programs that extended VisiCalc’s functionality such as VisiTrend and
VisiPlot. These last two programs were purchased by Personal Software and were also unique in
that one of the two programmers who created them, Mitch Kapor, would later leave Personal Software
to form his own company called Lotus, whose flagship product, Lotus 1-2-3, would play a key
role in VisiCalc’s future. More on that in a bit. 1979 started with 500 copies of VisiCalc shipping
every month but that number quickly expanded to 12,000 copies a month by 1981, and then to
30,000 copies a month, reaching a total of a million copies sold by 1985 when VisiCalc
was discontinued. However by this time it had been essentially moribund since 1983, when
Lotus 1-2-3 came out for the IBM PC. VisiCalc simply did not keep up with the rapid pace
of software development that the computing industry of the 1980s required and although it
had been available for the new IBM PC in 1981, no special effort had been made to take
advantage of the PC’s feature set. The IBM PC 5150 could have up to 640k of RAM, but the
version of VisiCalc released for it was merely a port of the TRS-80 port of the original Apple II
version with essentially no special development. There is some conflicting information here on how
much RAM the original IBM PC version supported as Accidental Empires says that it could use no more
than 64k of RAM, and had the exact same feature set as the old Apple II version while Bricklin
himself says that it could in fact make use of a full 512k that an upgraded IBM PC could come with,
quite a lot of memory in those days, although less than the 640k that a fully upgraded IBM PC could
possess. I am going to go with Bricklin’s account here, which does not disagree that the PC version
of VisiCalc was feature-wise the exact same as the Apple II version with no new functionality
or customization for the IBM PC specifically. Still, the IBM PC version sold very well for two
years until 1983 when Lotus 1-2-3 was released. Lotus 1-2-3 was released solely for the IBM PC,
it was developed to run as fast as possible on it as it solely targeted the IBM PC and was
written in 8088 assembler. It also boasted a vastly expanded feature set over VisiCalc, whose
sales quickly fell off the proverbial cliff. Other competitors such as SuperCalc also
played a role in marginalizing VisiCalc, but it was Lotus 1-2-3 that really
killed its hopes in the marketplace. Additionally a legal battle erupted between
Personal Software and Software Arts that sucked up much time and money on both sides, and
ensured that little time and attention was given to developing VisiCalc further. In brief,
Personal Software had come to feel that the royalty agreement it had signed with Software
Arts, giving them 37.5 percent of every copy of VisiCalc sold, was far too high, and indeed
it was over twice the 15 percent royalty that became common once the software industry matured
in the 1980s. However, Bricklin and Frankston felt that since they had a signed contract for
the 37.5 percent, and both sides were making quite a bit of money, there was no reason for
them to negotiate with Fylstra over the issue. This wasn’t the reason for the lawsuits erupting,
but it was an underlying source of stress between the two companies that exacerbated matters.
Another source of tension between the companies was Personal Software rebranding itself as
VisiCorp in 1982, and minimizing Software Arts’ name and connection with VisiCalc,
the product it had created and still owned. Bricklin and Frankston had been working
on a new and improved version of VisiCalc, called VisiCalc Advanced Version that had a raft
of new features and would have been far more of a feature competitor to Lotus 1-2-3 on the IBM
PC, had things gone differently. Unfortunately it was doomed by two poor choices, the first one was
that it wasn’t initially targeted at the IBM PC, but rather was first released for the ill-fated
Apple III. The second mistake was that when it was ported to the PC, it was not developed
in 8088 assembler but rather in a high level language. This made it easier to program, faster
to deliver, and easier to port but also ensured that it would run far slower than Lotus 1-2-3. The
IBM PC release was also not delivered until 1984, a year after its original planned release date and
this led to VisiCorp suing Software Arts for 60 million dollars in damages. The bad blood between
both companies was on full display as Software Arts countersued, stating that VisiCorp had
not properly marketed VisiCalc and furthermore, owed royalties for other programs that Software
Arts felt were merely extensions of VisiCalc. Eventually the court battles wound up
essentially destroying both companies, and in 1985 Lotus actually bought both Software
Arts and the rights to VisiCalc. Once Lotus owned the rights to VisiCalc, it saw no point continuing
development on a competitor to Lotus 1-2-3 and discontinued it entirely in 1985. That
same year also saw Microsoft releasing the first version of the spreadsheet that
would eventually kill Lotus 1-2-3 in turn, Excel. Without its flagship product
VisiCorp quickly went defunct and its remaining assets were sold off
to Paladin Software in the mid-80s. Bricklin went on to form several other tech
based companies and currently is the president of a software development company called Software
Garden as well as the Chief Technical Officer of Alpha Software. Frankston went on to work
for Lotus and then Microsoft among others and today sits on the board of governors
for the IEEE Consumer Electronics Society, where he writes a regular column for their
magazine. Fylstra had a varied career as well, and for the past 33 years has been the
president of software company Frontline Systems. And that wraps up the story of VisiCalc,
the world’s first electronic spreadsheet for personal computers. Future episodes in the
Retro Tech Bytes series are in the pipeline, including a really neat one that touches the
world of early 2000s Star Wars fan films. If you enjoyed this video, please hit the
like button, and consider subscribing.