一般記事

「子ども向けプログラミング教育」のいま─Minecraftが拓く新たな「学び」の可能性

この記事を読むのに必要な時間:およそ 4 分

不用意なプログラミング教育への懸念

しかし筆者のように,子どものころからプログラミングをしてきた人間からすると,昨今の「プログラミング教育」に対する懸念もあります。それはプログラミングが「お習い事」になってしまわないか,という心配です。

筆者の母親はピアノ教師として,近所の少女たちを集め,月謝をもらって生活していました。これは「お習い事」なわけです。筆者自身も幼いころ,母親から直々にピアノを習ったのですが,すぐに嫌になってしまいました。それ以来,ピアノも音楽も嫌いです。

実母から厳しい教育を受けることの弊害もさることながら,⁠ピアノをやってみたい」というモチベーションが,通常の「お習い事」にやってくる少女たちよりも低かったのだと思います。

また,父親の方針で私は幼稚園児のころから英語を習いに行っていました。これが嫌で嫌でたまりませんでした。何しろ幼稚園児です。同じ英語教室には高校生や中学生,下手をしたら社会人もいます。そんな中にぽつんと幼稚園児が入れられても,会話すらままなりません。私もかわいくない子どもだったので,まわりに溶け込めず,英語もわからず,ただただ2時間その場にいるという苦痛に耐える日々でした。

しかし家に戻ると,満面の笑みで両親が「英語楽しかった?」と聞いてくるので,子ども心ながらに両親は良かれと思ってやっているのだ,と感じ取って「うん」と嘘をつき続けていました。楽しくもないのに楽しいと嘘をつき続けるのが本当につらい経験でした。

小学4年生のころについに爆発して,⁠もう英語に行きたくない」と言うと両親はたいへん驚きました。しかし自我が芽生えていた私は,初めて自分の意志を表明できたのです。

あまりにも早い英才教育を受けさせようとするとこのように失敗してしまいます。

今,私が英会話教室に通うとしたら,純粋に自分の教養のためと割り切れるだろうと思います。

私は結局,21歳でアメリカの会社で働くことになったわけですが,そのとき,ビックリするほど英語が喋れなくて驚きました。いったいあの苦痛の日々はなんだったのか,という感じです。

「お習い事」というのは,子どもが本当に心から通いたい,と思って通っているということはむしろ少ないのではないかと思います。物心つくころにはやらされていて,でも実際にはやりたくなくて,なんていう話をよく聞きます。そうなると,その人はもうそれがイヤになります。

プログラミング教育も,あまりに早くから親の強い意向で強要すると,逆効果になりかねません。これは義務教育にプログラミングが組み込まれる時も,同様の懸念があります。

子どもたちをどうやってプログラミングに目覚めさせるか

反対に,私がなぜプログラミングに夢中になったのかといえば,誰からも強要されなかったからです。

父は私が生まれたときから私にプログラミングをさせたがっていました。しかし当時はプログラミングを教えてくれる塾などあるはずもありません。また,父もプログラミングができたわけではありませんでした。そこで父が考えたのは,私をとにかくコンピュータに触れさせるということです。

近隣の大学のオープンキャンパスがあれば連れていき,野辺山の電波天文台のオープンキャンパスにも連れていき,とにかく行く先々で私にコンピュータを見せたのです。そして私が自発的にコンピュータに興味を持つようになると,父は大借金をしてパソコンを買いました。当時パソコンは非常に高価で,サラリーマンの月収の何倍という値段がするのは常識でした。

それから父がしたことは,私に小遣いを与え,プログラミングに関する本を私が欲しがったら,とりあえずそれを買い与えるということです。

私はただそれだけでプログラミングに夢中になりました。プログラミングは私にとっての砂場であり,夢中になれる遊び場でした。外で誰とも遊ばなくても,プログラミングをしているだけで幸せでした。

大人になってから,ピアノを弾けるミュージシャンと知り合うと,なぜ自分はあのときピアノを選ばなかったのだろうかとときどき自問します。しかしそれは,強要されたか自発的に興味を持ったか,という違いしかないような気がします。

どのワークショップに行かせるべきか?

子どもが興味を持続するには,常に感動を与えることが重要です。その意味では,最初からはりきってあまりに難しいワークショップに参加させてしまうと,子どもは興味を失ってしまう可能性があるということです。まずは触れるところから,次に追求するところへ,最後にもっと本格的なプログラミングを学ぶような教え方が理想的かもしれません。

また,1つの手法(プログラミング言語)に固執すると,せっかく「ルールを構築できる」という柔軟性を学んでいるのに,柔軟性のない頭が育ってしまいます。実際,プログラマは1つの言語に固執するあまり,最初に学んだプログラミング言語(いわばプログラミング言語の母語)からなかなか抜け出せない状態に陥りがちです。しかしそれではプログラマとしての成長は止まってしまいます。さまざまな言語を使いこなすことでプログラマはさまざまな思考法を取り入れて成長していくのです。

