EY-Office ブログ

2度目のApollo(昔話)

現在、あるアプリのバックエンドを検討・作成しているのですが、APIはRESTではなくのGraphQLを使う事に決定しました。Node.jsでGraphQLといえばApollo GraphQLが良く使われているようなので、Apollo GraphQLを使ってのバックエンド構築を検討しています。

ところで、皆さんはApolloというと何を想像するでしょうか?ある年齢以上の方は友人月面着陸に成功したアポロ計画を連想されるのではないでしょうか(若い方も映画やTV番組を通じて知っている人が多いかと思います)。

私は、この業界にいてApolloという製品を使うのは2回目です。

Apollo計画

Apollo Workstation

ベンチャー企業でオリジナルCADのコア部分を開発する(前半)その後半 に書いたCADですがApollo Workstationと呼ばれていたApollo Computer Inc.が製造・販売していたコンピューター上で動いていました。当時はまだPCやMacは非力で本格的なCADを動かすプラットフォームにはなっていませんでした、とくにOSはMS-DOSやClassic Mac OSなどのシングルタスクですし仮想記憶等をサポートしていなかったので、まったく選択しになりませんでした。

我々の最終選択肢になったのは、Sun MicrosystemsApollo Computer Inc. の2つでした。Sun Microsystems は現在のインターネットの基礎を築いたマシンかもしれません。Unix, TCP/IP, 初期はモトローラ68000系CPUなど、標準を重視したコンピューターでした。

それに対しApollo Computerは

  • UnixとVMS(DEC社のOS)を足して2で割ったような独自OSのAEGIS
  • 初期のネットワークはトークリング方式の独自ネットワーク
  • 基本はモトローラ68000系CPUですが、、、
    • 最初のモデルは仮想記憶サポートのない68000を2つ使て仮想記憶をサポートしていました
    • 途中、68020の製造遅延からビットスライスを使った独自CPUを使っていました
    • 最後には独自RISCチップも作りました
  • EmacsをGUI化したような開発者には使いやすいUI
  • CADで重要なグラフィックの性能が高い
  • ボストン(東海岸)の会社

OSはネットワーク・ワイドでデマンドページング(仮想記憶)ができたり、CORBAにも影響を与えた分散コンピューティング環境NCS(Network Computing System) をいち早く開発しており、非常に技術力のある会社でした。当時米国のCADメーカーもほとんどApolloをプラットフォームにしていました。
また、選択に一番影響を与えたのは日本での技術サポートでした。当時Sun Microsystemsは某商社が輸入していて大学等へ販売しているだけで、CADを作ろうとする会社への技術サポートはほぼありませんでした。それに対しApollo Computerは日本法人があり、開発を支援できるエンジニアがいたが大きな利点でした。

高性能なハード・OS・ネットワークを持ち、日本で技術サポートのあるApolloを採用したことで、開発したCADの開発・販売。サポートは非常に上手く行きました。

しかし、最初は競っていたApolloとSun Microsystemsは、時間と共にSun Microsystemsの勝利へと進んで行きました。
色々な原因はあると思いますが、私はSun MicrosystemsがUnixやTCP/IP(インターネット)をおさえていたことだと思います。その当時日本ではあまり感じていませんでしたが、米国の大学(工学、理学。。。)ではみなUnixを使っていたのです、卒業して会社に入っても必然的にUnixを使うようになっていた事です、とくにシリコンバレー(西海岸)では。

Apolloは高性能なハード・OS・ネットワークが一体化した素晴らしいコンピューターでしたが、Unixという文化には勝てませんでした。これは社内システムでは高いシェアを持っていたWindowsNTがネット用サーバーでは主流にならなかったのと同じことです。

まとめ

昔話はこれくらいで・・・次回はApollo GraphQLの技術について書いていきたいと思います(いろいろと苦戦しています😅)。

もし、Apollo Computerに興味をもった方がいたら業界に痕跡を残して消えたメーカー 優秀なマシンを輩出するも業績に悩まされたApollo Computerのような記事があるので読んでみてくさい。

- about -

EY-Office代表取締役
・プログラマー
吉田裕美の
開発者向けブログ