プログラミング教育の教材「CodeMonkey」の基本と設計思想

こんにちは、汐留みずほです。

最近、個人的にプログラミング教育に関わることがありまして、今回はCodeMonkeyというプログラミング学習ソフトをご紹介したいと思います。

CodeMonkeyとは

サルの「モンタ」を、CoffeeScriptによって操作してバナナをゲットさせていくプログラミング学習ソフトで、Webブラウザ上で動作するオンラインアプリです。特徴として

  • キーボードを使ってコードを入力する
  • プログラミングでパズルゲームを解いていくような感じ
  • CoffeeScriptなのでオブジェクト指向の要素がある
  • より短いコード(正確には、より少ない行数)で解くことを推奨している
  • 有料版は6480円/年。無料でも最初の30ステージくらいはプレイできる。

バナナをゲットするという目的ははっきりしているので自由度は高くなく「何をすれば良いのかわからない」ということにならない一方で、ゼロからコードを書いてクリアするよう要求されてくるなど、そのゲームバランスは絶妙です。

先に進むほどどんどん内容が深くなっていくので、子供だけでなく大人にもやり応えのある教材になっているのが特徴です。

それでは具体的に見ていきましょう

このステージを参考に、CodeMonkeyの基本をご説明します。

橋を渡って逆コの字型に移動してバナナを取りにいけばいいので、ここでのコードはこのようになります。
①左を向く
②4歩直進する
③右を向く
④16歩直進する
⑤右を向く
⑥4歩直進する

ちなみに何歩あるけばいいかという「距離」を測るには、左上にある定規を使います(最初からゲームを進めているとチュートリアルで説明されます)。

このようにしてステージをクリアしていくのが基本となります。

CodeMonkeyの思想

例えばこのステージですが

普通に解いたらこうなると思います。
①10歩直進する
②180度回転する(後ろを向く)
③20歩直進する

クリアはできますが、評価が3段階評価の1になってしまいました。

ステージの導入部で説明されるのですが、stepに負の数を使うことでバックさせることができるのです。これを使うとこのステージは2行で解けます。

①10歩直進する
②-20歩直進する(20歩バックする)

このように、単に解ければ良いだけでなく、よりよいコードでクリアするという思想がこの教材には反映されていて、そこが非常に面白いところだなと思いました。

まとめ

CodeMonkeyは大人がやっても学びのある教材です。この記事を読んで興味を持った方はぜひプレイしてみてください。今回紹介したステージは無料でできる範囲です。