したがって,特定のワークショップに固執するのではなく,複数のワークショップを渡り歩き,むしろ積極的にいろいろな言語に触れさせることで,子どもを常に刺激し,⁠同じことを解決するにもさまざまなやり方(プログラミング言語)がある」ということを教えたほうが,プログラミングへの目覚めは早いのではないかと思います。

プログラミングの世界に触れる,最初の入り口としてのMinecraft

最近,小中学生の間でMinecraft(マインクラフト)というゲームが密かな人気を集めています。

これは,ブロックで作られた世界で,木を切り倒して材木を作り,材木を組み合わせて斧とピッケルを作り,ピッケルで石を切り崩して,手に入れた石で釜を作り,釜で材木を燃やして木炭を作り,木炭と材木を組み合わせて松明(たいまつ)を作るといったように,世界へ積極的に関わることで世界を構築していくゲームです。

ごく単純なルールが隠されており,そのルールを獲得し,外敵から身を守るというゲーム本来のおもしろさと,ブロックを組み合わせて自分の家や城や要塞を自分の思い通りの形として構築していくというクリエーション環境としてのおもしろさの両方を併せ持つゲームで,全世界で2000万人以上がプレイしていると言われています。

特筆すべきは,Minecraftの世界には特殊な魔石レッドストーンと,レッドストーンを組み合わせて簡単な回路を作るしくみがあることです。これはレッドストーン回路と呼ばれ,いわばプログラミングが具象化されたものです。Minecraftをやりこんでくると,自然にこのレッドストーン回路に興味が行くようになっています。

なぜなら,レッドストーン回路をうまく使うことで,より効率的に資源を集めたり,冒険したりできるようになるからです。

さらにレッドストーン回路やブロックの配置を組み合わせて,自動的にモンスターを湧かせて殺す,トラップタワーというしくみを構築することもできます。

Minecraftには定番の攻略本と呼べるものはなく,子どもたちはYouTubeで全世界のプレイヤーのプレイを見ながら,見よう見まねでトラップタワーやレッドストーン回路を作ることに夢中になっているのです。

これはプログラミングへの入り口として,まさしく理想的な環境と言えます。何しろゲームとして普通におもしろく,そして攻略を極めていく過程でごく簡単なレッドストーン回路から,複雑なトラップタワーまで,思考の枠組みをステップアップして学ぶことができるからです。

さらに,英ラズベリーパイ財団が開発した教育用コンピュータ「Raspberry Pi」では,専用に開発されたMincraft Piが動作するようになっていて,さらにこのMinecraft Piは,Scratchという,外部のプログラミング言語からコントロール可能になっています(Scratch2MCPI⁠⁠。

レッドストーン回路は原理的には完全チューリングマシンを構築することが可能なので,Minecraftの世界の中だけでプログラム可能なコンピュータを構築することもできますし,実際に作った人もいます。けれども,それは巨大建造物になってしまいます。

Scratchはマサチューセッツ工科大学(MIT)で開発された教育用ビジュアルプログラミング言語で,レッドストーン回路より高度なプログラミングができるようになっています。

Minecraftに一通り飽きてしまったら,今度はScratch2MCPIでScratchとMinecraftを組み合わせたプログラミングに挑戦させてみると,より子どもの理解と興味を深めることができるのではないかと期待されています。

そしてScratchの限界を感じ,飽きてしまったら,そこから改めてJavaScriptやObjective-Cといった本格的なプログラミング言語の世界に飛び込んでいくといいかもしれません。

当然,それらの世界はとても手強いので,何度も挫折してScratchにもどったり,Minecraftに戻ったりするかもしれませんが,強要せずほうっておくと,そのうち自分で難関を乗り越える力がつくようになります。

筆者が考えるプログラミング教育にとって最善の方法は,環境だけ用意して放っておく,といういささか無責任なものではあるのですが,実際にプログラミングを使いこなすプログラマ達を見ると,これしかないのではないかと思えてならないのです。

レッドストーンもプログラミングも楽しめるイベント開催!
「Minecraft × Education 2015 ~こどもとおとなのためのMinecraft~」
URL:http://www.mcedu.jp/
ゲームを使った教育を考えるイベント「Minecraft×Education2015」8/8,9に開催
URL:http://gihyo.jp/news/info/2015/07/1601

著者プロフィール

清水亮(しみずりょう)

株式会社ユビキタスエンターテインメント代表取締役社長 兼 CEO。電気通信大学在学中に米Microsoft Corp.の次世代ゲーム機向けOSの開発に関わり,1998年末に株式会社ドワンゴ入社。1999年に同社で携帯電話事業を立ち上げる。2002年退社し,米DWANGO North America Inc.のコンテント開発担当副社長を経て2003年独立。 2005年,独立行政法人情報処理推進機構により,天才プログラマー/スーパークリエイターとして認定される。