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

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

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

【レポート】探プロで発想力を身につける~変身する公園をつくろう!~ K.I.T.虎ノ門大学院 2018.05.20

すっかり日があいてしまいましたが。。。先日の公園ワークショップの様子をレポートします。

これで何度目かの・・・「変身する公園をつくろう!」。

繰り返しくりかえし、やっているように見えて実は毎回、中身ががらっと入れ替わります。

初めてこのコンテンツでワークショップをやったのがなんと2年前。

 

公園は変身するということ、そこからプログラミングの「ポリモフィズム」という考え方を学ぶこと、だけは決まっていたものの、当時はまだ深掘り、それこそ探究が足りていなくて、どちらかというとlittleBits工作のような形になっていました。

 

探プロが伝えたい「ポリモフィズム」の考え方は、「アルゴリズム」とは違って一般的に全く馴染みがないですし、非常に抽象的でかつ、実際にプログラムを設計してみないと理解しづらいものです。

それを、誰でもすぐに理解できて使いこなすことができるように何度も考え直し、作っては壊し、を繰り返しています。

 

そして今回、満を持しての提供です。

いつもの会場に、小学2年生から5年生の10名が集まってくれました。

中には、前回のポストのワークショップに続いて参加してくれた子たちもいて、とっても嬉しかったです!!

f:id:dig_learning:20180531060502j:plain

今回は、テーブルに5人ずつ座り、各テーブルにはTAの小学生に1人ずつ入ってもらいました。

アンケートにも書いて頂きましたが、同じ年頃の子どもにサポートしてもらいながら学ぶのは子どもたちにとっても良さそうです。

前回に引き続き2人の男の子にTAを引き受けてもらいましたが、回を重ねるごとに彼らの熟練度も上がっていき、littleBitsの使い方を伝えることについてはもう私の出番がなくなるほど(笑)

)f:id:dig_learning:20180531061349p:plain

とてもとても貴重な体験になるので、我が子こそ!と思う方は是非ご紹介ください!

 

さて、ワークショップの話に戻ります。

このプログラムは2部構成で、前半が公園の探究、後半が工作としています。

 

以前は、公園は変身するって知ってましたか?と始めていたのですが、今回は「合体」と「変身」の違いをお伝えしました。

 「合体」はパーツAとパーツBが組み合わさったものですね。例えば、消しゴムつき鉛筆とか、朱肉付き印鑑、多色ボールペンあたりがそうです。

公園にもあります。こんな複合型の遊具を見たことがあると思います。

f:id:dig_learning:20180531062048p:plain

こんな遊具が近くにあったら、毎日公園に遊びに行くのに!

でも近所の小さな公園には、こんな大きな遊具なかなか置けません。

 

これが「合体」の問題点です。

そう、良かれと思って組み合わせを増やすほど、大きくなってしまうのです。

たくさんの機能があれば便利だし楽しいですが、それと引き換えに、大きくなることを受け入れなければいけないのです。

 

さて困った。

大きさに制約はあるけれど、たくさんの機能もほしい。

そんなときに「変身」の考え方が使えます。

 

今年の春に、こんなニュースが話題になりました。

車から二足歩行のロボットに変身!

アニメの世界を本当に作ってしまうなんてすごい。

他にも、メガネのJINSがこんな商品を出して話題になっています。

ありそうでなかった、ワンタッチでサングラス。

ちなみに、この商品をワークショップで紹介したあと、帰り道にたまたま広告を見かけて盛り上がっている子がいました。

普段の生活の中でふと、今回のワークショップのことを思い出してくれたらすごく嬉しいです。

 

そして、変身するものは公園にもあります。

災害時に避難所として使うときにはベンチが竈に変身するカマドベンチ

かまどベンチ|防災ファニチャー|株式会社コトブキ

同じくマンホールトイレ。

下水道:マンホールトイレについて - 国土交通省

 

もちろん、公園そのものも変身します。

遊び場、憩いの場、スポーツをする場、避難所、夏祭り会場・・・

 

