プログラミングを楽々習得する子の学びのコツ 数学嫌い=プログラミングも苦手は間違いだ

著者フォロー
ブックマーク

記事をマイページに保存
できます。
無料会員登録はこちら
はこちら

印刷ページの表示はログインが必要です。

無料会員登録はこちら

はこちら

縮小

それは「プログラミングを学ぶこと」を目的にしないことです。

これはプログラミングの本質でもあり、プログラミングとは「コンピューターに指示を出す行為」にすぎません。その結果として、何か大きな目的を達成することがゴールです。よってプログラミング教育も「目的ありきで、その手段としてプログラミングを習得していく」という設計が、モチベーション的に最も効果的です。

料理に例えれば、プログラミングは包丁さばきを学ぶようなものです。それは、あくまでもおいしい料理をつくるという上位の目的を達成するための手段。料理をつくらないのに「じゃあ、今日は包丁の使い方の練習をしよう」と子どもに言っても、ほとんどの子どもには苦痛でしかありません。「おいしい料理つくりたくない? じゃあ、包丁の使い方をちょっと練習してみよっか」この順番が大事なのです。

親として知っておきたい2つ目のポイントとして、「プログラミングを学ぶこと」を目的にせず、「課題解決の手段としてプログラミングを学ぶ」という姿勢がとても大切です。

「国語力」が重要

コンピューターの画面に表示される膨大な数列。それを見ながら高速でキーボードに命令を打ち込む科学者……。映画ではこのようなシーンがよく描かれますが、その影響もあってか「プログラミング=理系」というイメージを持たれる方がほとんどかと思います。

しかし、それは大きな誤解です。数学や物理が苦手なプログラマーはいくらでもいます。むしろ文系のプログラマーのほうが多いくらいです。では、プログラミングで求められるスキルは何かというと、大きく分けると2つです。

◎的確な指示を考え抜く能力(論理的思考力、疑う力、伝える力)
◎与えられた前提条件や課題を正確に読み解く能力(読解力)

この2つの能力を同時に必要とする科目は、実は「国語」です。私が高校でプログラミングを教えるとき、最初の授業では決まって生徒たちに「プログラマーになるためにいちばん大事な授業は英語である。なぜなら最先端の情報はすべて英語で書かれているから」と前置きをしたうえで、「じゃあ、2番目に大事な授業はなんだろう?」と質問をします。大半の生徒が「数学」「物理」と答える中で、「国語」と答える生徒はほとんどいません。

1つ目の「的確な指示を考え抜く能力」については、先ほど触れたとおりです。もう1つ重要なのが、「読解力」です。課せられた問題文を読むときの読解力です。

◎自分に今何が求められているのか?(ゴールの理解)
◎こんなときはどう行動(判断)すればいいのか?(ルールの理解)
◎どんな手段を使っていいのか?(制約の理解)

これらの認識が1つでも間違っていると、ミスコミュニケーションが起きます。とくにプログラマーは、自分1人でゲームをつくるようなケースを除けば、上司やクライアントがそのプログラムで実現したいことを理解したうえでプログラムをつくるケースがほとんどです。しかも、実際には複数のプログラマーが役割分担をしながら大きなプログラムをつくっていきます。

そのときに、「自分に与えられたゴールやルール、制約を理解できないとチームとして機能しない」ということを、プログラミングを通して学ぶことができるのです。プログラミングで求められるのは、「数学力」以上に「国語力」であることを、親として認識しておきたいところです。

次ページ失敗の連続で成り立つ泥臭い世界
関連記事
トピックボードAD
キャリア・教育の人気記事