Etoysはずしの件 まとめ

http://d.hatena.ne.jp/squeaker/20080308#p1 とそのコメント欄で書かれていた、つい先日発生した事件について、いろんな情報を追いかけたり Scottに突っ込みをいれたりした結果の、私の理解をまとめてみます。
Disclamier: これはあくまでネット上やEmailのやりとりで得られた情報です。まさに事件は「現場(OLPCオフィス @1cc やペルー)で起きている」ので、推測などが入っていることをご承知ください。また記述内容に関する責は私自身にあります。間違いはご指摘ください。

いったい何が起こったのか?

従来、XOにプリインストールされるOSイメージには、ある程度まとまった数のActivity(所謂アプリケーション)がバンドルされていました。開発段階のShip1, G1G1として出荷されたShip2はこの構成になっていました。また、ペルーやウルグァイ向けの本格Deploymentを目指して開発されてきたるUpdate.1も、つい先ごろまで同様の考え方でした。
しかし、2/29日に突然、品質責任者である Kim Quirckが "#6598: Activities for base build"というチケットを切り、ここに挙がっているActivity以外は出荷されるOSイメージから外すと「宣言」しました:

Here is the list of activities that we are currently supporting at OLPC
 and should be part of builds going forward:
 chat, browse, write, record, paint

OSイメージに入るActivityのリストはその後少し調整が入っていますから、正確な情報は Trachttp://dev.laptop.org/ticket/6598)で確認してください。

ではShip2のXOをUpdate.1に上げるとActivityが減るということか?なくなったActivityを使うには?

プリインストールされているものは減ります。不足Activityは、利用者側で別途ダウンロードする必要があります。また一部のActivityは、プリインストールされているLibraryの中に入り口があるそうです。

この決定の理由はなにか?

ペルー/ウルグァイ/メキシコ向けの導入の準備の過程で、展開されるXOにインストールされるアプリのリストについて、現地側からカスタマイズの要求があった模様です
OSイメージはQuantaの工場出荷時の初期状態の内容であり、現在は万人向けに共通の内容として製造されており、現地向けにカスタマイズされたOSイメージを製造する手段が準備できていませんでした。そのため、カスタマイズの技術的手段として、最小限のActivityだけを含んだOSイメージと、Activityでパッケージングを分離するという決定がなされました。

この決定はどのようになされたか?