変身するのって、ちょっと面倒です。形を変えるのに手間や時間がかかるので。

ではどうして、わざわざ「変身」するものを作るのでしょう?

答えは、困ったこと(問題)を解決するため、です。

 

JINS SWITCHであれば、サングラスと通常のメガネを2つ持ち歩いて付け替えるのが面倒だし、めったに起きない災害のために、公園に竈や簡易トイレを置くと貴重な公園のスペースが有効に使えません。

こうした問題を解決するのが「変身」という考え方なのですが、どうすれば変身させることができるのか?

 

ワークショップでは、変身させるための3つの手順を伝えました。

まずは、"似てる"と"違う"を探すことです。

f:id:dig_learning:20180531064017p:plain

例えばlittleBitsには、○○センサー、というものがいくつかあります。

センサーとは、何らかの反応を受けて信号をONにするものですね。

littleBitsの音センサーであれば、音がなると電気が通る仕組みになっています。

何の反応を受けて、という部分はすべて違いますが、それ以外の仕組みは実は同じなのです。

だから、この同じ部分を1つにまとめます。

f:id:dig_learning:20180531064336p:plain

そして、時と場合によって違いを出します。

f:id:dig_learning:20180531064436p:plain

残念ながらlittleBitsは「合体」しかできないので、こんな都合の良いモジュールは存在しないのですが、もし「なんでもセンサー」があったら、littleBitsの工作はどうなるでしょう?

少ないモジュールの組み合わせでいろんな機能を実現できるので、より面白いものが作れるはずです。

 

ではこの変身の考え方を使って、先ほどのサングラスやカマドベンチがどんな変身を遂げているのか見てみましょう。

何が同じで、何が違いますか?是非、お子さんと一緒に考えてみてください。

 

さて、ここまできてようやく、プログラミングの考え方として「ポリモフィズム」を紹介します。

f:id:dig_learning:20180531064829p:plain

ちなみに、これは専門用語ですし、発音も難しいので覚える必要は全くありません。

覚えて得意げに使ったとしても、誰も分からないので役に立ちません(笑)

考え方だけを覚えていればOKです。

 

一応、ポリモフィズムの説明をしておきますが、分からない場合は、何の役に立つのか?というところだけ読んでください。

  • プログラミングの考え方の1つである『ポリモフィズム』では、似たようなAとB、2つのプログラムを作る代わりに、似ている部分を共通化したCをつくり、時と場合によってAにもBにもなるように設計します。
  • それによって、同じようなプログラムを2つ作らなくても済みます。
  • これを実現するためには、モノゴトを抽象化し、本質的に捉える力が必要であり、この力は様々な場面で応用できます。

最後の、モノゴトを抽象化し、というのが先ほどの手順に出てくる「似ているものを探す」ということです。

子どもと一緒に絵本などを使って○○と△△は同じグループ、などの遊びをしたことはありませんか?
自転車とバイクは二輪で走る乗り物のグループとして括れますし、バイクと自動車はタイヤの数ではなくエンジンが搭載された乗り物のグループとして括れます。

そして、自転車もバイクも自動車も、全て「乗り物」というもっと大きなグループで括ることができます。

ベストセラーの『はじめてであう すうがくの絵本』安野光雄著 の中にも、このような遊びがたくさん出てきますよ。

 共通項は何か?と考えることは、抽象化への一歩です。何か問題があったとき、個別のモノや事象として捉えるのではなく抽象的に捉えることができると問題解決力は格段にUPします。
AとBという2つの問題に個別対処するのではなく、それは要するに何か?と考えることができれば効果的にアプローチできるようになるからです。

ポリモフィズム」という言葉は一般的に馴染みのないものですが、根底にあるのは抽象化の考え方です。
似たようなプログラムをたくさん作る代わりに、似ているところを見つけて共通化し、差分だけをプログラムとして作ればムダがありません。
(変化に強い、というメリットもあります)
エンジニアの人たちはこうした考え方をプログラミングを通じて習得しているので、モノゴトを抽象的に捉えることが比較的得意です。


