今日、ふらっと近所の本屋に入ってプログラミン専門書コーナーを見ていると、「サーシャはプログラミングが大好き コーディングと出会った少女の物語」という薄い本が目に入った。
この本はアメリカのサーシャ・アリエル・アルストンという21歳の大学生の女性が、アメリカ(でも!)STEM(科学、技術、工学、数学)分野に興味を持つ女子高校生が1%に満たないことを危惧し、子供のころからコーディングに関心を持ってもらうように執筆した短編の本である。ほんとに薄く20分もあれば完読できるぐらいで、ストーリーも「物語」という割に単純で、サーシャというワシントンDCに住む小学生の女の子が、大手IT企業のエンジニアの母親のすすめでサマーキャンプでコーディングを学び、プログラムをつくる喜びを知る、という話である。
なぜ、この本を読もうと思ったかというと、パラパラと眺めたときに目に入った次のキーワードが日本のプログラミング教育にも必要だなあと思ったからだ。
- C(Communicate) 伝える
- O(Organize)まとめる
- D(Demonstrate)やってみせる
- E(Express) 表現する
C,O,Dについてはコンピュータと人間のやりとりを示すキーワードだが、Eについてはプログラミングする目的に関する内容であり、文中では母親がサーシャに
「Eは『Express(表現する)』を意味するの。パソコンが、あなたが教えたことを間違えず正確にやることを覚えたら、あなたはあなたが作ったものや解決した問題を誰かと共有することができるの。それってすばらしいと思わない?」
と教えている箇所がある。この「誰かと共有する」というのはGithubなどを使って仕事をしているエンジニアには常識となっている考え方だが、それを「すばらしいと思わない?」という言葉とともに教えるのは非常に、これから始める小学生のプロラグミングにも必要な考えだと思う。
私がが大学で学んだプログラミングでは、コーディング結果を「出力して」確認し、想定通りに動作したらそれで終わり、単位が取れるということしか学べず、「表現して誰かと共有する」というところまでは行かなかった。
これからプログラムを学ぶ小学生には、コンピュータを使って自己表現し、その思いを誰かと共有するためにコーディングをするということを理解して欲しいと思った。