give IT a try

プログラミング、リモートワーク、田舎暮らし、音楽、etc.

日本語でコードが書ける子ども向けプログラミングツール「RoboMind」で遊んでみよう!

はじめに: 子どもたちに夏休みを有意義に過ごしてもらいたい親心から・・・

今は8月です。子どもたちは夏休みです。
親になって気になり始めたのが、子どもたちの夏休みの過ごし方です。
特に僕は今自宅でリモート勤務しているので、子どもたちの夏休みの過ごし方がよくわかります。


まあ、自分の子どもの頃を思い出してもそうなんですが、夏休みって意外と何もすることがありません。
「自称・意識の高い父親」としては、「夏休みこそ何か新しいことにチャレンジして、ひと回り成長してほしい!」と思ったりするのですが、親の期待とは裏腹に子どもたちは空いた時間は基本的にだらだらしています。


そこで、自分の仕事柄、「そろそろプログラミングでも覚えてくれないかな?」と考え、子ども向けのプログラミングツールをネットでいろいろ探していました。
最近よく名前を聞くのは「Scratch(スクラッチ)」です。
僕もちょっと試してみました。
子どもにもやらせてみました。


が、誰かが作ったゲームを遊んだりはするものの、自分で何かを作ったりするところにはあまり興味が無いようでした。
そもそも、僕自身がドラッグアンドドロップでプログラミングを組み立てていくという作業にあまり馴染めません。


「プログラミング=キーボードでコードを打ち込む」という考えがあるので、「子ども向けかつ、コードを書くタイプ」のプログラミングツールを探していました。


そんなときに見つけたのが、今回紹介する「RoboMind(ろぼまいんど)」です。


RoboMind.net - Welcome to RoboMind.net, the new way to learn programming

f:id:JunichiIto:20140809091944p:plain


RoboMindについて

RoboMindはプログラムを書いて画面の中のロボットを動かすことができるプログラミング実行環境になっています。
ロボットは地図の中を上下左右、自由に移動させることができるほか、緑色の「びーこん」をつかんだり、地面に色を塗ったりすることができます。
さらに、プログラムは英語だけでなく、日本語を使って動かすこともできます。


たとえばこんな感じで動かすことができます。

f:id:JunichiIto:20140809075526g:plain
 

RoboMindのサンプルコード

上の動画(アニメーションgif)で動かしているプログラムはこんな感じです。

# びーこんをいどうさせる
みぎ
すすむ(3)
みぎ
すすむ
とる
すすむ
みぎ
つぎのあいだずっと(まえになにもない){
    すすむ
}
もどる
おく

# しかくをえがく
みぎ
しろでぬる
くりかえす(4){
    すすむ(3)
    みぎ
}
ぬるのをやめる

# もとのいちにもどる
すすむ(2)
みぎ
すすむ(4)
ひだり


日本語で書いているので何をやっているかよくわかると思います。


また、日本語から英語への翻訳もできます。

# びーこんをいどうさせる
right
forward(3)
right
forward
pickUp
forward
right
repeatWhile(frontIsClear){
    forward
}
backward
putDown

# しかくをえがく
right
paintWhite
repeat(4){
    forward(3)
    right
}
stopPainting

# もとのいちにもどる
forward(2)
right
forward(4)
left


英語で書くと、僕たちが普段使い慣れているプログラムに似た形になります。


プログラミングに慣れた大人であれば、英語の方が読み書きしやすいですが、「子ども向け」ということを考えると、日本語の方がわかりやすいはずです。
また、全部ひらがなで書かれているので小学校低学年の子どもでもプログラムが読めるはずです。

メニューやエラーメッセージも日本語(ひらがな)です

プログラムのみならず、メニューやエラーメッセージなども全部ひらがなで書かれており、小さなお子さんでもプログラミングが楽しめるようになっています。


ファイルメニュー
f:id:JunichiIto:20140809082034p:plain


エラーメッセージ
f:id:JunichiIto:20140809081950p:plain


「りもこん」を使ってインタラクティブにプログラムが書けます

いきなりプログラムを書けと言われても書き方がわからない、というときは「りもこん」があります。
りもこんを使うと、インタラクティブにロボットを操作でき、なおかつ操作した内容がプログラムに翻訳されます。

f:id:JunichiIto:20140809082416g:plain


また、プログラムで使える命令はメニューから確認することもできます。

f:id:JunichiIto:20140809082703p:plain


RoboMindで使える命令の一覧

参考までにこちらでも使える命令の一覧を載せておきます。
左側が英語、右側が日本語です。

If=もし
Else=そうでなければ
Procedure=ぷろしーじゃ
Repeat=くりかえす
RepeatWhile=つぎのあいだずっと
Return=かえす
Break=ぬける
End=おわる

VarAnd=かつ
VarOr=または
VarNot=ひてい
True=ただしい
False=ただしくない

MoveForward=すすむ
MoveBackward=もどる
RotateRight=みぎ
RotateLeft=ひだり

MoveNorth=きたへ
MoveSouth=みなみへ
MoveEast=ひがしへ
MoveWest=にしへ

LeftIsObstacle=ひだりがじゃま
FrontIsObstacle=まえがじゃま
RightIsObstacle=みぎがじゃま

LeftIsClear=ひだりになにもない
FrontIsClear=まえになにもない
RightIsClear=みぎになにもない

LeftIsBlack=ひだりがくろ
FrontIsBlack=まえがくろ
RightIsBlack=みぎがくろ

LeftIsWhite=ひだりがしろ
FrontIsWhite=まえがしろ
RightIsWhite=みぎがしろ

LeftIsBeacon=ひだりがびーこん
FrontIsBeacon=まえがびーこん
RightIsBeacon=みぎがびーこん

PaintWhite=しろでぬる
PaintBlack=くろでぬる
StopPainting=ぬるのをやめる

GripperGet=とる
GripperPut=おく
GripperEat=たべる

 

「ぷろしーじゃ(関数)」だって使えます

条件分岐や繰り返しなど、一般的なプログラミング言語でよく使う処理はサポートされていますし、「ぷろしーじゃ(関数)」を使うこともできます。

しかくをえがく(3)

ぷろしーじゃ しかくをえがく(へんのながさ){
    しろでぬる
    くりかえす(4){
        すすむ(へんのながさ)
        みぎ
    }
    ぬるのをやめる
}

 

動作環境やライセンスについて

動作環境はWindows、Mac、Linuxのマルチプラットホームです。
ちなみにRoboMind自体はJavaで作られているようです。


Windowsで開くと「リボンメニュー」が表示されるので、Macの画面よりもちょっとリッチです。

Windows
f:id:JunichiIto:20140809084232p:plain

Mac
f:id:JunichiIto:20140809084052p:plain


気になるお値段ですが、残念ながら無料ではありません。
デスクトップライセンスは年間14ドルです。ただし30日間は無料で使えます。


ブラウザ上でのみ実行できるオンライン専用アカウントなら年間7ドルですが、これだと日本語は使えないようです。
ただ、RoboMindは個人で使うというよりも、学校などの教育機関で使うことを念頭に置いている印象です。


ライセンスの購入ページはこちらにあります。

Login


「ところで、RoboMindにやたら詳しいですね??」

はい、詳しいです。
それもそのはず、なぜなら僕が日本語の翻訳を担当したからです!


その証拠に、クレジット情報も表示されています。

f:id:JunichiIto:20140809085916p:plain


ネットでたまたまRoboMindを見つけて、翻訳者募集の表示が出ていたので軽い気持ちで参加してみました。


Javaのpropertiesファイルを編集するだけの簡単なお仕事だったんですが、子ども向けにどうやってわかりやすく翻訳するかがちょっと大変でした。
あと、プログラムの命令の翻訳もちょっとした「プログラミング言語設計」なので、「日本語としても読みやすいプログラミング言語」にするのも難しかったです。

「で、お子さんはRoboMindでプログラムを作れたの?」

えー、実はまだ自分の子どもにはまだ触らせていませんw
というか、翻訳をやったあとに気付いたんですが、日本語のプログラムを「読む」ことは簡単にできても、「書く」のは結構難しいんですよね。


なぜなら、キーボードから日本語を入力できないといけないからです。
息子は小学3年生でiPadやiPhoneのフリック入力なら日本語を入力できるんですが、PCのキーボードから日本語を入力するのはまだほとんどできません。


まあ、前述の「りもこん」やファイルメニューから命令を選んでプログラムを作ることはできるんですが、あまり効率的な方法ではありません。
全角や半角の使い分けもまだちょっと難しいと思います。


そう考えると、英語ネイティブの子どもは有利だなーと思います。
大半のプログラミング言語を母国語で読み書きできるし、文字を入力するときもキーボードのキーに書かれている文字の通りにアルファベットを入力できるので。


日本語も「かな入力」モードはありますが、長い目で見るとローマ字で入力できた方がいいですよね。
でもそのためにはまず、ローマ字の規則を覚えないといけない。


日本語の入力が難しいからといって、RoboMindを英語のまま使おうとすると、今度は命令の意味がわからない。読み方もわからない。


結局英語を覚えるか、ローマ字の仕組みや入力方法を覚えるか、のどちらかになってしまう。
子どもがプログラムをガンガン打ち込めるようになるまでには、なかなかハードルが多いです。


まとめ

というわけで、今回は子ども向けのプログラミングツールである「RoboMind」を紹介してみました。
小学校低学年だと「日本語入力」でつまづくかもしれませんが、小学校高学年や中学生になってくると日本語でロボットを自在に操れるかもしれません。
もちろん、プログラミングがバリバリできる「大人プログラマ」も同じように楽しめます。


30日間は無料で遊べるので、夏休みの新しいチャレンジの一環として親子でRoboMindを楽しんでみてください!


RoboMind.net - Welcome to RoboMind.net, the new way to learn programming

f:id:JunichiIto:20140809091944p:plain