見出し画像

コンピューテーショナル・シンキングをはぐくむ教育とは?

問「あなたが考える、子供に贈る最高のコンピュテーショナルシンキング教育とはどのようなものですか?」

この質問を米国ProjectEdデザイン戦略家でCreativeGym創設者である梅原崇央氏から受け取るまで、 コンピューテーショナル・シンキングという言葉は知りませんでした。

コンピューテーショナル・シンキングの考え方自体は1950年代まで遡れるようだし、言葉自体も80年代から存在するのだけれど、また流行ってるのは Jeannette Wing氏 によるところが大きいのでしょう。(参考ビデオ

※ 日本語で元々の考え方に忠実なオーソドックスな記述が見つけにくいのですが、この記事などはどうでしょうか。

私の理解はまだ表面的でしかないけれど、13歳からプログラミングをしてきた自分がコーディングとは関係のない創造的な仕事、例えば会社組織をつくるとか、若手を育てて仕事を任せるだとか、そういう場面で頭をひねるときにコンピューテーショナルな思考を用いていると思います。

単純な例えでは、外部から仕事のリクエストを受け取った場合、個別タスクをどうキューに押し込み、優先順序をシリアライズし、どのワーカーに実行させるのか。 タスクを実行する能力を持ったワーカーを如何に複製し、経済的に待機させておくのか。 そうして成り立つサービスは、どのようなプロトコルで齟齬なく外部とのコミュニケーションを図り、継続的かつ順応性を持って価値を生み出し続けるのか。

人間には理性と感情があり、理性的なプランをつくっても感情へのケアがなければ何事も実現できません。機械でないですから。でも、コンピュータのような冷徹な目で問題を観察して、効率的でスケールする解決法を、あたかも機械に渡すインストラクションセットのごとく明快に 書き出せることは、多くの人を巻き込んだ仕事をする際に有利に働くと思います。

もちろん、インストラクションセットさえ与えられれば動き出すのは機械であって、人間のチームはそうは行きません。時計仕掛けのようなきれいな組織にも、リーダーが感情のオイルを絶えず注入する必要がある。また、多くの人は自分のゴールを持っている。人間は機械よりも自律性が高いし、個々人の創造性を重んじてやらなければ、可能性の芽を摘んでしまう。だから細部までトップダウンの決めごとづくしでもいけない。明確なガイドラインを作りながら、 実行する人間の心の居場所を融通することで、ようやく「生々しい歯車」が動き出すというイメージでしょうか。

コンピューテーショナル・シンキングについて少し読んでいると、土台となる考え方はコンピューテーショナルというよりは問題解決者、 特にエンジニアの考え方全般に当てはまると思いました。私はそのような考え方の土台をカーネギーメロン大学院時代、工業系の教授や友人を通じて学びました。だからコンピューテーショナル・シンキングという呼び名には当初抵抗がありました。しかし、今日の知的活動において、デジタルデータの大量代謝は見逃せない側面です。特に大きな問題や、スケールする解決法を導く場面を意識すると、コンピューテーショナル・シンキングという名前も悪くないなと思い始めています。

さて、「子供に贈る最高のコンピュテーショナルシンキング教育」とは何かという質問でしたが、自分の子供が小さすぎて、まだそのような事を考え抜いたことはありません。さすがに三歳半で高度なアルゴリズム思考に飛びつくのは非現実的です。今はその土台となる基本的な脳の習慣を植え付けることに親として心がけています。

例えば朝、出かけの忙しい時に子供が自分でボタンをとめたり靴を履こうとするのを見守るのは、非常に忍耐を要します。また「こうするのが当たり前」と押し付けず、何故そうするのが良いのかをかみくだいて説明するのも面倒な作業です。さらに大人が観ると失敗することが明白な時にも、敢えて介入せず失敗させてみる。これも実行すると、どっと疲れを感じます。子供を躾ける前に、自分自身の自己制御能力を試される思いです。

でも子供が自分で発見し、理論的に考えをまとめ、自ら問題を解決する力を身につけるには、周りの大人が子供の思考を停止をさせないための気遣いを丹念にやるぬくしかないと信じています。同じコードを書く職業にしても、他人に設計してもらい、他人の書いたライブラリーが提供するまで何もできない三流プログラマーで終わるのか、荒削りでも自分でシステムの設計をして実装しぬけるコンピュータ・サイエンティストに成るのか。それをコンピューテーショナル・シンキングと呼ぶかは別として、幼少期の思考習慣は、 その後の人生における問題解決能力に非常に大きな影響を与えると銘記して子育てに奮闘しています。

この記事が気に入ったらサポートをしてみませんか?