皆さま、こんにちは。
トレンドマイクロ ワークショップ運営事務局です。
トレンドマイクロでは、子どもたちや保護者の方に、“安全なICT活用”につながるイベントや情報をお届けしています。
イベント開催支援をいただいている、SmileMeさんより、子どもたちのScratchをはじめとしたプログラミングの始め方、ステップアップの方法について、ご寄稿いただきましたのでご紹介させていただきます。
SmileMeさん、ありがとうございます!
プログラミングを日常に取り入れるには?
私たちの生活を便利にしてくれ、さらに便利にしていくためにも使われているプログラミング。
今となっては、日常生活に欠かせないものとなっています。
これまでICTを用いた子どもたちの課題解決の様子についてご紹介してきましたが、ここで一度基本に立ち返り、「プログラミングとは何なのか」を確認していきましょう。
また、子どもたちの日常にどう役立つのか、どのように学習を進めていけば良いのかをご紹介します。
プログラミングとは?
さて、小学校でも昨年度から必修化された「プログラミング」とは、一体何なのでしょうか。
ここでおさらいしていきましょう。
プログラミングとは、人の言葉を理解できない機械やコンピュータに対して、人の意図した動きをさせるために指示・命令を出すことです。
コンピュータは、自分で物を考えたり動いたりすることができません。
人から指示されたとおりのことを、指示されたとおりにしかできないのです。
つまり、人はコンピュータがわかる言葉(=「プログラミング言語」と呼びます)で細かく命令する必要があります。
この「細かく命令」という部分がポイント。
人間同士のコミュニケーションでは、なんとなくその場の空気を読む、「こんな感じかな?」と自分で予測を立てるといったことができますが、コンピュータにはそのような力がありません。
ですから、させたい動きを実現するために、どのような動きがあるのか分解して考え、それを順序立てて伝えなければならないのです。
これがいわゆる「プログラミング的思考力」です。
プログラミング的思考で育まれる力
先述した「プログラミング的思考力」。
小学校からプログラミング教育が導入された背景として、この思考力の定着を目指す動きがあります。
身につけて欲しいのはコーディングという「技術」ではなく、どのようにプログラムを作っていけば良いのかという「考え方」なのです。
プログラミングでは「こうしたい」という最終的な完成イメージのもと、それに必要なパーツに分解して考えていきます。
逆算していくのです。
同様に大枠から作っていくので、作業工程において優先順位を考えることにもつながりますね。
また、必ずしも一回ですべてがうまくいくとは限りません。
むしろ、うまくいかないことの方が多いのではないでしょうか。
作業を区切りながら検証、うまくいかなければどの部分が原因なのかを突き止める。
修正し、また検証。このようなトライ&エラーを繰り返し、解決策を考えていく。
また行き詰まってしまったらどうしたらいいのかまた考える…といった一連の流れの中で、子どもたちは考える力を身につけていきます。
プログラミング的思考で育まれる力をまとめると、以下のようになります。
- 逆算 / 優先順位をつける力
- トライ&エラーを繰り返し、挑戦していく力
- バグ修正への対応力
- 臨機応変に対応する力
これらの4つの力は、いずれ社会に出てからも必要となります。
対コンピュータだけにとどまらず、人間関係を構築していく上で必要な力でもあります。
「生きていく上で必要な力」と言い換えることもできるでしょう。
これらを早い段階で獲得することを目指しているのですね。
始めるならいつがいいの?
弊社Smile Meでは、プログラミングイベントも多く開催していますが、「始めるならいつ頃がいいのか?」というご質問を各会場でいただきます。
おそらく本記事を読んでいる方の中にも、同じような疑問を抱く方がいらっしゃることでしょう。
弊社では、早い段階でプログラミングに触れておくのがよいと考えています。
その理由は大きく以下の3点です。
- 吸収するのも理解するのも速いから
- 純粋に「楽しむ気持ちが強い」から
- スタートが早いことによりその後の選択肢が増えるから
子どもたちは成長とともに、失敗や間違いをすることに対してネガティブな印象を持ち始める傾向があります。
うまくいかないケースも肯定的に捉え、前向きに取り組んでいくためには、そうしたネガティブなイメージがついてしまう前から始めるとよいでしょう。
それも「楽しい」と感じられる時から始められれば、主体的に、また能動的に、より深く取り組むようにもなっていくのではないでしょうか。
プログラミングの教材には、Scratch Jr(スクラッチジュニア)やViscuit(ビスケット)のように、直感的に操作できるものもあります。
お子さまとやってみると、保護者の方も一緒に楽しめますよ。
ステップアップしていくには
保護者様からよくいただく、もうひとつの質問があります。
どのように始め、どうステップアップしていくか、という点です。
弊社のコースを例に、ステップアップのしかたをお伝えしていきます。
―まずはScratchから始めてみる
これまでの記事でもご紹介しているScratchですが、プログラミングのスタートにはぴったりの教材です。
- ポップで明るい色合い(見ているだけでワクワクしちゃいます)
- 幼いお子さまでも取り組みやすい
- ビジュアルプログラミングなので、細かな知識なしでもスタート可能
といった理由が挙げられます。
知識ゼロからでも気軽に始めることができますが実はとても奥が深く、多くのコードを組み合わせることで、実際にプレイできるようなゲームを作ることもできます。
弊社教室でも、未経験のお子さまから取り組めるようなカリキュラムを準備し、内容が進んでいくにつれて使うブロックの種類を増やしていったり、BGMや効果音をつけていったりと、少しずつレベルを上げていきます。
Scratchのプログラム画面
-Processing(プロセッシング)
プロセッシングは、ビジュアルアートデザイナー向けに開発された言語です。
開発元はScratchと同様、MIT(マサチューセッツ工科大学)メディアラボ。
もともと子ども用に作られたわけではありませんが、手をつけやすい言語です。
スクラッチとの大きな違いは、実際にコードを入力することです。
しかし、JavaScript(ジャバスクリプト)やPython(パイソン)をはじめ、他にも記述型言語がある中でプロセッシングをおすすめするのには、理由があります。
コードを入力してからアクションまでが速いことです。
スクラッチと同様にブラウザ上で使えるものもあり、学び始めにおいてもハードルはさほど高くはないでしょう。
もちろん、ダウンロードして環境を構築することも可能です。
後者の方がより細かい設定ができます。
プロセッシングはビジュアル表現を得意とし、デザイン要素もふんだんに盛り込まれています。
ですから、より本格的に、さらにデザインセンスを磨いていくのにはピッタリでしょう。
どの言語にも言えることですが、プログラミングは書かれたコードを上から順に実行していきます。
その感覚を身につけるには、ビジュアル言語から始めることをおすすめします。
Processingのプログラム画面
プログラミング=難しい?そんなことはありません!
「こんなに簡単にプログラミングが学べるんですね!」
体験会に付き添いでいらっしゃる保護者の方の中には、現役で活躍されているエンジニアやプログラマの方もいらっしゃって、皆さん口を揃えてそうおっしゃいます。
ひと昔前までは、プログラミングはとても難しいもの、限られた人のみが使うもの、そのようなイメージが強かったのではないでしょうか。
小学校での必修化が決まった当初も、そのように感じられた方が多かったことでしょう。
ですが、実際にはプログラミングは決して難しいものではありません。
楽しく学ぶためのツールは多数存在します。
「子どもたちならでは」のアイデアと結びつき、新しいサービスやアプリの開発につながることも多々あります。
もちろん、プログラミングを学び始めたからといって、技術者にならなければいけないわけではありません。
楽しくてその道を究め、開発に携わっていくお子さまもいれば、デザインに興味を持ち始め、その道に進むお子さまもいることでしょう。
いずれにせよプログラミングを通して得られた知見により、選択肢の幅が広がることは間違いありません。
いかがでしょうか?
本記事では、日常へのプログラミングの取り入れ方と他の言語について簡単にご紹介しました。
プログラミングによって育むことのできる力と、プログラミングのよりポジティブな側面をご理解いただけましたら幸いです。
ぜひお子さまの日常にもプログラミングを取り入れてみてくださいね。
SmileMe株式会社
小中学生向けプログラミング教室「SMILE TECH」ではリアルでの教室に加え、オンラインでも授業を行っています。
内容もScratch(スクラッチ)やProcessing(プロセッシング)などのプログラミングだけではなく、デザインまで幅広いコースをご用意しております。
詳しくはHPをご覧ください。
https://www.smileme.jp/
※Scratch、Scratch Jrはマサチューセッツ工科大学の登録商標です。
※Processingは、MITメディアラボで開発されたオープンソースプロジェクトです。
※その他会社名、各製品名は、一般に各社の商標または登録商標です。