お問合せ

ブログ

【プログラミング的思考って?】ゴールから考える思考力を育む

こんにちは、iTeenです。

今日は、こちらの記事に対するお話です。

 

Google、小学校でのプログラミング教育を支援する無料カリキュラム「CS First」を日本向けに公開

Gooleがプログラミング教育に携わる学校の先生を支援するために、Scratchを活用した無料の教育カリキュラム「CS First」を公開した、という内容の記事です。

 

ついにプログラミング教育にGoogleが参入したのか、やっぱり小学校の先生がプログラミングを教えるのは大きな負担なんだな…、という感想も抱きましたが、何より私が気になったのは「CS First」を体験した先生のインタビューへのご回答です。

 

「私たちのまちのよさをプログラミングで広めよう」のコースを活用した和地教諭は「プログラミング教育で、子どもたちは『プログラムを作ること』自体を目的にしてしまいがちだった。CS Firstは明確なゴールがしっかりと示されているためそれに向かって試行錯誤を繰り返すことができた。私自身も、目的を示すことの大切さを改めて感じた」と話す。

 

思わず、うんうん…と頷いてしまいました。

「明確なゴールをしっかり示すこと」

「ゴールに向かって試行錯誤を繰り返すこと」

これ、実際にプログラミングを教えている私たちもとっても大切にしていることなんです。

 

私は昔から数学があまり得意ではなく、高校で新しい公式を習っても「でも先生、これって何の役に立つの?」「何のために覚えなきゃいけないの?」と、不満ばかり持っているような学生でした。受験のために覚えなくてはならないんだ、と言われてしまえばそこまでですが…ただただ義務感でこなしているだけで、楽しい!面白い!と思うことなんて、ちっともありませんでした。

 

今思えばこれって、“公式”という「手段」を先に覚えさせられ、“何かの役に立つ”という「目的」がハッキリしないまま一方的に詰め込まれているから起きるジレンマなんですよね。

 

学校教育って、往々にしてこういうことが起こります。なぜなら全国的なカリキュラム、つまり何年生で何を習うということが細かく定められていて、義務教育の間は北海道から沖縄まで一律の教育を受けることができる、受けさせる必要があるという約束が、国と私たちの間で当然のように交わされているからです。

そこに、「なんで習うんだろう?」という、「なぜ?」の部分は必要ないわけです。そう決められているから教える、それだけです。

 

ですが、プログラミングってそもそもまったく逆の考え方をします。先述の先生もおっしゃられているとおり、

①「こういうものを作りたい!」「ここを便利にしたい!」というゴールを明確にし、

②そこに向かって解決すべき問題を細分化し、

③順序立てて組み立てていく。

この「ゴールからの逆算の考え方」がプログラミング的思考の基本です。

 

建設屋さんが家を建てるときにだいたいの完成日を伝えられるのは、「家を完成させる」までの工程を逆算できているからです。

お母さんが晩御飯を作り終わるまでにどのくらい時間がかかるのか考えられるのも、「晩御飯の時間」というゴールからの逆算ができているからです。

 

大人になり、社会人になっても大切にするべき「ゴールから考える」プログラミング的思考を早い段階からくせづける、これが小学校でプログラミング教育が取り入れられた目的のひとつでもあります。

 

だから国語や算数と同じように教えようと思ってもそもそも無理な話なんです。学校教育とは考え方が逆なんですから…。

 

そして何より自分が何を作っているのかわからないままただ先生に言われる通りプログラムを組むなんて、全然、全然楽しくないですよね? 私にとっての数学のように…

 

iTeenにご入会いただいたお子様にはまずスクラッチの基礎を学んでいただきますが、私たちは「一方的に情報を詰め込む」ということは絶対にしません。

「目的=課題をハッキリさせ」「課題をクリアするための道筋を生徒さんと一緒に考える」という手順を必ず踏みます。

 

そうしないと小さなお子様が楽しく学習できない、という理由もありますが、何よりプログラミングってそういうものだと私たち自身が思っているからです。だから個別指導で、ひとりひとりの生徒さんに向き合って、じっくり丁寧に教えています。

 

教育についてこんな熱い思いを抱いている私たちのお話を聞いていただきました^^