教育研究家とケンカして作った子どもプログラマー向けキーボードとは?
「部屋の中のゾウ」(The elephant in the room)という言葉をご存じだろうか? 明らかに問題があるのにみんなが見て見ぬふりをしている事柄のことだ。どんな業界にもあったりするものだが、 ちょっとした対処で取り除くことのできる問題であることがままある。そうだとしたら、それを放っておくのはつまらないことだ。
一緒に子ども向けのプログラミングコンテストである全国小中学生プログラミング大会(今年は9月2日が〆切)を立ち上げたギリア株式会社の清水氏が、子どもがプログラミングで使うためのキーボードを作ったという。どんなキーボードか気になって御徒町にある同社に出かけて話を聞いてみることにした。
プログラミング教室で、コードを音読したときに間違いが少ないということが重要
―― なぜキーボードを作ることになったんですか?
清水 ある教育研究家の方とのやりとりがキッカケなんですよ。その人は、小学校ではBASICやScratchだというんです。それが教育界の常識であると。
―― 現状はそうなんですかね。
清水 ほとんどケンカみたいになったんだけど、僕は、BASICを子供に教えるのは虐待だと思っているんですよ。それについてはここでは置いておきますが。その方は、なぜBASICなのかと理由を聞くと使っているキーボードが「大文字」しか刻印されていないからだといんうです。
―― モダンで気軽に使える言語は「小文字」だから合わないのだと、なるほど。
清水 「じゃ、キーボードを替えればいいじゃん」と言ったんです。ということで作ることになりました。はじめてアルファベットに触れるような小学生にもわかる「大文字」も「小文字」も刻印されたキーボードです。
―― 「アール」とか「エー」とか読み方まで書いてある! このシフトキーもいいですね。ちゃんとこのキーを押すとキートップの刻印のどちらが入るようになるかが示してある。
「Shift」(シフト)キーを押すと「z」なら■の抜き文字になった「Z」に替わることがキートップで表現されている。
清水 いまMacのシフトキーってどうなっているか知っていますか? ただの「上矢印」が刻印されています。使い慣れた大人の話ではなくて、子どもがはじめてキーボードに触れるときの話ですよ。
―― 意味不明で「やだなー」という感じになりますね。そもそも、「シフト」キーは機械仕掛けの時代のタイプライターで活字の機構全体をグニュっと押し下げることで、大文字と小文字を打ち分けていた。そんなこと、たぶんいま生きている人の7割くらい知らない可能性がある。
清水 「k」のキーをシフトキーを押しながらだと「K」になるんだよというのがすぐに理解できるようにしてあるんです。
―― このキートップ自体がマニュアルになっているんだ。いいですね。
清水 あとはプリントスクリーンとか「PrtSc」とかあっても分からない。
―― 「PrntScrn」と訳されていたり、Print Screenでもないあやしさ。キーボードの上にはなんだか分からないキーがいくつも残っていますよね。
清水 いまだに何に使うのか分からない。
―― 1970年代に活躍した大型コンピューターなどの端末の伝統ですかね。「Sys Rq」とか「Break」ブレイクとか。キーボードまわりに詳しい人に突っ込まれそうですが、亡霊のようなキーだよね。
清水 小学生だと「Page Up」も「パゲウプ」とかになったり。ということで、特殊キーも読み方を書いてある。
―― 大人も読み方を知らないキーもありそう。
清水 それを音読できるようにすることってリテラシシーをあげるうえですごく大事だと思うのです。「A」を「えー」と読みが入っているのは、つまり英語の勉強がまずできるともいえる。
特殊キーも略語になっていることもあり見分けにくいのでカナの読み方が刻印されている。
―― 特殊キーもだけど、プログラミングということでいうと記号の間違いってバグの典型ですよね。米国の金星探査機の打ち上げ失敗の理由がFORTRANのプログラムで「,」(カンマ)を「.」(ピリオド)と打ち間違えていたという伝説があります。たった1文字で物凄い国家予算が泡と消えたという。
清水 教室では「カンマ押して」というと「ハーイ、先生、どのキーですか?」ということになるんですよ。その労力が結構すごいのです。
―― 分かります。「0」(ゼロ)と「O」(オー)もバカみたいな話だけど、同じような感じですよね。「キミキミ、ここゼロじゃなくてオーと打ってるでしょ」と言われても、見た目ほとんど一緒だったり。そもそも、むかしのタイプライターは「1」(数字のイチ)と「l」(小文字のエル)とか「0」(数字のゼロ)を「O」(大文字のオー)と兼用していたりしましたからね。
私の所有しているタイプライター「Olivetti valentine」(復刻版)の場合は、「2」の左側がダミーのキーになっていて、「l」(小文字のエル)で「1」(数字のイチ)を打つようになっている。なお、シフトキーには何も刻印されていない。
―― ところで、「(」(カッコ)に対して閉じカッコ「)」は「コッカ」という読みにしているんですね(注:Lispというプログラミング言語の世界ではコッカという呼び方がされている)。
清水 これも、結構、迷ったところなんだけどそのほうが分かりやすいんですよ。「カッコ閉じ」だと長いし、「閉じカッコ」もヘン。
―― だとすると、「^」(アクサンシフルコンフレックス)とかどうなっているんですか? JIS(JIS X 201)とかだと正式にはそういう名前になっているでしょう。
清水 「ハット」ですね。
―― 「@」は、JISでは「単価記号」でしたかね?
清水 「アット」ですよ。
―― あとキーボードでは日本語のON/OFFとかも分からないですよねぇ。
清水 それ、僕じゃなんともならない。「半角/全角」のままです。OSや入力ソフトによって違いますからね。Raspberry PiとWindowsで違ってくる。あとは、コマンドキーも、アップルのあれはコンピューター以前の古い記号なんだよね。
―― あのフニャフニャの「プロペラキー」とか呼ばれる奴、そうですよね。
清水 あれは訳がわからないから、UEIのマーク、「不死鳥」キーにしゃちった。
―― キーボードを作るのはプログラマーの夢ですからね。日本における最初のハッカーと言われている東京大学名誉教授の和田英一さん考案の「Happy Hacking Keyboard」(PFU)がありますね。
清水 「¥」(円マーク)じゃなくて「\」(バックスラッシュ)がちゃんとある。プログラマー用なのでこうなっているんです。「`」(バッククォート)と「'」(シングルクォート)を間違う人もいる。バッククォートは滅多に使わない。あと「:」(コロン)と「;」(セミコロン)もよく間違われます。僕らは、それぞれ2つの文字の識別がDNAレベルに近いくらい刷り込まれているけど、子どもや初心者は見分けがつかない。
「¥」(円記号)ではなく「\」(バックスラッシュ)になっているのはプログラマー用だから。
―― あと「_」(アンダースコア)も「-」(ハイフン)や漢字の「ー」(音引き)と子どもや初心者には見分けがつかない。
清水 そうですね。ちなみ「-」は、英文字側は「ハイフン」、テンキー側は「マイナス」になっています。ここも迷ったんだけど、テンキーのほうはプラスの上にあるから「マイナス」だよと。大切なのは、プログラミング教室で、コードを音読したときに間違いが少ないということが重要なんです。
―― なるほどそうですね。
BBQソースか、秋葉原式キーボードか?
清水 このキーボードは、買うのは、お父さん、お母さん、それから祖父母です。それで、恥ずかしげもなく自分の写真を、某BBQソースのパッケージよろしく箱につけたんです。
―― そのほうが買いやすい。
清水 そうそう。
―― だとしたら、裏側に「ねん・くみ・なまえ」を書き込めるようにしてほしかった。
清水 なるほど、ねん・くみ・なまえ。
―― そういう領域の商品なんですよね?
清水 ジュースを誤ってキーボード上にこぼしたときの対策として水抜き用の穴もある。これは、たまたまそういうキーボードをベースにしているだけなんですけどね。
―― それでもこのキーボードに向いてますよね。
清水 ちなみに、最初は、これシールで作ったんですよ。Mac用のシール作ったんだけど、なんとシールを貼るのが凄い大変。
―― いいクエストなのでは?
清水 勉強にはなるけどね。Macは機種が限られているから対応しやすいんだけど、Mac使える子どもって金持ちの家の子ですよね。これってRaspberry Piを使う子どもにも届けたかった。
―― Raspberry Piだったらいまどき凄い少ない予算で、プログラミングからワープロから全部できますからね。『子供の科学』のジブン専用パソコンみたいな感じですよね。
清水 そうなんですよ。Raspberry Piと組み合わせて使ってほしい。
―― Windows なのか、Macなのか、お金がかかるならこう工夫するみたいな姿勢が大切です。
清水 キーボードもそうですが、大人が歩み寄ることが大切なんじゃないかと。こんな簡単なことをなぜここまでやってこなかったのか? そのヘンで売っているシールに手書きで作ってもいいわけですよね。
―― 現状維持バイアスですね。気づいていた人はいるはずでやられてもいたかもしれないけどこういう形でいま出てくることに意味がある。はっきり言って人類への貢献といってもおかしくないと思いますよ。みんなのこういう積み重ねで世界は変わっていくんです。ちなみに、いつから発売なんですか?
清水 今月末にツクモさんから発売です。
AI教育で大切なことはなにか?
―― 「全国小中学生プログラミング大会」(以下JJPC)だけど、毎回、バンバン応募者が増えている。今年は、9月2日(月)が〆切ですね(詳しい応募要項などはコチラ)。
清水 最初は、夏休みが終わって子どもがひと段落して先生が見てあげて応募してねというストーリーだったけど、さすがに状況は変わりましたね。
―― 昨年はとくに審査委員長の河口洋一郎先生が、「今後のプログラミング教育を占うようなものになった」と評した作品がグランプリでした。完成したソフトもさることながら、どのように考えてどう作ったかという過程が素晴らしかった。
9/2〆切で作品募集中の第4回 全国小中学生プログラミング大会
清水 プログラミング教育関係といったら、これから大切なのはAI教育ですね。内閣のAI戦略で、全学年に対してAI教育をやることになりました。また文科省は大混乱となっていると思います。5年前のプログラミング教育を2020年に開始と同じくらい混乱していると思うんだけど。
―― 具体的になにやるんですか?
清水 具体的には書いてない。AI教育をせよとしか書いてない。国立大学は全学科にAI教育を入れるということで機運が高まっているそうなんですが、AI教育ってなんじゃらほいという。グーグルのTensoeFlowを学ぶのか? そういうもの1つ1つはすぐに風化してしまいます。
―― しかも、全員がTensorFlowやる必要ないですね。
清水 実は、プログラミング教育よりもAI教育のほうが過激なんですよ。プログラミング教育って、せいぜい小中学生に学ばせるだったのが、今回のAI教育の話って、社会人も含めて全日本人を再教育するというのですよ。これかなり野心的な目標ですよね。
―― ああでも中国の大型書店に行くと社会人がめちゃAI勉強しているのが分かります。だから全然おかしくない気もしますね。
清水 問題はどう教えるかなんですが、プログラミング教育とAI教育の決定的な違いって、プログラミング教育って積み上げていく教育なんですね。この部品があります、この部品があります、これができます。次は何ができるか考えましょう。
―― 順を追って考えれば答えにたどりつきますからね。
清水 ところが、AI教育って教え方と使い方についての教育だからもっと難しい話になる。AIとプログラミングは両輪だと思っているんですが、AIって何か? 自分好みのAIを作るにはどうすればよいか? どう教育するか? それを使うにはどうするか? それで、使ったら何ができるか? というところではじめてプログラミングが出てくる。あべこべというか。AIが先くらいがよくて、AIを先に勉強して、その次にプログラムを使ったらAIをこう活用できるみたいなのがよいと思う。
―― 分かる分かる。
清水 二階建てで教えないといけないというのが、いまこれから起こることです。
米国でDIY Robocarsなどのコミュニティで注目されているドンキーカー
―― 私が、この半年はまっている「ドンキーカー」(注:RCカーにRaspberry Piを搭載してAIで自動走行するキット)とか、まさにそういう話じゃないですか。
清水 そうですね。
―― いままでのプログラムというか、2、3年前のプログラムだったらコースの白い線を認識して右に見えたらからハンドルを左に切るとかIF/THENのプログラムでああいうのは走らせていたと思うんですよ。いろんなセンサーもたくさん付けて超複雑なプログラムで動いていた。ところが、そういうプログラムって、何かの都合で人が前を横切っただけで使えなくなったりする。そういうケースが起こりうると判明した時点でプログラムに手を入れなくてはならなくなる。ドンキーカーの場合は、漠然と風景を認識して走っているだけだから、そういうケースが起きるんだったら「止まるんだよ」とあとから犬のように教えてやればいい。そういうAIの基本的な性質をまず学ぶ必要がある。
清水 そうそう。
―― 先日、うちのセミナーに清水社長がやってきて、私のドンキーカーを借りて走らせたじゃないですか。オフィスの床にガムテープを貼ったコースを走らせていたわけだけど、赤いコーンを、ドンキーカーは10周ほど避けるように教えたら上手に避けるようになる。ほとんどのクルマは人間が運転しているかのように綺麗にかわしていくんだけど、清水くんが教えたドンキーカーは、たまたま何かの都合でコーンにひっかかって目の前が真っ赤になっちゃった。
清水 見たことのない真っ赤な視界になったので大興奮(笑)。
―― あれは機械学習の悪い例のように見えるけど、たぶん1回学習してやれば解決するんですよね。というか学習がさすがに15周くらいでは足りな過ぎただけ。いままでのプログラミングでは、すべての起こりうるケースを想定することで一般にプログラムは書いていたわけですね。しかし、それだとガッチリ固くて融通がきかない。ところが、ドンキーカーは、入門編の信じられないくらい簡単なプログラムでほとんど人間のように走ってしまう。
清水 ドンキーカーは、JJPCの最終審査&表彰式でデモをやったらいいよね。
―― そうなんだよね。
清水 やったら盛り上がる。AIがどういうものかも分かる。
―― 学び方も、まさにプログラミングのときのように積み上げ式じゃなくていいのですよね。人工知能で、だんだん賢くなるみたいな教材があるけどそれはプログラミング教育的な積み上げ的な発想から逃れられていない気がします。それから、MNIST(手書き数字)とか、犬と猫の画像を使ったAIの入門があります。どこの誰だか分からない人が作ったデータを無菌状態のバーチャル上でやるのと自分が実空間でドンキーカーを走らせるのでは得られる学びがまるで違ってくる。これで、何ができそうかというセンスを獲得することが大切なんですよ。
清水 そうですよね。
―― AIの教え方ってそういうのがよいと思うんですよ。
清水 ドンキーカーは、子どもに直接見せたいね。最終審査&表彰式はどこでやるの?
―― 秋葉原のダイビルで10月20日(日)です。というか、私は、ドンキーカーを秋葉原の歩行者天国で走らせたいんですよ。いまの秋葉原のコンテンツの街としてのアキバもよいと思うんだけど、テック感も巻き返してもよいでしょう。そのために秋葉原の中央通りの歩行者天国をガンガン走るとか、神田明神まで行って帰ってくるレースとかやりたかった。
清水 できないの?
―― 警察の許可を受けるのが大変らしい。あるいは、ベルサール秋葉原の1階。いまのドンキーカーは、屋内のほうが安定して走れるので屋根があるそっちのほうがよいのかも知れない。スポンサーを募集中ですけど。
コース上に立てたコーンをドンキーカーが上手に避けていくようす。私のドンキーカーを借りて自動走行させていた清水氏のドンキーカーが最後に暴走しているようすが最後にでてくる。
清水 子どものプログラミングに関していうと、裾野が広がったのはあって教材も世の中にたくさんあるけど絞りこまれてきていますね。親のほうもだいぶ目が肥えてきていて、ちゃんとしたところに通わせたいというふうになってきています。
―― なるほど。
清水 子どものプログラミングって英語と比較すると特徴がわかります。英語って成果が分かりにくい。あれって、なんかやって読めたね。音読したね。ところが、そのあと実用的に使うチャンスがない。
―― たまたま外国人と観光地で出会って道を教えるくらいしかない。
清水 そのとき全然喋れない。だから英語の場合は、できてる感がなかなかないのにプログラミングはある程度いくとセルフドライブできる。自学自習できる。それをプログラムの形で確認できる。だからはまれる。
―― JJPCも「作りたいものを作る」というコンセプトを忘れないようにしたいよね。コンテストは、そのきっかけでさえあればいい。何かを作りたいという目標があったら、そのために、英語なら英語、数学なら数学を学びますからね。とにかく動くものを作ろうすることが大切。その目標が、自分を動かしてくれますからね。
清水 それで思い出したのは、昔、アスキーのゲームの記事で覚えているのがあるんですよ。
―― 前に私に突っ込んだことがある記事? 画像を回転させる話とかの『月刊アスキー』のどのあたりの号だったか?
清水 だいたい2月号でしたね、『月刊アスキー』のゲーム特集は。
―― そうだっけ?(注:1992年から4年連続で2月号がゲーム特集など)
清水 これに関しては、それじゃなかった。MSXのポケットブックみたいなやつのCGの話で、レイトレーシングが8ビットなのでめちゃ遅いので、球体を描くときに「とくに理由はないがコサインで求めるといい」って書いてあったんですよ。コサインでそれっぽくなる。ただなぜこれがよいのか誰にも分からないんだよねみたいな調子で書いてあった。凄いなと思った。学術誌では絶対そう書かない。コンピューターの本だから許されるんですよね。
―― 正直なんですよね。
清水 そうコンピューターの世界だと割りとそういうことを白状してしまうんだけど、一般的なお勉強の世界じゃそれ言っちゃおしまいみたいなことですよね。
―― 清水社長の書いたAIの本だって「ディープラーニングは難しい。ボクも分からなかったけどプログラムで動かしたら分かった」と書いてあるじゃないですか(笑)。
清水 ま、それと同じ話ですね(笑)。
―― そこでもとても重要な部分ですね。
清水 ここ2、3年でいうと、宇宙際タイヒミューラー理論というのが、あれも結局、数学者の告白ですよね。実は、足し算と掛け算の関係はよくわかっていないという。壮絶な告白だと思うわけ。となると、よく分かっていないというのを隠して教えているわけじゃない。だから、逆にいうとボクらが数学だから正しいと思ったり、言われたりしていることって、まったく的外れな可能性がある。数学を使わないと人間は科学を理解できないですよね。数式がまったく出てこない科学の論文ってほとんどありえないわけじゃないですか。でも、分からないまま使うみたいなね。
―― ことばではあいまいだから数式で表現するわけですけどね。
清水 さっきのAI教育の話に戻ると、わかんないまま使っても大丈夫だよというのが、AI教育だと思うんです。プログラミング教育も同じでしたね。数学教育の問題点ってわかっていないやつはダメだどいうメッセージじゃないですか。そうじゃなくて、分からなくてもいいんですよ、分かんなくても、思った通りに使えることが大事なんですよ、ということを伝えていきたい。プログラミング教育、AI教育のポイントはそこにあると思うんですよ。
最後に付けくわえさせてもらうと、教育研究家の先生は、学校におけるプログラミング教育の現状を真摯にしかもたぶん正しく伝えたのだと思う。それから、日本のメーカーはカッコつけずにこういうキーボードを真似するといいと思う(ツクモさんが発売予定だったらすいません)。なお、ツクモさんのページはコチラ。
コンピューターサイエンスやAIなどの分野では、学術誌や学会発表ではなく、arXivのようなサイトに論文を投稿するようになってきた。そのほうが査読にかかる時間がないため時代にあったスピードの研究ができる。学校というものに求められるしくみも問い直される時代が来そうだ。
清水氏とは、以前も、子どものプログラミングについては「プログラミングは小学生からするべき」清水亮氏・遠藤諭氏が語るその理由」と題した対談記事をやらせてもらっている。
ドンキーカーに関しては、「テクノロジーの大波は「オモチャ」のようなものからやってくる」を参照いただくのがよいと思う。8月3、4日に開催されたMaker Faire Tokyo 2019で、フェイスブックグループ「AIでRCカーを走らせよう!」の仲間たちの協力で走行会とレースを行わせてもらった。その中で、「子ども v.s. AI」と題して子どもが操作するラジコンカーと学習済みAIによるドンキーカーのレースをやった。子どもとAI、だいたいいい勝負になっていた。
遠藤諭(えんどうさとし)
株式会社角川アスキー総合研究所 主席研究員。月刊アスキー編集長などを経て、2013年より現職。雑誌編集のかたわらミリオンセラーとなった『マーフィーの法則』など書籍の企画も手掛ける。角川アスキー総研では、スマートフォンとネットの時代の人々のライフスタイルに関して、調査・コンサルティングを行っている。著書に、『近代プログラマの夕』(ホーテンス・S・エンドウ名義、アスキー)、『計算機屋かく戦えり』など。
Twitter:@hortense667Mastodon:https://mstdn.jp/@hortense667