Microsoftが開発したプログラミング言語「Visual Basic」は一時期は人気の頂点に達していましたが、記事作成時点では目立たない存在になっています。そんなVisual Basicの興亡について、コーディング補助アプリを開発するRetoolが「Visual Basicの父」として知られるアラン・クーパー氏の体験談を交えながら解説しています。
Something Pretty Right: A History of Visual Basic | Retool
https://retool.com/visual-basic/
Visual Basicは、クーパー氏が開発したプログラミング言語「Ruby」をMicrosoftが買取る形で始まった言語です。クーパー氏によると、Rubyの前身となる「Tripod」の開発は1985年に始まったとのこと。当時のWindowsはグラフィカルユーザーインターフェース(GUI)を搭載していましたが、そのGUIはライバルのMacintoshと比べてはるかに貧弱でした。そこで、クーパー氏はWindowsのGUI環境を大幅に強化する仕組みの開発を始めました。
GUI改善に向けた開発は、思うように進まなかったとのこと。しかし、1987年にクーパー氏がMicrosoftと大手銀行「バンク・オブ・アメリカ」の商談に同席した際に、バンク・オブ・アメリカの担当者が「高度な技術を持つシステム管理者から窓口係のようなコンピューターに慣れていない人まで、すべての従業員がWindowsを使えるようにする必要がある」と発言。この発言を聞いたクーパー氏は「開発者に『理想的なUI』を提供するのではなく『UIの部品』を提供し、開発者が部品を組み合わせて状況に応じた『理想的なUI』を作る」というアイデアを思いつきます。
クーパー氏は上記のアイデアに基づいてTripodの開発を進め、「ボタン」「リスト」「ディレクトリの中身を表示するリスト」などの部品を組み合わせてUIを作れるシステムを作り上げました。「ボタン」「リスト」とった部品は記事作成時点では「コントロール」と呼ばれるのが一般的ですが、クーパー氏はリモート・マニピュレーターの愛称にちなんで「ウォルド」と呼んでいたとのこと。しかし、開発協力者のマイケル・ギアリー氏は「『ウォルド』という名前は難解すぎる」として「gizmos(小道具、ちょっとした機械などの意)」に改名しました。その後、「gizmos」はMicrosoftによって「コントロール」に改められ、記事作成時点まで続く呼び名となりました。
クーパー氏が開発したコントロールは、「ドラッグ&ドロップ」や「アニメーション」といった現代のGUIに通じる機能を備えていたとのこと。さらに、ユーザーが「『ボタンをクリック』などのアクションを起こすと特定のコードを実行する」という機能も組み込まれていました。このコード実行機能の名前を考えていた際に、ギアリー氏はイライラしながらモニター画面に向かって輪ゴム鉄砲を発射(fire)したり、葉巻を吸うためにライターの火(fire)を付けたりしていたとのこと。そして、頭の中に「fire an event(イベントの発火)」という現代まで使われている開発用語が浮かんできたとクーパー氏は語っています。
その後、1988年にクーパー氏はMicrosoftの従業員にTripodを紹介する機会に恵まれました。従業員はTripodの機能を確認するとすぐに「あなたはビル・ゲイツに会わなければなりません」と述べ、速攻でゲイツ氏との会談を手配してくれました。なお、この時クーパー氏にゲイツ氏との会談をセッティングしてくれた人物は、後にゲームプラットフォーム「Steam」を開発するValveを設立することとなるゲイブ・ニューウェル氏だったとのこと。
クーパー氏からTripodを見せられたゲイツ氏は、一瞬でTripodの魅力に気付いたそうです。会談の中ではゲイツ氏と同席したMicrosoft従業員がTripodの欠陥について指摘する場面もありましたが、ゲイツ氏はTripodを非常に気に入っており、クーパー氏に代わってTripodを擁護するほどだったとのこと。ゲイツ氏はクーパー氏と契約を結び、1990年に発売予定の「Windows 3.0」にTripodを組み込むことを求めました。
クーパー氏はWindows 3.0の登場までにTripodのコードを洗練させる必要があったため、プロジェクト名を「Ruby」に変更し、コードの大部分を書き直しました。さらに、Rubyには「サードパーティーの開発者が独自のコントロールを追加できる機能」を追加。そして、1990年初頭に完成版のRubyをMicrosoftに納品することに成功しました。
しかし、Windows 3.0の開発は難航し、リリースが8カ月遅れることになりました。さらに、Microsoft内の政治的闘争に巻き込まれた結果、RubyはWindows 3.0に搭載されないことに。Rubyが世に出ないことを不満に思ったクーパー氏はゲイツ氏にRubyの買い戻しを提案。しかし、ゲイツ氏はRubyの権利をクーパー氏に返すことを拒否し、代わりにプログラミング言語「BASIC」にRubyの機能を組み込んで、BASICをビジュアルプログラミング言語化することを決定しました。
RubyをBASICに組み込むプロジェクトは、当初は6カ月の短期プロジェクトとして始まったとのこと。しかし、プロジェクトは難航し完成までに18カ月を要することとなりました。完成したビジュアルプログラミング言語は「Visual Basic」と名付けられ、1991年にリリースされました。この時、クーパー氏はBASICを嫌っていたため、Microsoftの戦略には不満を感じていたとのこと。
Visual Basicの登場によって、開発者はソフトウェアにGUIを簡単に搭載できるようになりました。これによりGUI搭載ソフトウェアが爆発的に増加し、Windowsは初心者にも使いやすいOSとしてシェアを一気に拡大することとなります。
Retoolによると、全盛期には350万人以上の開発者がVisual Basicを用いて仕事に取り組み、Windows上で動作するアプリケーションの3分の2がVisual Basicで開発されていたとのこと。しかし、1990年代にMicrosoftが「Java」に対抗する開発フレームワークとして「.NET」を開発した頃から、Visual Basicの人気には陰りが見え始めました。その後、MicrosoftはVisual Basicを.NETに対応させたプログラミング言語「Visual Basic .NET(VB.NET)」を開発。VB.NETの登場によってVisual Basicは開発のメインストリームから姿を消すことになりました。
この記事のタイトルとURLをコピーする