See Also

Spreadsheet

A spreadsheet is a rectangular table of information, often financial Finance

Finance studies and addresses the ways in which individuals, businesses [i] and organizations raise, all ... 

 information. The word came from "spread" in its sense of a newspaper or magazine item that covers two facing pages, extending across the center fold and treating the two pages as one large one. The compound word "spread-sheet" came to mean the format used to present bookkeeping ledgerswith columns for categories of expenditures across the top, invoices listed down the left margin, and the amount of each payment in the cell where its row and column intersectwhich were traditionally a "spread" across facing pages of a bound ledger or on oversized sheets of paper ruled into rows and columns in that format and approximately twice as wide as ordinary paper.

Discussions

  Discussion Features

   Ask a question about 'Spreadsheet'

   Start a new discussion about 'Spreadsheet'

   Answer questions about 'Spreadsheet'

   'Spreadsheet' discussion forum


Encyclopedia



A spreadsheet is a rectangular table of information, often financial Finance

Finance studies and addresses the ways in which individuals, businesses [i] and organizations raise, all ... 

 information. The word came from "spread" in its sense of a newspaper or magazine item that covers two facing pages, extending across the center fold and treating the two pages as one large one. The compound word "spread-sheet" came to mean the format used to present bookkeeping ledgers—with columns for categories of expenditures across the top, invoices listed down the left margin, and the amount of each payment in the cell where its row and column intersect—which were traditionally a "spread" across facing pages of a bound ledger or on oversized sheets of paper ruled into rows and columns in that format and approximately twice as wide as ordinary paper.

History


One of the first commercial uses of computer Computer

A computer is a machine [i] for manipulating data [i] according to a list of instructions [i] ... 

s was in processing payroll and other financial records, so the programs were designed to generate reports in the standard "spreadsheet" format bookkeepers and accountants used. As computers became more available and affordable in the last quarter of the 20th century, more software Computer software

Software fundamentally is the unique image or representation of physical or material alignment that ... 

 became available for them, and programs to keep financial records and generate spreadsheet reports were always in demand. Those spreadsheet programs can be used to tabulate many kinds of information, not just financial records, so the term "spreadsheet" has developed a more general meaning as information presented in a rectangular table, usually generated by a computer.

The concept of an electronic spreadsheet was outlined in the 1961 paper "Budgeting Models and System Simulation" by Richard Mattessich. Some credit for the computerized spreadsheet perhaps belongs to Rene K. Pardo and Remy Landau, who filed on some of the related algorithms Algorithm

In mathematics [i] and computing [i], an algorithm is a procedure for accomplishing some task which, gi... 

 in 1970. While the patent was initially rejected by the patent office as being a purely mathematical invention, Pardo and Landau won a court case in 1983 establishing that "something does not cease to become patentable merely because the point of novelty is in an algorithm." This case helped establish the viability of software patents Software patent

Software patents are patent [i]s on computer [i]-implemented invention [i]s. ... 

.

The generally recognized inventor of the spreadsheet as a commercial product for the personal computer Personal computer

A personal computer is usually a microcomputer [i] whose price, size, and capabilities make it suitable ... 

 is Dan Bricklin although a fully interactive implementation produced in the United Kingdom United Kingdom

The United Kingdom of Great Britain and Northern Ireland is a country and sovereign state [i] tha ... 

 at Imperial Chemical Industries Imperial Chemical Industries

company_name = Imperial Chemical Industries plc
... 

 running on an IBM IBM

company_name = International Business Machines Corporation |
... 

 mainframe Mainframe computer

For the electro band comprising Murray Munro & John Molloy see Mainframe [i]
... 

 platform pre-dated his version by several years even featuring shared public spreadsheets from the outset.

Bricklin has spoken of watching his university professor create a table of calculation results on a blackboard. When the professor found an error, he had to tediously erase and rewrite a number of sequential entries in the table, triggering Bricklin to think that he could replicate the process on a computer, using the blackboard as the model to view results of underlying formulas. His idea became VisiCalc VisiCalc

VisiCalc was the first spreadsheet [i] program available for personal computers. ... 

, the first application that turned the personal computer Personal computer

A personal computer is usually a microcomputer [i] whose price, size, and capabilities make it suitable ... 

 from a hobby for computer enthusiasts into a business tool.



