子どもとScratchで遊んだ

投稿日:

自粛生活で親子共々ヒマなときにScratchをやってみたら思いのほか面白く息子もハマったようなので、そのあたりの経緯などを含めて紹介してみます。
Scratch – Imagine, Program, Share

(自粛期間はヒマだヒマだとこの記事で多言していますが、自粛期間中でも忙しく働いている方もいることは重々承知しています。社会インフラを守るために働いてくださっている方には感謝しかありません。)

はじまり

自粛生活で “暇”, “堕落” という言葉がリビングいっぱいに埋まっていた4月の終わり頃、娘が 「パパ、私もぷろぐらみんぐしたい。パソコンでぷろぐらみんぐできるんでしょ?」 と、なにげなく言ってきました。
その言葉で、そういえば前々から子供とScratchをやってみたかったんだよな〜というのを思い出し、いざやってみると、、あら不思議


このとおり、息子(お兄ちゃん)も夢中になったのであります。

Scratchは、始めたらすぐにプログラミング(動きをつけさせる)ができるUIになっているところが良くできているなぁと感じていて、だから小学4年生(息子)と小学2年生(娘)の子どもでもすぐ夢中になれたのかなぁと思っています。

息子ハマる

特に息子のハマり具合はすごくて、次の日から朝から晩までやりだす始末。


あまりにもやり過ぎてママに時間を決めてやりなさい!!と怒られふて腐れていたものだから、やりたいことはメモしておいて明日とことんやりなさいとアドバイスしたところ、


ここまでメモをとっていてパパはびっくりしました。

あと、「メッセージって便利だね!!」って目をキラキラさせながら言ってきたのもびっくりしましたよ。(これが分かれば何でも組めるやんけ!!)
※メッセージはイベントのやり取りをするやつです

つまったところも、アドバイスをちょっとしてあげるだけで理解して最後の方は自分でどんどんプログラミングを組んでいましたね。
パパは後半ぶっちゃけ暇でしたよ。

娘は?

娘も最初は夢中になってゲームを作りたいと息巻いていたものの、座標とか変数とかが出てくるとチンプンカンプンとなってしまい飽きてしまいました。
自分の教え方が下手だったというのもあると思いますが、理解力とかそのへんのタイミングもあるのかなぁと。
まぁ、まだ小学2年生になったばかりですしね。

少し工夫したところ

Scratchで背景が動いているように見せる

一番最初に息子から、「背景が動いているようにしたい」と相談を受けたのでそのあたりは少し工夫しました。
まず、背景を調べてみてもステージがせんたくされました: うごきブロックはありませんとあり、背景を動かすことはできない様子。

そこで、

  1. 最初にスプライト(今回は星を利用)を複数用意
    • 場所はランダムに表示
  2. そのスプライトのx座標をすこしずつ左(マイナス)に動かす
  3. スプライトが画面左端までいったら
  4. y座標をランダムに変えて 2.から繰り返す

という方法を取りました(これでやってみようと言ったら、息子は「あぁ、錯覚ってやつだね」と言いやがりましたよ)。
そうです。目の錯覚ってやつです。

※最初の描画時のx座標をもう少しうまくバラけさせられれば、星の動きをもっとなだらかに表現できるかもですね

初作品

そんなわけで出来上がった作品がこちらです。

ねらってうってシューティングキャット on Scratch

  • フライングキャットをつかっててきをたおしましょう
    • ドラッグして移動できます
  • スペースキーをおすと、ビームをはっしゃできます
  • ビームをうって、てきをたおしましょう
  • てきにあたったたらゲームオーバーです

※バグが多少ありますが、小学4年生の作品なので察していただければと思います

ここからも遊べます(PCのみ)

注意!音が鳴ります!

Scratchをやってみて

ここからは単純に大人としての感想を書いていきたいと思います。

よかったところ

Scratchをやってみて良いなと思ったのは、

  • 始めたらすぐにプログラミング(動きをつけさせる)できるUIになっている
  • 日本語で ひらがな だけの設定が可能
    • 小さい子は漢字が読めないのでよい
  • はじめから音楽や画像などの素材が豊富
    • この中から選ぶだけでもワクワクするかも
  • プログラムはロジックが書かれたブロックをつなげるだけで組める
    • つなげられるブロックは形を見ればわかるので直感的

このあたりです。
個人的見解ですが、とにかくすぐプログラミングに触れられるというところに重点が置かれたUIだなと感じました。
ものを動かそうと思ったら、ロジックが書かれたブロックをつなげるだけです。ひらがなだけの設定にできるのもニクい。

本当によくできているなと。
※しかもオープンソースで公開されている(Scratch)

イマイチなところ

逆に、イマイチなところはロジックの修正をするときのブロックの付け直しがけっこう面倒くさいところですかね。慣れというかコツがいります。
これは子どももムキーッとなっていました。後半は慣れているようでしたが。

あとプログラミング中の画面とフルスクリーンにしたときの画面上での動きの違いも多少あるようですが、そのへんの違いがどこに書かれているか分からずに困惑する場面が多少ありました。

※プログラミング中の画面(右上の赤枠部分)

※フルスクリーン

例えば、

  • スプライトを ドラッグできるようにする/しない が効くのはフルスクリーンのときだけ
    • プログラミング中画面では常にドラッグできるので迷った
  • スプライトをドラッグ中の座標反映のタイミング
    • プログラミング中画面の場合、ドラッグ中の座標は反映されずにドラッグをやめた(マウスアップ)時点の座標が反映される
      • スプライトをドラッグ中はそのスプライトの x, y座標 は変わらない
    • フルスクリーンの場合、ドラッグ中の座標は常に反映される
      • スプライトをドラッグ中はそのスプライトの x, y座標 は常に変わり続ける
    • こういうロジックを組んだときです

などなどです。

おわりに

というわけで、マイナスな部分も少なからずありますがそれを充分に補ってくれるUIの良さがあるので、少しでもプログラミングに興味をお持ちのかたはぜひチャレンジしてみてはいかがでしょうか(プログラミングに興味がなくても、自粛生活で親子共々マンネリでちょっとヒマしちゃっているだとか、子どもがゲームばかりやっていてどうせならゲームを作らせてみたいと思っているかたでもよいと思います)!!

やっぱり物事を抽象的に捉える力って大事だし、それを教えるにはプログラミングが手っ取り早いと個人的には思うのですよ。

ちょうど今日(2020/05/04)、自粛延期になったので新しいことを始めるタイミングとしてはアリかもしれませんね!!

作成者: shimabox

Web系のプログラマをやっています。 なるべく楽しく生きていきたい。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください