読者です 読者をやめる 読者になる 読者になる

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

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

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

世界をプログラミングするとは?

前回は、街づくりのワークショップを通じて伝えたい街の本質について書きました。

再掲すると、「街」の本質とは

個の組み合わせによって大きくて複雑なものができていること

その中には何らかの「順序」が存在すること

 
となります。
 
個を組み合わせて大きくて複雑なものができる、については既に解説したので
今回はその逆(全体を個に分ける)について書いてみます。
 
 
「街をつくろう!」というテーマのワークショップは文字通り、街をつくるわけですが
まず最初に子どもたちが考えるであろうことは
「街には何があるだろう?(=何を作ろう?)」
です。
 
ワークショップのはじめに、参加してくれた子どもたちの自己紹介の中で
「会場に来るまでに街の中で見かけたもの」
を1つずつ発表してもらうようお願いしました。
 
すると、自動販売機、踏み切り(都電荒川線が近いので)、信号機、お寺などの建造物、はたまた花など非常に多くのバリエーションがありました。
 
 
どれも正解なわけですが、子どもたちのこうした視点から2つ、学べることがあります。
 
1つは、人は、そこに存在するものや、自分の知っているものしか想像できないということです。
小学生の子どもたちが知っているのはせいぜい、学校など身近な施設や、利用している交通機関など、自分の生活圏内で見たもの、知っているもの、という範囲でしかありません。
でも実際には、街はあらゆる要素で構成されているのであり、私たちはその一部しか見ていないのです。
 
だから、ものすごく狭い世界を捉えている子どもたちに対して「街をつくろう!」
と促すだけでは、自分の知っているものの中から思いついたものを作るだけの単なる工作になってしまいます。
 
 
そうならないように、実際に「街」を探検して観察したり、見たこともない世界の珍しい「街」や、映画、絵本の中に出てくる架空の「街」など
子どもたちの発想を広げるような情報を見せることは有効だと考えています。
 
そこで、先日のワークショップではお昼休みの間に、「街」に出て観察してくることを勧め、ワークショップの中では様々な「街」を紹介しました。
 
たとえば、オーストラリアのクーパーペディという地下にある「街」は見応えがあります。

オパールを求めて世界中から人が集まるのだそうですが、発掘者たちが過酷な気候から身を守るため地下に「街」が作られました。

 

こうした地下にある街を想像してみると、太陽がないから常時灯りが必要だとか、酸素濃度が薄そうだから火を使うのは難しそうだとか、移動手段はどうしようとか、いろいろと考えることが出てきます。

こうした発想を元に、同じような街を地上に作ったらどうなるか?

と考えるのも面白いです。(太陽に依存せず空調が完全にコントロールされた街は快適そう)

 

「街」を全体として捉えた上で建物などの要素を個として抽出していくステップのことを、探究型プログラミング学習ではモデリングと呼んでいます。

現実的に「街」を観察してモデリングしても良いでしょうし、現実に縛られず、一旦、発想を広げて様々な情報を元に新しい「街」を考えても構いません。

重要なのは、個を積み上げて街を捉えるのではなく、まずは全体を捉えた上で、個を捉える、という思考を知ることです。

 

これは、業務システムの開発現場において上流工程に位置づけられている「業務モデリング」というプロセスに該当します。

オブジェクト指向モデリングという手法があるのですが、この手法を使うと、企業に存在する業務を概念として(抽象的に)捉えることができ、業務の中に存在する要素(顧客や契約、など)を個(オブジェクト)として認識できるため、プロジェクト関係者間の認識合わせが容易になります。

オブジェクト指向については、いつか学習プログラムの中に入れてみたいと考えているので、詳細はまたそのときに

 

モデリングの思考は、プログラミング言語からスタートするプログラミング学習においては身に付けることができません。

しかし、全体を捉えた上で個を抽出する、という思考は、プログラミングにおいては、適切な粒度のプログラムを設計する際に役立ちますし

現実社会においては、瑣末な作業(個)に注目するのではなく、より広い視野で活動(業務や課題、など)を捉えることで最適解を導くのに役立ちます。

 

私は、このモデリングの思考をもつことは、あらゆる仕事において役立つと信じているので、あらゆる子どもたちが身につけておくべきスキルの一つだと考えています。

だから、探究型プログラミング学習のサブタイトルにある「世界をプログラミングする」には、その想いを込めました。

 

そして、先ほどの子どもたちの視点から学べることのもう1つは、個(要素)は単体で存在しているように見えて、実は繋がっている、ということです。

これが、街づくりのワークショップで伝えたい、街のもう1つの本質である

その中には何らかの「順序」が存在すること

に関係します。

 

続きは次回。

@tanpro-lab