前回記事につづき、マイクラです。

 

 

その後、放っておいたら、小2はどの程度までマイクラプログラミングで遊ぶのか、様子をみました。

結論、小2は放っておいても、プログラミングの本質にせまるところまで自走する、ことがわかりました。

 

↑こちらは、前回、一緒にやってあげて、子どもが作った階段です。

 

agentを一歩動かしては、1個ブロックを置く、そのループ処理

これによって階段ができることを教えました。

 

その後、放っておくと、こんなのを作ってました。

 

階段プログラムを、何カ所かいじって、線路に。

チェストやグローストーンの存在意義は不明??

 

私も遊ばせてもらいましたが、車窓の眺めが気持ち良かったです。

 

途中、村があり、ここは階段プログラムをそのまま使って、

村の駅までの勾配を作ってました。

 

プログラミングとは別に、息子はレッドストーン回路オタクで、

まいぜんの動画を見て研究しています。

私は回路はわからないのですが、電車が線路上を走ると、連動してチェストが動いたり、

矢が飛んだりしてました。

 

マイクラのプログラミングの一つの特徴、と感じたのが、

プログラムの進行の堅牢性が高い、というのがあります。

agentにブロックを順次置かせるようなプログラムで、

置こうとしたところに他のブロックがあって置けない、というような場合は、

そこで「バグ」としてプログラムが停止するのが通常ですが、

マイクラのagentは、そこは置かないものとして、引き続き作業を進めていく、

という性質があります。

なので、多少、条件分岐(場合分け)が甘くても、バグで止まることなく、

一応は仕事が進んでいく傾向があります。

これは、デバッグがまだ出来ない子ども達にとっては、とても大事なポイントだと思います。

 

もう一点、マイクラEducationの特徴として、

「agent」の活用

ブロックを置く際の座標ですが、絶対座標ではなく、プレーヤーから見た座標でもなく、

「agent」を基点とした相対座標を使います。

それによって、実に様々な空間デザインをとれるようになります。

代表は、先の階段。

絶対座標を使うなら、Y=aXの関数を使って(X,Y)を指定していきますが、

子どもはまだ関数の概念がありません。

その点、agentが一歩ずつ動くというのは直感的にとらえやすく、

 

 (前に一歩→上に一歩→置く)× 10回繰り返し

 

これなら、関数を習っていない子どもでも理解できる、ということです。

しかも、素晴らしいと感じるのは、

「前に一歩」と「上に一歩」がセットになって「階段」が作られる、という感覚、これは即ち、

「X に+1」と「Yに+1」がセットになって「関数」(Y=1 * X)が作られている、という感覚、に通じる、ということです。

つまり、数学のひとつの重要な土台(数と数が一定のルールによって対応づけられる、という、関数の感覚)を、「原体験」のようにして身につける、ということが起きているように感じます。