tech
パーソナルコンピュータ「Dynabook」は誰のために作られた?──アラン・ケイが言いたかったこと(阿部和広氏に聞く:前編)
「子ども×IT」をテーマにした、ITジャーナリストの星 暁雄さんによるインタビューシリーズ。第1弾は阿部 和広氏(青山学院大学非常勤講師、津田塾大学非常勤講師)。後編はこちら
Scratchを用いた子ども向けのプログラミング教育に関する取り組みで知られる阿部 和広氏に話を聞いた。阿部氏が教育に取り組む背景には、アラン・ケイの思想がある。アラン・ケイは「パーソナルコンピュータ」の提唱者として知られる研究者だが、その思想は単に計算機科学の範囲にとどまらない。アラン・ケイが本当に作りたかったものは「人が学ぶ道具としてのパーソナルコンピュータ」だったのだ。
アラン・ケイと出会い教育の道へ
阿部先生は、子ども向けプログラミング言語Scratchに関する著書「小学生からはじめるわくわくプログラミング」を出版されました。今の阿部先生の活動の中心はScratchを使った教育、と理解しているのですが。
はい、そういう理解で結構です。
では、現在に至る経緯を教えて頂けませんか。
一番最初のところからですか。
最初からお願いします。
1986年、大学時代に、Smalltalkに触れたことが始まりです。
Smalltalkに関心を持ったきっかけは、1984年に(初代の)Apple Macintoshが発売されたことです。それまでのパソコンとは全然違うことに衝撃を受けました。そこで「このコンピュータはどのようにできているのか」が気になりました。調べていくうちに、Macintoshコンピュータの思想的な源流に、アラン・ケイさんが作ったSmalltalkがあることを知りました。
1984年──2013年現在で30代より若い方々にとっては、まだ物心つく前の時代である。この時代の事情について、少し解説が必要かもしれない。
当時のパーソナルコンピュータの世界は、16ビットのMS-DOSの全盛期だった。すなわち、パソコンといえばテキスト画面を中心に使うものだった。
ところが1984年に登場した初代Macintoshは違った。ビットマップディスプレイとマウス、デスクトップメタファに基づくGUI(グラフィカルユーザーインタフェース)を標準装備しており、その先進性は当時の水準をはるかに越えるものだった。ちなみにMicrosoft Windowsの最初のバージョンはこの後、1985年に登場する。
阿部氏の動きは、多数派のパソコンユーザーと違っていた。Macintoshの登場に衝撃を受けただけでなく、「なぜこのようなコンピュータが登場したのか」という思想的な背景にまで興味を抱いたのだ。
Macintosh誕生の物語で有名なエピソードがある。Appleのスティーブ・ジョブズが米XeroxのPARC(パロアルト研究所)で研究目的で開発されたコンピュータである「Alto」を見学し、衝撃を受けた。この体験が、のちにジョブズの指揮のもと開発されたMacintoshに大きな影響を与えたとされている。
ジョブズが見学したAlto上に構築された環境こそ、当時PARCに勤務していたアラン・ケイが作り上げた「暫定Dynabook」だった。Alto上の暫定Dynabookは、ビットマップディスプレイとマウス、動的なオブジェクト指向言語とGUIベースのオペレーティング環境(Smalltalk)、そしてネットワーク(Ethernetの原型)を備えていた。これらの技術は今でこそ当たり前のように使われているが、1980年前後の当時にはごく少数の研究者だけが触れられる、図抜けて先進的な環境だったのだ。
「暫定Dynabook」とは、アラン・ケイが構想した「あらゆる年齢の子どもたちのためのパーソナルコンピュータ」である「Dynabook」のプロトタイプだった。そして当時のPARCでは、「暫定Dynabook」を子ども向けの教育に適用する研究が行われていたのだ。
卒業研究は、先生に頼み込んで無理矢理にSmalltalkで書きました。就職先はSmalltalkに取り組んでいた富士ゼロックス情報システム(FXIS)でした。
その後、Smalltalk事業は富士ゼロックスグループ外に移りました。私も独立して会社を興し、Smalltalkベースのシステム開発の仕事を手がけました。当時はもう、あらゆる案件を手がけました。エンタープライズシステムの構築もあり、リアルタイム制御にSmalltalkを使う事例もあり、業務システム開発の火消し役もしました。
1980年代後半、XeroxはSmalltalkのライセンス供給元であり、Smalltalkビジネスでは最も有力な企業だった。当時のSmalltalkは、LispやPrologと並んでAI(人工知能)言語の1つとして紹介されており、AIブームに乗ってSmalltalkは先端的な業務システム開発に適用されていた。XeroxのSmalltalkの系譜はSmalltalk環境VisualWorksとなって続いている。
阿部先生はSmalltalkによるシステム開発ビジネスの現場で活躍されていたわけですね。それでは、教育との出会いはいつ頃だったのですか?
2001年にアラン・ケイさんが来日したときです。
アラン・ケイさんから、「日本でSmalltalkをやっている人たちに会いたい」というリクエストがあり、そこで集められた何人かの一人として、私もお会いしました。日本の開発者たちは(アラン・ケイが手がけていた教育用のSmalltalk環境である)SqueakをNTTドコモのWindows CE端末「PocketPostPet」に移植したものをアラン・ケイさんにデモンストレーションしたり、といった具合で技術の話をしたがっていました。ところが、アラン・ケイさんは教育の話しかしませんでした。
当時は、私はアラン・ケイさんの最初の論文「すべての年齢の『子供たち』のためのパーソナルコンピュータ」(「小学生からはじめるわくわくプログラミング」に収録)もちゃんと読んでいなくて、「Smalltalkが子どもの教育のために生まれてきた」、ということをあまり認識していませんでした。それがこのときのアラン・ケイさんとの出会いがきっかけとなって教育の重要性に気がつきました。というよりも、アラン・ケイさんから「(教育を)やりなさい」と言われた形ですね。それ以来、教育一筋です。
「最後の石」を置く
2002年、2003年は未踏プロジェクトに参加されていますね。
アラン・ケイさんが未踏プロジェクトのPM(プロジェクトマネージャー)をした、その1年目と2年目に参加しました。
アラン・ケイさんの思惑としては、日本で優秀な人を見つけて引き抜きたかった。それ以前にも、東京工業大学の学生だった大島芳樹さん(現:Viewpoints Research Institute)がViewpoints Research Instituteに連れて行かれています。大島さんは、Squeakをシャープの Zaurus 上に移植した「ざうちゅう」(Squeak/Zaurus)を作っていて、それがアラン・ケイさんの目に止まりました。未踏プロジェクトからは、山宮隆さん(現UIEvolution株式会社)がViewpoints Researchに連れて行かれました。
2002年の未踏プロジェクトでは、著名なSmalltalkerである梅澤真史さんがリーダーを務める「NetMorph」というプロジェクトのメンバーとして参加しました。ある1台のコンピュータで動いているSqueakが隣にある別のコンピュータにもつながり、複数のコンピュータの間でSqueakのオブジェクトが渡り歩くというコンセプトです。
2003年は、自分がリーダーになって「世界聴診器」というプロジェクトをやりました。電圧、温度センサー、光センサーなどの情報をすべて「音」に変換することで、人間が認識できない電気の流れ、正確には把握できない温度などを、音程に変換して認識できるようにします。音程はフーリエ変換をかければ数値になるので、それをSqueakの入力に使うこともできます。ここでドライバ・ソフトが不要であることも特徴です。
「世界聴診器」はフィジカルコンピューティングというか、現実世界とコンピュータを結ぶデバイスの「はしり」だったのですね。
実は、MIT(マサチューセッツ工科大学)で開発が進んでいたScratchとつながる「センサーボード」と、この世界聴診器は同じ頃に並行して進んでいたプロジェクトでした。この世界聴診器プロジェクトも、MITのジョン・マロニー(Scratchのリード・プログラマ)とお互いに見せ合ったりしました。
世界聴診器は商品化されて、イーエスピー企画から「世界聴診器」として発売されています。ArduinoやGainerが出る前だったので、先駆的な製品だったと思います。
この頃から、自分のスタンスが見えてきました。私は、ものすごく優秀な人を見すぎました。大島芳樹さんを始め、(アラン・ケイがいる)Viewpoints Research Instituteに出入りしているような人たちは尋常ではない。勝てない。ではどこで勝負をかけるかというと、彼らがやらないことをやる。
優秀な人は、往々にして「最後の石」を置かない。あと一息で完成、というところで別のことに興味が向いてしまう。自分は、その「最後の石」を置いていく役割なんだ、そう思うようになりました。例えば、Squeakのローカライズの仕事は大島芳樹さんがほぼ完成させていましたが、私はそれをEtoysに対応させ、オールインワンのパッケージにする仕事をしました。それだけで導入の敷居がずいぶん下がります。
研究者肌の人は「作れる」ことが実証できるとすぐ別の仕事に興味が移ったりしがちですね。一方で阿部先生は「モノを作る」ことや、手を動かしてワークショップをするところに自分の価値を位置づけているということでしょうか。
そうですね。例えば(アラン・ケイが提唱した)Dynabookはいまだに完成していないじゃないですか。それはアランさん自身がゴールを遠ざけているからです。
子どもたちはDnyabookで何をしていたか?
1972年に発表されたアラン・ケイの論文「すべての年齢の『子供たち』のためのパーソナルコンピュータ」(A Personal Computer for Children of All Ages, 初出: the Proceedings of the ACM National Conference, Boston Aug. 1972)は、「Dynabook」の構想を記した最初の論文である。
論文は、子どもが本来持っている創造性を引き出すための「ダイナミックで対話的なメディア」としてのコンピュータ環境「Dynabook」を描写し、その実現可能性を検討するという構成になっている。Smalltalkはもともと、動いている最中のゲームのプログラムをその場で書き直して挙動の変化を確認できる「ダイナミックで対話的な環境」を実現するための言語として開発された。
そして、アラン・ケイが後に作りあげる子ども向けプログラミング環境Squeakや、MITのレズニックらが作ったScratchにも、「ダイナミックで対話的」という特性は引き継がれている。
阿部先生は、アラン・ケイのDynabook構想の最初の論文「すべての年齢の『子供たち』のためのパーソナルコンピュータ」を翻訳する取り組みをしていますね。
そのDynabookの論文ですが、「すべての年齢の子ども」という概念はとても刺激的だと思います。
この論文に登場する2人の子どもが、コンピュータを使って何をしていたのか。そこが大事です。
ただゲームをするだけでなく、2人で協力してゲームの世界を拡張する試みをしているのですね。
そうです。一方、この論文の後半では、お父さんが出張中に書類を作成したり電子ブックを読むためにコンピュータを使っています。あるいは、学生がルーズリーフの替わりにコンピュータを使っている。大人と子どもを区別していない。
つまり「何かに疑問を持ってそれを解決しようとする人」、そういう人を指して「あらゆる年齢の子ども」と言っているわけです。一方、定型的な仕事だけをしている人は「子ども」には含まれません。
創造性を発揮することと、「子ども」であることは、結びついている、ということでしょうか。
そこは(発達心理学者の)ピアジェや(数学者でLOGO言語開発者の)パパートなど、先人の研究がアラン・ケイさんに影響を与えている部分です。
アラン・ケイの思想の根底には、発達心理学者ジャン・ピアジェに始まり、数学者シーモア・パパートが発展させた「構成主義」と呼ばれる考え方がある。
発達心理学者ジャン・ピアジェは、「子どもたちは生まれながらに世界を理解しようとする欲求を持ち、それを説明するためのモデルを構築しようとしている」と考えた。この「世界を説明するためのモデル」は間違っている場合もあるが、それを実体験により訂正しながら子どもたちは成長していく。
ピアジェの弟子にあたるパパートは、子どもにとって親しみやすいプログラミング環境を用意すれば、子どもたち自身がプログラミング環境を使ってシミュレーションを繰り返すことで、正しい知識に基づく「世界を説明するモデル」を発見できると考えた。この考え方のもとに登場したのがプログラミング言語LOGOである。
アラン・ケイは、この先人の思想を受け継ぎDynabookを構想した。そのプロトタイプとしてGUIを備えたコンピュータであるAltoの上にSmalltalk環境を構築し「暫定Dynabook」を実現したのだ。論文に描かれているDynabookは、子どもたちがゲームやシミュレーションプログラムを書き直せるコンピュータ環境である。つまりDynabookは「世界を理解するモデルを修正し続けること」を支援するための機械として構想されたものだったのだ。
プログラミングの教育の話を聴いて、「子どもに(プログラミングを)やらせよう」と考える親はいても、「自分で(プログラミングを)やろう」と考える人はあまりいません。子どもと自分を区別してしまっている。それを元の、本来の状態に戻すにはどうすればいいだろうか。
MITのレズニックさんの研究所の名前が「Lifelong Kindergarten(生涯幼稚園)」です。ここは子どもの観察を重視しています。積み木を置いて子どもを呼ぶと、遊ばない子どもはいない。それはなぜか。どんな子どもでも、潜在的にモノを作りたがっています。これは先天的なものです。
だとするなら、例えば「コンピュータを与えてもゲームで遊んで終わり」なのは、それは適切な道具を与えられていないからではないか。完成したおもちゃ、ゲームなどだと、それで遊んで終わりです。
阿部先生のScratchのワークショップでも、プログラムを改造することに重きをおいていますね。
実際にプログラミング教育の現場で子どもにモノを作らせてみると、子どもの集中力、面白がり方は、予想を上回るものがあります。私が作ったScratchの教材「ネコから逃げろ!」では、猫のキャラクターが動くだけで何でこんなに喜ぶのか、と思うぐらいに子どもが喜んでくれました。
「ネコから逃げろ!」はもう何十回も教材として使ってきましたが、これが面白くない、という人はいませんでした。キャラクターに感情移入して、それをプログラミングでコントロールすることに対して、原始的な何かがあるのではないか。そう思います。
「ネコから逃げろ!」は阿部氏がScratchで作り上げた教材である。「ねずみ」のキャラクターが、「ねこ」から逃げるというシンプルなゲームの体裁を取っている。実際の教育現場では、このゲームをどんどん拡張、カスタマイズしていく形で、子どもたちのScratchへの興味、さらには創造性を引き出していくように工夫されている(教材の情報は「プログラミングで、自分だけのゲームをつくろう! プログラミングワークショップ」で参照できる)。
写真撮影:橋本 直己(※阿部先生と星さんが写っているインタビュー風景の写真は編集部にて撮影)
(後編は木曜日に公開予定です)
変更履歴:
2013年9月12日:リード部に「後編」へのリンクを追加しました。
2013年9月10日:記事末に、写真を撮影して頂いた、橋本 直己さんのクレジット表記を追加しました。初出時に抜けてしまい、大変申し訳ありませんでした。
この記事を、以下のライセンスのいずれかで提供します:「GPLv2またはそれ以降」「GFDL」「CC-BY-SA」
これ以外のライセンスをご希望の場合は、お問い合わせください。
SNSシェア