このところ OLPCのキーメンバーは、Deploymentの準備と、長い間引きずってきたネットワーク(Mesh, Presence, Sharingなど)・消費電力制御(suspend)関係などの重要な問題のデバッグ・テストに忙殺されているようです。今回の方針変更はそのような状況の中で、Deployment側の切迫したニーズから、かなりあわててなされたようです。この決定はDeployment主導で、特に指揮している Walter Benderが中心になったと思われます。これは、Devel MLでの C.Scott Ananian のメッセージ(http://lists.laptop.org/pipermail/devel/2008-March/011573.html)から雰囲気が伝わってきます。リソース不足からまともなアプローチによる解決をとることが困難だったということもわかります。
決定の前後で、MLやweekly community newsなどでの十分なコミュニケーションがなく、コミュニティからの突っ込みに対してもなかなか十分な回答が得られなかったことが、混乱を招いたと思います。

あるActivityがOSイメージに含めるかどうかはどのような基準で判断されているか?

これにはいくつかの意見があり、また公開の場での十分な議論がなされないまま決定されたこと、また発言者の個人的考えが混ざって、混乱に拍車をかけた感があります。

  • Walterは正論としての判断基準をあげましたが、(http://dev.laptop.org/ticket/6598#comment:8)これは十分議論されませんでした。
  • 技術的な意味で文字どおり最低限必要なもの。取り除くと残りのものが動かなくなったり使えなくなるものは入れる。それ以外は外す。(http://dev.laptop.org/ticket/6598#comment:12 〜 14)
  • 技術的に必須でないものも含まれているのですが、それはもう「そう決まったからそう決まった」としか言いようがないと思います(
  • OSイメージに入れるものは "Supported"(Kim Quirk, http://dev.laptop.org/ticket/6598 ), Core(Walter, http://dev.laptop.org/ticket/6598#comment:8)と呼ばれたりしています。しかしこれらのTerminologyが非常に強い意味を持っていることから、人々の反感を呼びがちです。しかし、これはプリインストールされるものを仮に呼ぶ名前でしかなく、"Core"とは何か、"Supportとは何か"というように考えると破綻していることは、関係者も認めています。したがって、当初のリストに何が入っていたかというのは、一時的なものであまり意味を持っておらず、そこに反感を持つ必要はないように感じます。実際、Build699では(一時的かもしれませんが)Webすら外されてしまいました。
  • 番外:複雑で使いにくいものは外した(Albert Caharan)。以前から彼はEtoysの品質についてBertと激しい議論を交わしていており、これはAlbertの個人的偏見が混じっている感があります。当面この発言は無視してよいと思います。

constructionist lerningの代表的ソフトである Etoys、TurtleArtや Pippyなどをプリインストールソフトから外したことは、OLPCの変質を意味するのか?

おそらく、ここのとらえかたがもっとも議論を呼ぶ、またきっちり総括されなければならない部分であると思います。

  • Sugarを開発しているメンバーの一部の発言は、折にふれてこの価値観とはずれていることがありますが、今回の決定に影響を与えた形跡は見つけられません。
  • XOに入れておくソフトは、個別の導入対象国側の要件に応じて個別に決めるものであって、デフォルトのイメージの内容はあまり関係ありません。また、Ship2の内容はあくまでG1G1ユーザ向けへの出荷が主眼となっており、本来のdeploymentとは関係ありません。そうすると、OLPCのポリシーについて判断するのであれば、デフォルトイメージよりは導入に向けた調整活動の内容やその結果(個別対象国向けの導入アプリリスト)について検討するほうがよさそうに思われます。
  • さきほどのAlbert Kaharanの発言に関して再検討すると、Walterら中心メンバーによって、"Hard fun"がOLPCの価値観であることが以前から何回か確認されており、複雑さが判断基準になったとは考えられないです。
  • 依然としてWalterなどdeploymentチームが現地環境に教育ソフトを入れようとしていることは、(http://lists.laptop.org/pipermail/devel/2008-March/011510.html)で確認されており、少なくともペルーについてはそれは成功したことが確認できます。(ペルー向けのActivityリストは Trac#6588(http://dev.laptop.org/attachment/ticket/6588/activities.defaults 参照)

これらから総合すると、OLPC側のバックボーンとなる人々の思想が変わったとは考えにくいです。しかし、コミュニケーションがまずかったため、心ある人々に動揺を与えてしまったと感じます。

導入対象国側はどのように考えているのか?

少なくとも、今回の変更はOLPC側が希望したものというより、導入対象国側の要件を満たす技術的手段として導入されています。彼らが何を考えているのかは重要な要素です。今のところこれはネットでアクセスできる表面的な情報から推測するしかありません。しかし、いくつかのヒントは見出せます。

  • ペルー向けのActivityリスト(http://dev.laptop.org/attachment/ticket/6588/activities.defaults)は、Sugarのフレームに表示される順番も定義しています。これを見ると、EtoysやTurtleArtなど"Hard Fun"系は割と後ろに置かれているのですが、Scratchがかなり前のほうにあることに気がつきます。Scratch自体は先日プロトタイプが出たところで、Sugarとの統合はまったくできておらず、完成度はまだ高くありません。それにも関わらず採用され、前のほうに置かれていることは注目すべきです。実際にScratchとEtoysを比べてみると、タイルを並べてスクリプトを書くなど似ているところが多いですが、個人的な感想として、ScratchはUIがよく練られており敷居が低いと感じます。現地の人もそのように考えたのではないかと推測します。そうすると、Albertの発言もわずかながら真実を含んでいたかもしれません。
  • 導入対象国側がHard Funを拒否した形跡は見つけられません。
  • Ivan Krsticのペルーでの体験記(http://radian.org/notebook/astounded-in-arahuay)を読むと、現地の教師が見た大きな変化には、子供たちにメディアを与えたことが強く有機的に関わっていることが読み取れます。そういう意味で、Webでの調べもの、メッシュによるやりとり、XO上での書き物といった「アプライアンス」的な機能すら、このプロジェクトでは重要なツールとなりえることを示しています。Hard Fun onlyではないということですね。
  • 以前NHKでウルグァイのパイロットの様子が報道された際、インターネットアプライアンスとしての使われ方が中心にとりあげられ、ちょっとした議論になりましたが(http://d.hatena.ne.jp/abee2/20080114/1200286356)、見方を変えると一定の真実を描いていたかもしれません。それが現地にどのような変化を与えていたかは、正しく表現されていなかったかもしれませんが。

結局、あなたはどう考えているのか?

私自身かなり動揺したことは認めます。コミュニケーションや意志決定には大きな問題がありますが、DevelでのScottとの議論の結果、技術的な決定自体はそれほど問題ではないと考えるようになりました。今回のことは、Update.1の開発の追い込みの時間が切迫した状況で、技術的問題に対する苦肉の策として起こったことだと思います。まだUpdate.1は完成しておらず関係者は最後の努力を続けていますから、しばらくはあまりこの件の議論で時間をとらせず、Update.1がひと段落つき関係者に余裕ができてから、冷静に議論したいです。