どれ使う?プログラミング教育ツール

Googleが提供するビジュアルプログラミングを活用した知育ゲーム「ブロックリー・ゲーム」

作ったプログラムがJavaScriptのコードとして表示される

「ブロックリー・ゲーム」

 Googleが開発者向けにオープンソースで提供している「Blockly」は、ブロック型ビジュアルプログラミングエディターのJavaScriptライブラリです。簡単にいえば、「子ども向けのアプリを開発したい人が、ビジュアルプログラミング部分を作る材料として使うことができるもの」で、世の中にある子ども向けのプログラミングアプリは、「Blockly」を使っているものを見かけることがよくあります。

 今回ご紹介する「ブロックリー・ゲーム(Blockly Games)」は、Googleがこの「Blockly」で作り提供している初心者向のプログラミングツールです。パズル感覚でプログラミングの基礎的な考え方に慣れる「ステージクリア型」(→「ステージクリア型」と「クリエイティブ型」の違いはこちらを参照)でWebブラウザーで手軽に使えます。

手軽に楽しめるプログラミング入門アクティビティが8種類!

 「ブロックリー・ゲーム」は、けっこう以前からあり、どちらかというと「Blockly」の使用例としてひっそりと存在し続けているような印象です。現在Googleが打ち出している子ども向けのコンピューターサイエンス教育リソースは他にもありますが、「ブロックリー・ゲーム」はステージクリア型なので手軽に楽しめるのが特長です。

 Webブラウザーで、「ブロックリー・ゲーム」にアクセスすると8種類のアクティティビティが掲載されています。

パズル、迷路、鳥……と右下に向かってだんだん難易度が上がっていく

 例えば、最初の「パズル」は、生き物の性質を組み合わせるパズル。小さな子どもがプログラミングを意識をせずに、ブロックの使い方や、属性を設定するイメージをつかむことができます。

「パズル」では生き物の名前に対して、画像、足の数、特徴を適用していく。同じルールで属性値を入れ替えているイメージが持てそう

定番を中心にいろいろあって便利

 他のアクティビティもご紹介しましょう。「迷路」は、子ども向けでは定番のキャラクターをゴールに連れていくプログラムを作るものです。シンプルながら、10のステップの中で繰り返しや条件も扱います。

「迷路」は登場するキャラクターがGoogleマップ的。キャラクターを変更できるので試してみて!

 「鳥」は角度と座標を扱ってキャラクターを動かします。虫をとって巣に戻るという独特の設定で、虫を持っているかどうかを条件に効率よい動きを考えます。

「鳥」の画面。直接的なビジュアルがなかなか強いパワーで迫る

 「タートル」はキャラクターの軌跡で図形を描きます。これも子ども向けでは定番です。

「タートル」で正方形を描いたところ

 なお、多くのアクティビティで、ステージをクリアするとブロックで作ったプログラムがJavaScriptではどんなコードになるのかを表示してくれます。「Blockly」はビジュアルエディターですが、JavaScriptやPythonなどのプログラミング言語にエクスポートできるのが特徴で、こうしてビジュアルとテキスト言語を対比させたツールがよく作られています。

クリアすると同じコードをJavaScriptで見せてくれる

 他にも、メロディのプログラムで関数の概念を扱ったり、座標の移動でアニメーションさせたり、距離を測って攻撃をしたりといったアクティビティがあり、それぞれつかんで欲しい概念のポイントが絞ってあるので、取り組みやすいです。

「音楽」では繰り返すメロディを関数で表現する

 全体的に説明が少なめでさっぱりした作りなので、アクティビティによっては一瞬何を求められているのかわからないかもしれませんが、要所で大人がちょこっと説明してあげればお子さんが楽しく取り組むことができるでしょう。また、ひとつのアクティビティの中に10ステップあるものは、意外とぐいぐい難易度があがっていくので、お子さんが困惑していたら一緒に試してみるのがおすすめです。

 2020年度から小学校でプログラミング教育が実施されています。これに伴い家庭でも手軽にプログラミングを学習できるツールが多数登場していますが、どんなツールを使えばいいのか迷ってしまう方も多いのではないでしょうか? そこで本連載では家庭でのプログラミング教育にピッタリなお勧めツールを紹介していきたいと思います。