Column 19年10月 「SDGs」とプログラミング的思考

https://prtimes.jp/main/html/rd/p/000000034.000015742.html

https://programming.or.jp/umip/

今年度のノーベル化学賞を受賞された吉野彰さんが、会見でカラフルな丸いバッジをつけていたのを目にされた方が多いと思います。あのバッジは、「SDGs(エスディージーズ)バッジ」と呼ばれるバッジです。SDGsとは、「持続可能な開発目標(Sustainable Development Goals)」の略で、2015年9月の国連サミットで採択された「持続可能な開発のための2030アジェンダ」に記載された、2016年から2030年までの国際目標です。

◆SDGsとは?(外務省)https://www.mofa.go.jp/mofaj/gaiko/oda/sdgs/about/index.html

17のゴール・169のターゲットからなる国際目標は、「地球上の誰一人として取り残さない」社会の実現のために設定されました。これらの目標達成のために、世界中の政府機関・企業・団体がさまざまな活動を行っていますが、日本ではまだまだ認知度が低いと言わざるを得ません。

◆SDGs認知度調査 第5回(朝日新聞社)https://miraimedia.asahi.com/sdgs_survey05/

「持続可能な開発」という考え方は、今後グローバルスタンダードとなっていくでしょう。その時に鍵となるのがプログラミング的思考です。実際、プログラミング教育と結びつけた普及・啓発活動も数多くあります。SDGs自体は、直接プログラミング教育とかかわりがあるわけではありませんが、プログラミング的思考が有効であると考えられています。では、プログラミング的思考がどういった点で役立つのでしょうか。

答えが用意されていない問題を解決する力

SDGsの目標は、現代社会において解決されていない問題ですので、言い換えれば、現時点においてどこにも答えがない問題であると言えます。このような問題を解決するためには、解決に至る道筋を自ら組み立てなければなりません。つまり、

  1. 仮説を立てる
  2. 実現に至る過程を組み立てる
  3. その過程で起こりうる問題とその解決策を検討する

といった能力(創造力、論理的思考力、判断力など)が必要であるといえます。

全体最適となる解を導き出す力

SDGsの目標は、特定の個人や集団にのみあてはまるものではなく、文化や習慣が異なるすべての人類に共通の問題です。そのため、より多くの人に有効であること、より多くの人が実行可能であることが求められます。つまり、

  1. 他者の意見を受け入れること(多様性)
  2. 他者と議論することで、よりよい解に近づいていくこと(協働性)

という姿勢が大切になります。

その他にも、多様な文化・習慣・考え方を尊重するために、複雑な前提条件を最大限に満たす力や、特定の個人や集団の利益が他の個人や集団の不利益となるトレードオフを解決する力などが必要とされます。

これらの力はすべて、プログラミング的思考と親和性が高いものです。与えられた課題に対して、さまざまな条件を加味してゼロからプログラムを組み立てていく、作成したプログラムを公開して意見を募る、または公開されたプログラムに対して改善策を提案するなどのプログラミング的思考が、SDGsといった地球規模の問題解決に結びついているということに気づくと、改めてプログラミング学習に大きな意義を見出すことができるのではないでしょうか。

SDGsのターゲットは、日常の生活ではあまり意識しない事柄が多く、難しそうな印象を持ってしまうかもしれませんが、答えがない問題について考える機会として、ご家庭で話題にしていただければ、プログラミング的思考力の涵養につながるものと思います。