ビジュアルプログラミングの中でも、ずば抜けた完成度

プログラムを学ぼうとする場合、もっとも手軽に始められる言語の1つがJavaScriptだ。PCと無料のテキストエディタだけあれば開発可能で、極論を言えばパソコンにインストールされているウェブブラウザへ、作成したファイルをドラッグ&ドロップするだけで実行できるという手軽さが評価されている。しかし、プログラミング初心者──特に子どもは、プログラミング学習の序盤で脱落してしまう人が多い。それは、学習した結果が“地味”だからだ。

プログラム言語の学習では、画面に「Hello」と表示させるところから始める教材が多い。初めて作ったプログラムが動いたことに感動し、このHello部分を自分の名前などに書き換えて実行してみるという行動に移れた人は、そのまま学んでいけるだろう。だが、大多数の初心者は「たったこれだけ?」と落胆し、学習モチベーションが下がってしまいがちだ。

そんなプログラミングのモチベーションという課題を解決したのが、ビジュアルプログラミングだ。プログラムをコードとしてテキストで記述するのではなく、プログラムを「ブロック」などの視覚的なオブジェクトに模し、それを繋げたり組み合わせたりして記述するプログラミング(とその言語)だ。

マサチューセッツ工科大学メディアラボが開発した「Scratch(スクラッチ)」などは、すでに世界150以上の国と地域で利用されている。はじめてゲームプログラミングも、そんなビジュアルプログラミングに属する製品だが、そのわかりやすさと完成度はずば抜けていると言っていい。

「ノードン」を繋げるだけの手軽さとエンタメ風味で、学習モチベーションを高める

このソフトでは、1つのプログラムのまとまりを「ノードン」という生物として取り扱う。最初にプログラミング画面を立ち上げると、「ボタン」と「ヒト」のノードンが表示されているので、「Bボタンが押されたかどうかを判断する」というボタンのノードンと、「ボタンを押す信号を受信したらジャンプなどをする」というヒト(画面上ではロボット)のノードンのポート(端子)を線で結ぶことで、「Bボタンを押したらヒトがジャンプする」というプログラムが完成する。

プレーヤーがやったことは「線をつなぐ」というわずかな操作だが、結果としてヒトがジャンプしたという、「ゲームでよく見る光景」が結果としてニンテンドースイッチの画面内で展開する。するとプレーヤーは「このまま学習を続けていけば、自分にも『スーパーマリオブラザーズ』のようなゲームが作れるようになるのではないか」という期待を持つ。はじめてゲームプログラミングは、このようにゲームで培われたエンタメ性があり、プレーヤーの学習モチベーションを引き上げる仕掛けが非常にうまい。