でも、実は私たちの日常にもこうした考え方を活用した例はたくさんあり、プログラミングができなくても、エンジニアにならなくても、こうした考え方を学んで使いこなすことはできるはず、と考えたことがこの「変身する公園をつくろう!」というワークショップに込めた想いです。

 

ワークショップの後半では、いつもの公園がもっともっと楽しいものになるように、公園にあるものを変身させよう、とお題を出しました。

f:id:dig_learning:20180531232631p:plain

お父さん、お母さんや見学者の方々も混じってワイワイと。

大人の方がアタマが固くて、うーん、と唸ったまま手が動かない人たちもちらほら。

 

公園にあるものと、何か別のものを比べて、似ているところ、違うところを見つける。

これが第一歩なのですが意外と難しいです。

その難しさを実感することで、カマドベンチやワンタッチサングラスというものを考えた人たちの発想力にあらためて関心することになります。

すごいよねぇ、と言うとみんな頷いていました。

 

今回、あまり余裕がなくて子どもたちの作品をうまく写真におさめられなかったのですが、、興味深いものがたくさんありました。

 

例えば、滑り台と担架の共通点は人が横になること、という点をみつけた子は、公園でケガをした子がいると急遽、滑り台を担架に変身させて病院へ運ぶ、ということを思いつきました。

滑り台を取り外す発想はなかった!

よく気づいたなぁ、と感心しました。

 

同じく滑り台を使って、はしご車と似ていると気づいた子もいました。

火災発生時には滑り台がはしご車に変身!

移動式の滑り台です。これも、動かないものを動かすという自由な発想がないと生まれない作品です。脱帽。

 

他にも、いつものベンチが介護用ベッドに変身したり、屋根つきの休憩所や寛ぎスペースが災害時には壁ができて安全なシェルターに変身したり。

グローブジャングルと発電機を組み合わせた子もいました。

f:id:dig_learning:20180531233647p:plain

 

ポリモフィズムの考え方を使えるようになると、”似ているところ”を探すのがうまくなります。

ベンチとカマドは似ている、って最初に気づいた人はすごいと思いませんか?

似ているものなら、1つにまとめられるんじゃないか?

と考えるところが問題を解決する第一歩です。

他の皆は気づいていないけど、”似ているところはないか?”と考えながら観察する人にだけ見える”似ているところ”は意外とあるのです。

 

意外と、家の中の台所でも見つかると思いますよ。

もし見つかったら、是非教えてください。

これまで誰も考えつかなかった「似ているもの」を発見することができたら、大発明に繋がるかもしれません。

 

今回のワークショップは特に、大人の方々が非常に熱心に見て、聴いてくださったので嬉しかったです。

ポリモフィズムなどという難解な専門用語をどうすれば伝えられるのか?

ずっと悩んで試行錯誤した甲斐がありました。

ただ、littleBitsを使うことで思考の面白さが逆に伝わりにくくなってしまったのは反省点です。

littleBitsを一切使わない方がむしろ、面白さを実感できるかもしれません。

なかなか勇気がいりますが、、、今度チャレンジしてみようと思います。

 

ご参加くださった皆さま、ありがとうございました。

次回はまたブラッシュアップして臨みますのでお楽しみに!

【レポート】プログラミングで問題解決~ポストはなぜ赤いのか?~ 3/24 K.I.T.虎ノ門大学院 2018.03.24

先週末に実施した、プログラミングワークショップのレポートです。

【見学枠のみ受付中】★探究型プログラミング学習★プログラミングの考え方を学んで問題解決!~ポストはなぜ赤いのか?~ | Peatix

 

2018年3月24日(土)の午後、桜が咲き始めた虎ノ門に8名の小学生が集まってくれました。

会場は、 母校である久しぶりのK.I.T.虎ノ門大学院です。

 

タイトルは、先日、北区の小学校でやらせてもらったものと同じ『ポストはなぜ赤いのか?』。

【レポート】プログラミングで問題解決~ポストはなぜ赤いのか?~ 1/2 北区立桐ヶ丘郷小学校 2018.01.19 - 探究型プログラミング学習(探プロ)

f:id:dig_learning:20180401235554j:plain

桐ヶ丘郷小学校でやったときは、45分間しかなかったので概念の理解に留まりましたが、今回はさらに45分を追加して、学んだ考え方を実際の問題解決に使ってみるところまでチャレンジしました。

 

2時間のワークショップの流れは

問題の発見⇢問題解決のしかた⇢アルゴリズムの学習⇢問題解決の実践⇢発表

です。

使う教材は今回もlittleBits。

 

今回は見学者の方にもたくさん来て頂き、保護者の方たちと一緒に子どもたちが学ぶ様子を見守って頂きました。 

f:id:dig_learning:20180401234519p:plain

f:id:dig_learning:20180401232524p:plain

いざ始まってみると、ちょっと緊張した空気が張り詰めて皆、真剣な表情で話を聞いていました。

f:id:dig_learning:20180401232631p:plain

いつもの教室で授業をきくのと違って、初めての場所で初めて出会う子たちと一緒に突然、和気あいあいとって無理ですよね。。。

もうちょっと、最初にリラックスする仕掛けがあると良かったかなぁ、と反省です。

 

でも、ワークショップ中に話のメモをとってくれる子たちがたくさんいて、探プロを始めて以来のできごとにちょっと驚きました。

真剣な眼差しを受けて、気合を入れ直しましたよ。

 f:id:dig_learning:20180401233323p:plain

人間は命令されても出来たり、できなかったり、なのに、コンピュータはいつも必ず同じ結果を出すことができる。

コンピュータと人間の違いってなんだろう??

f:id:dig_learning:20180401232720p:plain

コンピュータと同じように、人間にもアルゴリズムがあれば、私たちは忘れものだってなくすことができるんじゃないか?!

アルゴリズムを使えば身近な問題を解決することができる、という話がすごく印象的だったとアンケートで答えてくれた子がいました。

そうやって気づいてくれる子が一人でも増えてくれたら嬉しいです。

 

考え方を学んだら、実際にlittleBitsを使って手を動かしながら理解を深めていきます。

f:id:dig_learning:20180401232809p:plain

littleBitsを使う場面では、今回TAとして二人の小学生(4年生、3年生)が活躍してくれました。

半分以上がlittleBitsを初めて触る子たちだったので、動かし方につまづいたときにさりげなくサポートをしてくれました。

大人と子ども、ではなく子どもと子どもの関係性の中から、お互いに学ぶこともあると思います。

同世代が頑張っている姿は刺激になったのではないでしょうか?

f:id:dig_learning:20180401232854p:plain

 

アルゴリズムの考え方、問題解決の場面での使い方を理解した後は、いよいよ実際に使ってみます。

明治時代から現代にかけて、ポストはいろんな問題を解決しながらいまの形に変化してきました。

では、現代のポストにはもう、問題はないのでしょうか?

f:id:dig_learning:20180401233047p:plain

一般的なポストには入口が2つあるけれど、人間が判断しなければいけないのでちょっと大変です。

ときどき、間違えることもありますよね?

もしかしたら、大して気にせず適当に放り込んでいる人もいるかもしれません。

 

ではこの問題を、アルゴリズムを使って解決してみましょう。

 

君たちはいま、郵便ポストの中にいると想像してください。

このポストには、入口は1つしかありません。

いま、封筒やハガキ、大型郵便など、いろんな郵便物がどさっと入口から投函されたとします。

ポストの中には、「手紙・はがき」と「大型」の2つの袋があります。

f:id:dig_learning:20180402001447j:plain

さぁ、どんなアルゴリズムがあれば、いつも必ず、同じ結果(仕分け)を出すことができるでしょうか?

隣の子とペアになって、考えてみよう。

f:id:dig_learning:20180401233146p:plain

楽しそうに会話を進めるペアもあれば

f:id:dig_learning:20180401233402p:plain

一人ずつ考えると決めたペアもいたり

f:id:dig_learning:20180401233513p:plain

定規を使って封筒をはかってみたり、littleBitsを使って動く仕組みを考えてみたり

f:id:dig_learning:20180401233543p:plain

考えたアルゴリズムは、二人で協力して図解します。

f:id:dig_learning:20180401233258p:plain

フローチャートを使って書くと、他の人に伝えるのが楽になる、という話をしたものの、書き方は自由としました。

かっこよくフローチャートが書けるのも良いのですが、今回は本質ではないので。

代わりに、どんなスタイルでも良いから、順次構造、くりかえし構造、分岐構造の3つのアルゴリズムを使っていることが分かるように書くことをお願いしました。

f:id:dig_learning:20180401234422p:plain

 

そして最後は、ドキドキの発表。

トップバッターは3年生の男の子。

ペアにはならず、一人でやり遂げた彼のアルゴリズムをきいて、大げさではなく私は腰を抜かしそうになりました。

f:id:dig_learning:20180401233702p:plain

完璧でした。すごい。

発表スタイルも完璧。あまりにも出来が良くて、このあとの子たち大丈夫かしら??と心配になるほどでした。

もちろん、そんな心配は無用でしたが。

 

次はこちらの4年生ペア。

最初はなかなか会話が進まなかったのですが、考える順番を伝えてきっかけを作ってあげたら、すぐに書き始めることができました。

シンプルなアルゴリズムですが、しっかり発表できたところはさすが4年生です。

f:id:dig_learning:20180401233755p:plain

続いてこちらは、考えるときに一番動いていたペアですね。

私が持ち込んだ郵便物を、手で触ったり長さをはかったりしながら一生懸命に考えていました。

f:id:dig_learning:20180401233855p:plain

おもしろいのはここからで、彼らは唯一、littleBitsを使ってある仕掛けを作ったのです。

f:id:dig_learning:20180401234019p:plain

ポストの中を郵便物が通過するとブザーが鳴る仕掛けです。光センサーを使って作りました。

きっかけは、ポストに投函しても、入口でつかえていることに気が付かないことってよくありますよね、という話でした。

中までちゃんと郵便物が入れば音が鳴って知らせてくれるこの仕組みは、とても良いセンスだと思います。

何より、チャレンジしたところが素晴らしい!

 

そしてこちらはTAペア。

すごくユニークな発想で問題を解決しました。

f:id:dig_learning:20180401234118p:plain

他のペアは郵便物のサイズを1つずつ測って判断しているのですが、彼らが用意したのは15cmの穴。

大型郵便はこの穴を通ることができないので、どさっと郵便物が入ってきても、穴を通過しないものを大型として振り分けてしまえば、一瞬で片付いてしまいます。

 

アルゴリズムを考えるとき、どうしても緻密に細かく定義しがちなのですが、こうやって頭を柔らかくして発想することができれば、もっと簡単に解決できる手段があるわけですね。

勉強になります。

 

続いて女の子ペア。

8人中、女の子は2名でしたが、意図的にペアを組んだわけではなく、全くの偶然です。

なぜなら、探プロのワークショップでは申込時に性別を聞かないので、当日まで分からないのです。

私は、プログラミング学習に性別は関係ないと思っているので、変なバイアスをかけないようにあえてそうしています。

二人ともよく考えて抜いていました。

f:id:dig_learning:20180401234215p:plain

 

そして最後は3年生の男の子。

発表は苦手のようでしたが、littleBitsの使いこなしは見事でしたよ!

f:id:dig_learning:20180401234334p:plain

 

保護者のアンケートの中には、子どもたちがしっかりと理解していて驚いた、という回答がいくつかありました。

そうなんです。今回のお題は簡単なようで意外と難しいのです。

 

私自身も、半分くらいの子が最後までたどり着ければ良いかな、と思っていたのですが、実際にはパーフェクト!

前半の話をしっかり理解して、論理的思考を使ってアルゴリズムを考えることができていました。

小学生を侮ってはいけませんね。本当にびっくりです。

 

最後に、保護者と見学者の方からのアンケート回答の一部をご紹介します。

"考え方を学ぶ"という軸をぶらさずに、授業をやりきることの価値をあらためて感じました。 

 

"考える"という軸がブレずに講座が進行しており、いわゆるプログラミング講座の、作って動かす、楽しかった、というモノとは一線を画す印象です。 

 

いわゆるモノの楽しさ、集中度に比べると見劣る部分はありますが、続けることで得られる学びは今日のほうが圧倒的に高いであろうと思いました。 

 

私よりも子どもの方がよく理解しているということを実感しました。身近な問題とプログラミングの関係が分かりやすくてとても良かったです。 

 

最後のまとめで、ハンドブックに書いてある考え方は、家や身近なことにも使えるので考えてみてください、というメッセージがあったのが良かった。

 

今回のワークショップでは、プログラミングの考え方を学ぶこと、その考え方は日常生活での問題解決に活かせること、をちゃんと伝えることを目標にしていました。

なのでlittleBitsを使う時間は最小限にし、考える時間をたくさんとっています。

 

そうすることで、私がやりたいことは実現できます。

でも一方で、子どもたちがワイワイと楽しむ時間や、試行錯誤しながらモノを作り上げていく体験は減ってしまいます。

地味で、楽しさがなんとも伝わりづらいこのワークショップ形態を、一般の方にも受け入れてもらうことができるだろうか???

コンセプトには自信を持っているものの、開始前は本当に不安で仕方がなかったです。

 

ところが、やってみれば結果は想像していた以上に良くて安心しました。

子どもたちのアンケート回答では、特に面白かったものとして、littleBitsの次に多かったのが「アルゴリズムを使った問題解決」でした。

また、アルゴリズムの考え方を学べたことが面白かった、と回答している子もいました。

 

最後の発表が苦手だった子も中にはいましたが、保護者や見学者の方からは大変良かった、とご意見を頂きました。

2時間のワークショップの中で、お子さんたちが何を学び、どれだけの成果が出ているのか?

やはり発表をきくことで一番実感することができるので、このステップは重要ですね。

発表嫌いな子でも楽しめるような仕組みをなんとか、考えたいと思います。

 

終了後にTAの二人と記念撮影。

f:id:dig_learning:20180401234626p:plain

とってもよく頑張ってくれました。

お礼に差し上げたのは、貼るだけで何でも定規になっちゃうマスキングテープ。

これでいつでもどこでも測れますね!

 

探プロでは今後、プログラミングの考え方を理解し、ワークショップを盛り上げてくれる子どもたちをTAとして育成したいと考えています。

ワークショップに参加したお子さんの中で、今度は教える側にまわってみたい、という子がいたら是非ご連絡ください。

きっと良い経験になると思います。

 

最後に、次回のご案内です。

5月20日(日)午後、K.I.T.虎ノ門大学院にて実施します。

テーマは『変身する公園をつくろう!』

利用教材はlittleBitsです。

創造的思考とプログラミング学習を組み合わせ、単なる工作ではなく次回も「考えること」を重視した形を追究していきます。

告知サイトは近日中に用意しますので、もうしばらくお待ち下さい。

 

ご参加くださった皆さま、本当にありがとうございました!

今回、学んだ内容を是非、ご家庭でも実践してみてくださいね。

身近な問題解決に使ってみたよ、というお話もお待ちしています!

なぜプログラミングの考え方(例:アルゴリズム)を学ぶのか?

以前に、プログラミング的思考という概念を自分なりに整理したことがあります。


その中では、「モノゴトを効率化する」ことに着目しました。

しかし、「効率的」という言葉だけだと少し足りないなぁ、とこの頃は感じています。

 

最近のワークショップでは、コンピュータと人間の違いは何か?

といった話をよくしています。

何が違うと思いますか?

 

人間は生き物だがコンピュータはそうではないとか、人間は意志をもつがコンピュータにはないとか、そういう話はさておき。

 

コンピュータには出来るが、人間には難しいこと。

