未就学児からのプログラミング教育
現在小学4年生の息子がscratchでminecraftを動かすプログラムを(親のサポートはありつつも)自ら書籍を選んで勝手に進めてゆけるのには、幼少期からのゆる〜い下準備があったことも作用しているのかなと思ったので、何をしてきたかを振り返ってみます。プログラミング教育に関心があるけれど自分がそもそもプログラムについて何も分からない、いつ頃から何をさせれば良いのか迷っている!という方に少しでも参考になれば。
1、キーボードに親しむ
まず、早い段階でキーボードの入力に慣れさせたいと思いました。なぜならスマホやタブレット端末は受動的に使うには申し分ないのですが、何かを作ったり発信側として使う場合は未だデスクトップが優れていると思うからです。そこで、息子が5歳頃に私のデスクトップマシンに彼専用のアカウントを作りました。子供用にセキュリティー設定を行い、ブラウザには図書館の書籍を検索&予約できるサイトを登録しました。ここで読みたい本を一緒に検索して予約作業をしました。するとそのうち自主的に読みたい本を探してみたいと言い出します。そのタイミングでローマ字表を印刷して彼に手渡しました。日本語入力にすれば表なしで入力させることも可能ですが、私は初めからローマ字入力させることをお勧めします。圧倒的に入力速度が早いからです。
別に本の検索でなくても、何か興味のあることを調べてみることでキーボード入力への興味は湧きます。娘の場合はプリキュアについて調べたくて幼稚園の頃にローマ字入力を習得しました(笑)。年齢ではなく興味がわいたタイミングで手がかりをあげることがコツかなと思います。息子は今では勝手にSiri(我が家のマシンはMac)を使いこなして入力作業を省略するまでになりました。Siriが物凄い勢いで賢くなっててびっくりです。(恥ずかしくてずっと使ってなかった)
余談ですが、息子のブラウザには子供でも閲覧できるルビつきのサイトなどを色々登録しておいたのですが、一番ハマっていたのはハムスターが対戦相手をしてくれる「ハム将棋」でした。(2020.5.24確認したところ削除されたようです(/ _ ; ))
2、プログラマー的思考法に一緒に触れてみる
プログラミング教育がはじまると言っても、いきなりプログラムコードを書く訳ではありません。文部科学省の手引きにはこう書いてあります。
有識者会議「議論の取りまとめ」において「プログラミング的思考」は、
「自分が意図する一連の活動を実現するために、どのような動きの組合せが
必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたら
いいのか、記号の組合せをどのように改善していけば、より意図した活動に
近づくのか、といったことを論理的に考えていく力」と説明されています。
要は、物事を解決するための道筋を論理的に組み立てたり、上手くいかなかった場合にそれをどう改善するか考えたりする能力ということでしょうか。
プログラミング的思考がどのようなものか理解するのに良いと評判の書籍のひとつに「ルビィのぼうけん」があります。
プログラムを書く工程が楽しい物語で表現されています。プログラムなんて分からなくても楽しく読み進められる内容が秀逸です!息子が幼稚園の頃に一緒に読みました。大きな問題も小さく切り分けて考える、繰り返しで解決できるパターンの最小単位を発見する、などプログラム的な思考方法を具体的に体験できる構成になっています。
目的の形をどうやって実現するか?試行錯誤を繰り返して正解に近づく作業を繰り返す、という意味ではレゴブロックやLaQなどのブロック遊びはそれらを遊びながら体得できるおもちゃであると言えそうです。息子も幼稚園入学前から小学4年生の現在までレゴブロックで遊び続けています。こういうおもちゃが好きな子はプログラムに向いているのかも知れませんね。
3、ブロックを組む感覚で書けるプログラム「scratchJr」に触れてみる
プログラムというと一般的には英文で命令を書いていくスタイルですが、scratchはその命令自体がブロック状になっています。命令がブロック状なのでタイプミスが発生せず、組み換えも簡単。日本語化されたアプリなら命令自体も日本語で表示されており、命令の「組み方のみ」に集中できます。英文ではどんな命令?を一々覚える必要がないので子どもでも扱いやすいのです。
scratchには入門版のscratchJrという5歳頃から使うことを想定されたバージョンがあります。
テキストも5歳でも読める内容のものが用意されていて、我が家では「5才からはじめるすくすくプログラミング」を使いました。Kindle版なら無料のようです(2020.5月現在)。
我が家では幼稚園年長〜小学校低学年くらいまで遊んでいました。
自分で描いた絵を動かしたりできるので、お絵かきが好きな子も楽しく学べます。全ての文字にルビがふってあるので、子どもが自分で読むことができます。子どもだけでは難しい箇所もあるので親のサポートは必要です。簡単なものとはいえ、自分でゲームを作れるんだ!という発見は後々の子どもとゲームの関係に効いてくるなと感じています。
4、scratchを体験する
小学校入学の頃からはscratchが使えます。scratchJrと何が違うかというと、漢字で表記された命令が出てきたり、座標の概念が必要になってきます。
公式サイトでは子どもが作った作例を多数見ることができるので、お子さんが作ってみたい!と思う作品を見つけることから初めてみると良いですね。
我が家では息子はゲームを作りたい!という方向に興味が向いたのでプログラムを書く方向へと進んでいますが、娘はお絵かき自体が楽しいタイプだったので今ではプログラムよりもお絵かきソフトにハマっています。それでも「ゲームは自分でも作れるもの」という感覚は覚えているようです。
テキストは「小学生からはじめるわくわくプログラミング」を使っていました。
親的にはアラン・ケイ氏が1972年(!)に書かれたエッセイ「すべての年齢の『子供たち』のためのパーソナルコンピューター(a Personal Computer for Children of All Ages)」が掲載されていること、また新たに本書のために書き下ろされた「Dynabookとは何か」が収録されていることは特筆すべきでしょう!彼の「未来を予測する一番の方法は、それを創り出すことだ」という言葉は今の子供たちにこそ伝えたいものです。コンピューターやプログラムをどう操るかの技能を身に付けることももちろん大事ですが、何のために?の部分を考えられる人になって欲しいものですよね。
親の想いを押しつけかけて子どもがやる気を失ったり、子どもが予想以上にグングン自発的に取り組んだり、ガッカリしたりウキウキしたりの繰り返しです。今分かる大事なことは
・まず、子どもの特性や興味をよく観察すること
・課題は、子どものやりたい気持ちがMaxになった時に与えること
・気分が乗らない時に無理強いしないこと
でしょうか。
★参考サイト
Scratch公式サイト
https://scratch.mit.edu/
ドットインストール
https://dotinstall.com/lessons
3分動画でマスターできるプログラミング学習サービスです!(無料のユーザー登録が必要)Scratch講座、Python講座あり、どんな言語か親が予習したい場合に便利。
★参考番組
Why!? プログラミング
https://www.nhk.or.jp/sougou/programming/
厚切りジェイソンさんのハイテンションで楽しく観られる!
テキシコー
https://www.nhk.or.jp/sougou/texico/
プログラミング的思考とは?を分解して視覚的に理解させてくれます