VisiCalc went on to become the first "killer app Killer application

A killer application is a computer program [i] that is so useful or desirable that it proves the value o... 

", an application that was so compelling, people would buy a particular computer just to own it. In this case the computer was the Apple II Apple II series

The Apple II was the first popular microcomputer [i] manufactured by Apple Computer [i]. ... 

, and VisiCalc was no small part in that machine's success. The program was later ported to a number of other early computers, notably CP/M CP/M

[i] and [[Zilog Z80]... 

 machines, the Atari 8-bit family Atari 8-bit family

Atari [i] built a series of 8-bit [i] home computer [i]s based on the MOS Technology [i] 6502 [i] ... 

 and various Commodore Commodore International

Commodore is the commonly used name for Commodore International, a West Chester, Pennsylvania [i] ... 

 platforms. Nevertheless, VisiCalc remains best known as "an Apple II program".

The acceptance of the IBM PC IBM PC

The IBM PC , was the original version and progenitor of the IBM PC compatible [i] hardware platform [i] ... 

 following its introduction in August, 1981, began slowly, because most of the programs available for it were ports from other 8-bit platforms. Things changed dramatically with the introduction of Lotus 1-2-3 Lotus 1-2-3

Lotus 1-2-3 is a spreadsheet [i] program from Lotus Software [i] . ... 

 in November, 1982, and release for sale in January, 1983. It became that platform's killer app, and drove sales of the PC due to the improvements in speed and graphics compared to VisiCalc. VisiCorp was unable to respond competitively, and disappeared within a few years.

Lotus 1-2-3 underwent an almost identical cycle with the introduction of Windows 3.x Microsoft Windows

Microsoft Windows is a family of operating system [i]s by Microsoft [i].... 

 in the late 1980s. Microsoft Microsoft

company_name = Microsoft Corporation
... 

 had been developing Excel Microsoft Excel

Microsoft Excel is a spreadsheet [i] program written and distributed by Microsoft [i] for computers us ... 

 on the Macintosh Macintosh

The Macintosh, or Mac, is a line of personal computer [i]s designed, developed, manufactured, and ... 

 platform for several years at this point, and it had developed into a fairly powerful system. A port to Windows 3.1 resulted in a fully-functional Windows spreadsheet which quickly took over from Lotus in the early 1990s. By the time Lotus responded with a usable Windows version of their own, Microsoft had started compiling their Office Microsoft Office

Microsoft Office is a suite [i] of productivity program [i]s created or purchased by Microsoft [i] ... 

 suite, which still dominates the industry.

A number of companies have attempted to break into the spreadsheet market with programs based on very different paradigms. Lotus introduced what is likely the most successul example, Lotus Improv Lotus Improv

Lotus Improv was a spreadsheet [i] program from Lotus Development [i] that attempted to re-define the wa ... 

, which saw some commercial success, notably in the financial world where its powerful data mining capabilities remain well respected to this day. Spreadsheet 2000 Spreadsheet 2000

Spreadsheet 2000 was a spreadsheet [i] program for Apple Macintosh [i] computers, published by Casady & Greene [i] ... 

 attempted to dramatically simplify formula construction, but was generally not successful. Stories attempted to make it easier to deal with 3-D blocks of data , but appears to have seen little or no use.

Programming issues

Just as the early programming languages were designed to generate spreadsheet printouts, programming techniques themselves have evolved to process tables of data more efficiently in the computer itself.

Spreadsheets have evolved into powerful programming languages; specifically, they are functional, visual, and multiparadigm languages.

Many people find it easier to perform calculations in spreadsheets than by writing the equivalent sequential program. This is due to two traits of spreadsheets.
  • They use spatial relationships to define program relationships. Like all animals, humans have highly developed intuitions about spaces, and of dependencies between items. Sequential programming usually requires typing line after line of text, which must be read slowly and carefully to be understood and changed.
  • They are forgiving, allowing partial results and functions to work. One or more parts of a program can work correctly, even if other parts are unfinished or broken. This makes writing and debugging programs much easier, and faster. Sequential programming usually needs every program line and character to be correct for a program to run. One error usually stops the whole program and prevents any result.


A spreadsheet program is designed to perform general computation tasks using spatial relationships rather than time as the primary organizing principle. Many programs designed to perform general computation use timing, the ordering of computational steps, as their primary way to organize a program. A well defined entry point is used to determine the first instructions, and all other instructions must be reachable from that point.

In a spreadsheet, however, a set of cells is defined, with a spatial relation to one another. In the earliest spreadsheets, these arrangements were a simple two-dimensional grid. Over time, the model has been expanded to include a third dimension, and in some cases a series of named grids. The most advanced examples allow inversion and rotation operations which can slice and project the data set in various ways.

The cells are functionally equivalent to variables in a sequential programming model. Cells often have a formula, a set of instructions which can be used to compute the value of a cell. Formulas can use the contents of other cells or external variables such as the current date and time. It is often convenient to think of a spreadsheet as a mathematical graph Graph theory

In mathematics [i] and computer science [i], graph theory is the study of graphs [i], mathema ... 

, where the nodes are spreadsheet cells, and the edges are references to other cells specified in formulas. This is often called the dependency graph of the spreadsheet. References between cells can take advantage of spatial concepts such as relative position and absolute position, as well as named locations, to make the spreadsheet formulas easier to understand and manage.

Spreadsheets usually attempt to automatically update cells when the cells on which they depend have been changed. The earliest spreadsheets used simple tactics like evaluating cells in a particular order, but modern spreadsheets compute a minimal recomputation order from the dependency graph. Later spreadsheets also include a limited ability to propagate values in reverse, altering source values so that a particular answer is reached in a certain cell. Since spreadsheet cells formulas are not generally invertable, though, this technique is of somewhat limited value.

Many of the concepts common to sequential programming models have analogues in the spreadsheet world. For example, the sequential model of the indexed loop For loop

In most imperative [i] computer programming [i] languages, a for loop is a control flow [i] ... 

 is usually represented as a table of cells, with similar formulas.

Shortcomings

While extremely popular, spreadsheets are not without their downsides. Some of the problems associated with spreadsheets include,



  • Lack of auditing and revision control. This makes it difficult to determine who changed what and when. This can cause problems with regulatory compliance, among other things.
  • Lack of security Computer security

    Computer security is a field of computer science concerned with the control of risks related to computer... 

    . Generally, if one has permission to open a spreadsheet, one has permission to modify any part of it. This, combined with the lack of auditing above, can make easy for someone to commit fraud.
  • Lack of concurrency. Unlike databases, spreadsheets typically allow only one user to be making changes at any given time.
  • Because they are loosely structured, it is easy for someone to introduce an error Error

    The word error has different meanings in different domains.... 

    , either accidentally or intentionally, by entering information in the wrong place or expressing dependencies among cells incorrectly.


While there are built-in and third-party tools for desktop spreadsheet applications that address some of these shortcomings, awareness of these is generally low, and usage lower still. However, many of these shortcomings can be handled by online spreadsheets like Google Spreadsheets Google Spreadsheets

Google Spreadsheets is a Web-based spreadsheet [i] application offered by Google [i]. ... 

 and EditGrid EditGrid

EditGrid is a Web 2.0 [i] spreadsheet [i] service provided by Team and Concepts [i], a Hong Kong [i]-bas ... 

.

Online spreadsheets

The advent of advanced web World Wide Web

The World Wide web is a global, read-write information [i] space. ... 

 technologies, such as Ajax and XUL, circa 2005 has propelled the emergence of a new generation of online spreadsheets. Equipped with a rich Internet application user experience, many of the online spreadsheets boast many of the features seen in desktop spreadsheet applications.

See also

  • List of spreadsheets
  • List of online spreadsheets
  • Shared public spreadsheet

References


External links


General information

  • by D.J. Power
  • by Russell Schulz
  • by Jocelyn Paine
  • by Christopher Browne; much general information on spreadsheets, and some on related Linux Linux

    Linux is a Unix-like [i] computer operating system [i]. ... 

     issues
  • , by Dan Bricklin
  • on the Open Directory Project Open Directory Project

    The Open Directory Project , also known as dmoz , is a multilingual open content [i] directory [i] ... 

  • by Richard Mattessich
  • - A classic video showing spreadsheet vendors going head-to-head in the late 80's .

Research organisations