例えば、複雑な計算を超高速で実施する、とか、休憩なしで動き続ける、大量の情報を記憶する、といったスペック(性能)の違いがありますね。

どんなに超人的な人間でも、一定を超えるてしまうとコンピュータには叶いません。

 

実は、コンピュータから学ぶことで、私たち人間にも出来るようになることがあるのです。

 

コンピュータと人間の違いとして、こんなことを伝えています。

コンピュータは、命令に対していつも必ず、同じ結果を返すことができる。

でも人間は、そうではない。

 

例えば、私たち大人は子どもたちによく命令をします。

「早く起きなさい・早く寝なさい」

「宿題をしなさい」

「片付けなさい」

「忘れ物をなくしなさい」

などなど。

 

そうすると、子どもたちはどんな反応をしますか?

毎回、その通りに動いていますか?

そんなわけないですよね。

 

子どもたちだけではありません。

大人である私たちだってそうです。

職場で、家庭で、あらゆるシーンで、いつも必ず、同じ結果を出す、というわけにはいかないと思うのです。

疲れていたり、ついうっかり忘れたり、気分が乗らなかったり・・・

だって人間だもの、ですよね。

 f:id:dig_learning:20180225002331p:plain

 

ではなぜ、コンピュータには出来ると思いますか?

 

答えは、コンピュータはアルゴリズムで動いているから、です。

f:id:dig_learning:20180225002424p:plain

アルゴリズムとは、命令の順番とルールを決めるものです。

コンピュータが実行するプログラムは命令の集まりです。

その命令を、どんな順番で、どんなルールで実行するのか?

それを決めたものがアルゴリズムです。

 

アルゴリズムがないとコンピュータはプログラムを動かすことができません。

逆にアルゴリズムがあれば、コンピュータはいつも必ず、同じ結果を出すことができるのです。

なぜなら、アルゴリズムで決められている通りに動くだけだから。

 

では、人間もアルゴリズムの通りに動けば良いのでは?

と思いませんか。

 

例えば、歯磨きのシーンを思い浮かべてみてください。

誰しも一度は、歯科衛生士さんから指導してもらったことがあると思います。

でも、毎日毎日繰り返しているうちに、我流になっていませんか?

その磨き方、本当に虫歯を防ぐことができていますか?

 

もし、正しい歯磨きのアルゴリズムがあったら、それで100%虫歯を防げるとしたら、そのアルゴリズムを覚えたいと思いませんか?

 

アルゴリズムを学ぶ理由は、ここにあります。

 

これからの時代を生きる子どもたちには、プログラミング的思考が重要だ、という話を聞いたことがあると思います。

なぜ重要かというと、多くの場合、

コンピュータや技術の仕組みを理解し、それらを使いこなして問題を解決できるようになることが必要になるから 

と言っているようです。

 

それは正しいと思います。

でも、やはりこれだけでは足りない。

 

 

コンピュータや技術について学ぶ意味を、もう少し掘り下げて考えてみると、単なるツールとして使いこなすのではなく、そこにある「考え方」を問題解決に応用することが求められているはずです。

 

アルゴリズム以外にも、身近な問題解決に役立つ「考え方」は他にもあります。

探プロではこれらをまとめて、「プログラミングの考え方」と呼んでいます。

 

アルゴリズムを取り入れることで解決できる身近な問題。

さて何があるでしょう?

是非考えてみて下さい。

 

「プログラミングの考え方」を活用した問題解決ってこういうこと、という話を分かりやすく伝えるために、ワークブックを作っています。

f:id:dig_learning:20180225003214p:plain

いま、Vol.1、Vol.2が完成していて、Vol3の製作中です。

Vol.1 アルゴリズム-くり返し処理-

Vol.2 アルゴリズム-分岐処理-

もう少し数が増えると本になるとかならないとか・・・

 

印刷したものが欲しい方はこちらまでご連絡ください。

info@tanpro-lab.jp

 

近日中に、Webサイトからもダウンロードできるようにする予定です。

 

さてVol.3をそろそろ作らなければ・・・

@tanpro-lab