「コンピュータあそび」にかける思い

西那須野幼稚園でコンピュータ教室の講師をさせてもらっています。
一つの新聞記事(星野さんの記事)を見つけてくれた妻と、それを見て突然訪問した私を受け入れてくれた那須町教育委員会の星野尚さん、そして西那須野幼稚園の福本園長に感謝です。

ちなみにタイトルですが、楽しくやってもらいたいという思いから、子どもたちに伝えるときは一貫して「コンピュータあそび」と言っています。保護者向けにはコンピュータ教室って言っていますが、本当は「あそび」で統一したいです。
蛇足ですが、数学も数楽に変えたい派です。

2020年4月から「プログラミング教育」が小学校で必修化されます。
私はこのことに賛成です。ただし、そのままポンと投げれば、現場の負担が増えるであろうことは容易に想像がつくわけで……では、どうすればうまくいくかを考えていきたいですね。

◯プログラミング教育の必修化とは
すでにいろんなメディアで議論されていますので、詳しいことは省いて簡単に。

一言でいうと、
プログラミング「で」何を学ぶか?です。

やらないこと。
プログラミングを教えるわけでも、プログラマーを養成するわけでもありません。
ましてパソコンを使いこなせるようにするわけでもありません。

伝えたいこと。
論理的に物事を捉え、順序立てて推論する能力をつける。
コンピュータの得意なこと・不得意なことを理解することで、相対的に、人間同士のコミュニケーションの大切な部分、間違いがおきやすい部分を浮き彫りにし、情報そのものや情報の伝達方法への理解を深める。実はこれ、大学における専門科目である「情報科学(Information Science)」の基礎(情報理論)です。Scienceの部分がTechnologyになるとITですね。

アンプラグド プログラミング(unplugged programing)といって、コンピュータはおろか、電気も使わず(=unplugged)、プログラミングを教える手法もあります。いちばん有名なのは、2人1組で「ハンカチを畳んでください」というお題です。一人は指示しかできず、もう一人は指示通りに腕を動かすことしかできません。
「ハンカチ畳んでおいて」と、大人なら一発で理解できますね。しかし、2歳の子供にやってもらおうと思ったらどうしますか? そしてもし、指や関節を1本1本レバーで操作するロボットアームで実現しようと思ったらどんな操作がどれだけ必要ですか?
この問題を考えるのにコンピュータは必要ありませんが、立派なプログラミングです。
そして、この問題、日常のコミュニケーションでしょっちゅう発生してません? 私の経験で、一番失敗した例では、頼んでいた資料について部下から「(資料はこの部下の脳内で組み立てが)だいたい完成しました」という報告を受けて「じゃあ後はチェックして印刷か」と勘違いしたときです。その後しばらくして、慌てに慌てたのは言うまでもありません。

情報を状況に応じて端的に的確に伝える技術、あるいは感覚を磨いてほしいという思いが込められています。

スポンサーリンク

◯西那須野幼稚園のコンピュータ教室の中身
子どもたちはiPadを使って、絵を書き、それをアニメーションにしてみることをやっています。先週は、花火を作りました。

先生(私)の手順通りに忠実に作る子、手順は同じだけど各部品の大きさや色を大きく逸脱してくる子、あるいは全く違うものが出来上がる子(手順を理解しきれなかったことも含めて)、そして、私の予想を超えてアレンジを加えてくる子がいます。
全部OKです。
重要なのは、
1)現実の花火を想像して思い出して観察し直すこと
2)自分の作り出した結果がなぜそうなったのか考えること
3)他の子の作品を見て自分との違いに驚くこと
です。この3つの過程がめちゃくちゃ大事。

どの子も共通して、目をキラキラさせて、「先生見てー」と言ってくれれば成功。
たとえ間違って花火にならなくても、子供が自分の作った作品に納得できていてこのセリフが出ればいいし、あるいは「先生と同じにしたい」と悔しがり、その結果「先生見てー」でもOK。いずれの場合も、子供の頭の中では1)と2)を踏んでいるんです。そして教室の最後ではプロジェクタでみんなの作品を一度に投影しますので3)へと繋がります。

ただまあ、元エンジニアとして付け加えるとするならば、コンピュータでしか実現できない(花火の場合は、現実の花火では作れない)アレンジを加えてくる子は、クリエイターやエンジニア向きで、この中のさらに一部の子は、将来、プログラミング「を」学んだらいいと思います。
例えば先週では、散りゆく火花にひねりが加わる花火を作った子がいて(物理的にその花火を作るのは相当難しいと思います)、コンピュータ上の花火としては幾何学模様がとても美しい作品になりました。

そして願わくば、そうして育った子が世の中を変える製品やサービスを生み出してほしいです。でも、それは狭い意味での教育、つまり、平均的にみんなに見つけて(あるいは身につけて)ほしいこと、からは逸脱していくので、個性を伸ばすための個別の指導・支援になっていきます。だから全体の教室の中ではプログラミング「を」教えることはしません。

◯私が子どもたちに伝えたいこと
まあ、結局、最初に書いた「プログラミング教育」の目的と同じことなんですが。

・観察することは楽しいということ
・表現することは楽しいということ
・結果はそれぞれ違ってOKということ

つまり、多角的に物を考え、かつアウトプットしてみることで、それが相対化し、さらに多角化し、結局、「もとの考えや方向性、あるいは事実は同じでも、人それぞれ全部違うんじゃん」というのを肌で理解することなんです。

もちろんその心境に至るアプローチ自体も色々あると思うんですが、私自身はガチガチの左脳人間なので、そういうふうに一個一個分解してステップを踏んで、最終的には与えられた手順を暗記するのではなく、共通する思いやテーマを見つけてほしいんです。
ちょっと注意していただきたいのは手順を忠実に守ることが悪だとは言っていません。美味しい料理は手順あってのものですし、危険な作業現場での確実な手順の遵守は何よりも安全や事故の予防になります。

ただ、プログラミングを含む数学という学問を、数式の暗記とか、答えが一つに決まるものと思っている人は、私から言わせるととても不幸です。数式なんて、解決しようとする問題や前提条件(つまり思いやテーマ)を理解していれば、60分の試験中だって自分で生み出すことができます。つまり全く覚えている必要はありません。たった一つ、考えるのをやめなければいいんです。達成したいことがきちんと定まっていれば、ブレイクダウンしていけば必ず最後にはオリジナルの手順にたどり着きます。
それってすごい楽しいと思いません? だから私の中では「数楽」なんですけど、しばしば変態扱いです笑

西那須野幼稚園では、viscuitというプログラミング言語を使って、子どもたちは表現あそびをしています。興味のある教育関係の方がいらっしゃいましたら、ぜひお問い合わせください(宣伝終わり)

それでは楽しいプログラミングライフを。

ブログのタグ