T1#spreadsheet#software#apple-ii#killer-app
VisiCalc ── パソコンを買う理由になった表計算ソフト

メタデータ
- 日付
- 年代
- 1970s
- Tier
- T1
- 出典数
- 08
- 関連項目
- 03
- Tags
- #spreadsheet#software#apple-ii#killer-app
VisiCalc(ビジカルク)は、Dan Bricklin と Bob Frankston が作り、Personal Software(のちに VisiCorp と改称)が販売した Apple II 用の表計算ソフトである。1979年6月の National Computer Conference で公に発表され、製品版の出荷は1979年10月17日に始まった。Frankston は開発記の中で、10月17日についに試作品を ── その時点で製品版と呼ばれるようになったものを ── 出荷したと書いている。何をするソフトかは、いまでは説明の必要もないほどなじみ深い。格子状に並んだセルに数値と式を入れ、数値を一つ変えると、それに依存するものがすべて即座に計算し直される。
VisiCalc が Apple II にもたらした影響 ── 会社がこのソフトを動かすために Apple II を買ったこと ── は Apple II の記事で扱っている。このページはソフトそのものの話である。
教室の空想から製品へ
| 日付 | 出来事 |
|---|---|
| 1978年春 | ハーバード・ビジネス・スクールの MBA 学生だった Bricklin が、ヘッドアップディスプレイのような電卓を空想する |
| 1978年春 | 学校のタイムシェアリングシステムで、画面の配置を BASIC で試作 |
| 1978年10月8日 | 借りた Apple II 上で、Apple BASIC による最初のパソコン用試作 |
| 1978年11月 | Frankston が製品版のプログラミングを始める |
| 1979年1月2日 | Bricklin と Frankston が Software Arts を設立 |
| 1979年6月 | National Computer Conference で公に発表 |
| 1979年10月17日 | 製品版の出荷開始 |
Bricklin によれば、着想は1978年春、ハーバードの教室で空想にふけっていたときに生まれた。背中にマウスの付いた電卓と、戦闘機のようなヘッドアップディスプレイを思い描いたという。形にしていくうちに構想は現実的になった。学校のタイムシェアリングシステム上の BASIC による試作で、数値を自由に置く発想は、人が名前で呼べる行と列へと変わり、値の背後にある式を表示するステータス行も決まった。作業日誌によれば、最初のパソコン用試作は1978年10月8日。のちに販売元となる Personal Software の Dan Fylstra から借りた Apple II で、週末のうちに Apple BASIC で書いたものだった。カーソル移動には Apple II のゲーム用パドルを試したが精度が足りず、矢印キーに切り替えた。
名前は Bricklin の最初の案ではない。彼は「Calcu-ledger」を提案していたが、VisiCalc という名は Frankston、Fylstra との会合から生まれ、マーケティングを担った Fylstra が選んだ。
32KB に収める
プログラミングは Frankston が担当し、最初はマサチューセッツ州アーリントンの彼の屋根裏部屋で進められた。VisiCalc は Apple II の 6502 プロセッサ向けのアセンブリ言語で書かれ、アセンブラは MIT の Multics タイムシェアリングシステム上で動いた。深夜の利用料が最も安かったため、Frankston は夜に働いた。マクロアセンブラで IF-THEN-ELSE 型のマクロを使い、構造化されたコードを書いている。
制約はメモリだった。Frankston はプログラムと OS と画面を16KB の機械に収めることを目標にしたが、コードは約20KB に膨らみ、VisiCalc は32KB を必要とすることになった。出荷のころには48KB の機械が一般的になっていた。Apple II には割り込みも時計もなく、長い計算の間に打たれた文字は失われうるため、彼はコードのあちこちにキーボードの確認を散りばめた。Apple のライセンス条件に縛られないよう、ディスクの低レベル処理を解析し、互換のファイルシステムも自作している。
何が新しかったのか
Bricklin は「最初」という言葉に慎重である。行と列で財務を計算するプログラムは VisiCalc 以前にもあり、Frankston 自身、そうしたものに使われたタイムシェアリング会社で働いていたと書いている。特別だったのは、次の組み合わせだという。
- セルに格納された式が、参照するセルの変更に応じて即座に自動で再計算される
- 入力・定義・書式・出力を一つにまとめた「例示によるプログラミング」の操作 ── 計算を一度やってみせれば、それがモデルになる
- 任意の範囲を任意の範囲へ、相対参照と絶対参照を使い分けて複写できる
- それを手の届くパーソナルコンピュータで動かした。それまでの予測ツールは、月1,000ドルを超えることもあるタイムシェアリング上で動いていた
最初の1文字でラベルと式を区別する入力方法など、これらの特徴はその後の表計算ソフトに受け継がれた。
特許を取らなかった理由
VisiCalc を守ったのは著作権と商標で、特許ではない。Bricklin の説明では、1979年当時はプログラムは数学的アルゴリズムとみなされることが多く、ソフトウェアの発明に特許が認められることはまれだった。Personal Software が雇った特許弁護士は成功の見込みを10%程度と見積もり、費用も考えて出願を見送った。1981年、米連邦最高裁は、コンピュータプログラムを使うというだけで特許の対象外にはならないとの判断を示し、ソフトウェア特許への道が開かれる。Bricklin が言うように、表計算にとっては遅すぎた。
キラーアプリ
Bricklin が公開している1996年の NHK のドキュメンタリーの一部で、Steve Jobs は、Dan Fylstra が自分のオフィスにディスクを持って現れ「Visual Calculator」と呼ぶプログラムを見せたことを回想し、それこそが Apple II を成功へ押し上げたと語っている。Jobs はそれを1977年のこととしたが、Bricklin は1979年だったと補足している。
VisiCalc はやがて Apple II の外へ出た。Frankston は同じプロセッサを使う Commodore PET と Atari 800 への移植を記しており、1981年に IBM が IBM PC を発表したとき、利用可能なプログラムの一つとして VisiCalc が挙げられていた。Personal Software は1982年に VisiCorp と改称している。
IBM PC の上で VisiCalc を追い越したのは、1983年1月に出た Lotus 1-2-3 だった。新しい機械の性能を引き出すように書かれたソフトである。1985年、Lotus は Software Arts を買収した。
よくある質問
- VisiCalc とは何ですか。
- Apple II 用に作られた表計算ソフトです。行と列の画面のセルに数値や式を入れると、参照先の値を変えたとき式の結果が自動で再計算されます。作者は Dan Bricklin と Bob Frankston(Software Arts)、販売は Personal Software(のちの VisiCorp)でした。
- VisiCalc はいつ発売されましたか。
- 1979年6月の National Computer Conference で公に発表され、製品版の出荷は1979年10月17日に始まりました。Frankston が自身の文章で10月17日に出荷したと記しています。
- VisiCalc は最初の表計算ソフトですか。
- Bricklin 自身は、行と列で集計するプログラムは VisiCalc 以前にも多数あったと認めています。VisiCalc が特別だったのは、セルの式による即時の自動再計算、入力と定義と出力が一体になった操作、相対参照・絶対参照による複写を、手の届く価格のパーソナルコンピュータで実現した点だと説明しています。
- VisiCalc はなぜ特許を取らなかったのですか。
- Bricklin によれば、1979年当時はソフトウェアの特許はほとんど認められておらず、相談した特許弁護士も成功の見込みを10%程度と見積もったため、費用も考えて出願しませんでした。ソフトウェア特許の流れを変えた米最高裁の判断は1981年でした。
出典
一次資料Frankston, B. Implementing VisiCalc
1978年11月の開発開始、32KB の要件、10月17日の出荷
一次資料Bricklin, D. The Idea — VisiCalc history, bricklin.com
1978年春の着想と、1978年10月8日の最初の試作
二次資料Lotus 1-2-3 rebooted: My trip back to the old (named) range — The Register, Jan 28, 2013
VisiCorp への改称と、1985年の Lotus による Software Arts 買収
最終更新: