探究型プログラミング学習(探プロ)

プログラミングの考え方を学んで、未来を創る力を手に入れる

プログラミングの考え方を学んで未来を創る力を手に入れる

モノゴトを定義することと本質を捉えることは同じ

探プロのコンセプトを考えたり、プログラミング的な思考は社会の中にも存在する

といったことを伝えようとするときに

もしかしたら、私が当たり前だと思っている思考が

実は多くの場合、そうではないのかもしれない

と気づくことがありました。

 

いくつかあるのですが、そのうちの1つが、モノゴトを定義するということです。

 

会話するときも、文章を書くときも、何をするときも、このモノゴトを定義するということが大前提としてある

と私は考えています。

同じ言葉でも、意味するところが人によって違うと、コミュニケーションが成り立たなかったり、あとあと面倒なことになったりするので、必要性については多くの人が認識していると思うのです。

 

たとえば、プログラミング、という言葉だってそう。

ゲーム業界に縁のある人は、ゲームやアプリのデザインから設計、実際にコードを書くところまで含めた活動をプログラミングと言うのかもしれない。

Webサイトの開発に縁のある人は、JavaScriptCSS、HTMLなんかを使ってサイトを設計、構築する活動をプログラミングと言うのかもしれない。

はたまた、エンタープライズ(企業などの大規模システム)開発に縁のある人は、設計より下位層のコードを書く部分(コーディング)をプログラミングと言うのかもしれない。

もしくは、子ども向けプログラミング学習の話を見たり聞いたりして初めて知った人たちは

Scrachを触ったりロボットを動かすことをプログラミングと言うのかもしれない。

 

この辺の文脈を意識しておかないと、同じ言葉を使っても全然違う話になるので

言葉が意味するところを定義することはとても大切です。

 

プログラミングを学習したり仕事で携わっている人たちは

モノゴトを定義する、ということを日常的にやっているので

その能力がものすごく鍛えられて、それこそ反射神経的に出来るようになっています。

(もちろん、そうでない人もいるのですが…大抵の場合、使えない人材として扱われてしまいます…)


なぜそうなるかというと

複数人で一つのものを作るためには言葉の定義が必須なのと

コンピューターのように曖昧さが許されない環境扱うから

ではないかと思っています。


前者はどこの業界でも同じでしょうが、特に後者が効いてきます。

漠然とした曖昧な世界を、厳密なコンピューターの世界に確実に変換するためには

モノゴトを定義することから始まると言っても過言ではないもしれません。


この思考はもう癖のようなものなので普段は意識しないのですが

例えば、学習プログラムを設計するときに

公園とは何か?学校とは何か?

なんてことを考えるわけですが

これは要するに、公園を公園たらしめているものを探して、公園というものを定義していることになるわけです。

学校も然り。


昭和記念公園も、近所の小さな公園も、恐らく公園です。

でも、ディズニーランドのようないわゆるテーマパークと呼ばれるものは

パークと言うものの、公園とは呼べない気がします。

この差は何か?

と掘り下げていくことが、本質を見抜くことなのであり

モノゴトの定義とは本質を見極めることなのだなぁ、と思うわけです。


探プロのモデリングのプロセスを繰り返していくと

きっと、それが出来るようになるはずなので

楽しみながら子どもたちがその思考を身につけるにはどうしたら良いのか?

今日も頭を悩ましています。


でもこの作業は私にとって、自分の思考がどのようにして身についたのかを振り返るきっかけになるので

とても楽しかったりもします。

@tanpro-lab