【プログラミング】この夏、おうちで学ぼうプログラミング。プログラミングのことがよくわかる、当サイトおすすめプログラミング学習絵本&児童書ベストセレクション【自宅学習】

2022年8月3日

広告

独断と偏見の 当サイトおすすめプログラミング学習絵本&児童書 ベストセレクション

小学校のカリキュラムに「プログラミング」が採用されました。このブログでは、プログラミングに必要な考え方「プログラミング的思考」を学ぶために必要な絵本や児童書、プログラミングに興味、好奇心を抱けるような絵本をご紹介します。一般人からみるとちょっと不思議な世界、プログラミング。児童書と絵本から、覗いてみましょう。

独断と偏見の 当サイトおすすめプログラミング学習絵本&児童書 ベストセレクション

当サイトおすすめプログラミング学習絵本&児童書 5位    月とアポロとマーガレット ディーン・ロビンズ/文 鳥飼玖美子/訳 ルーシー・ナイズリー/絵 評論社

独断と偏見の 当サイトおすすめプログラミング学習絵本&児童書 ベストセレクション

 アメリカのロケット開発「アポロ計画」に多大な貢献をしたプログラマー、マーガレット・ハミルトンについて描かれた絵本。
 未知のもの、わからないことに挑戦するのが大好きで、人間を月面に送り出すためにあらゆることを予測してやり遂げたマーガレットの、情熱と好奇心に満ちた人生を描いています。

 プログラミングってこういうことに必要なんだ、プログラミングの力でこんなこともできるんだ、と思える絵本。
 「月とアポロとマーガレット」のレビューはこちら

当サイトおすすめプログラミング学習絵本&児童書 4位    世界でさいしょのプログラマー エイダ・ラブレスのものがたり
フィオナ・ロビンソン/作 せな あいこ/訳 評論社

独断と偏見の 当サイトおすすめプログラミング学習絵本&児童書 ベストセレクション

 世界で最初に「パンチカード」を使ってプログラミングをしたのは、エイダと言う夢見る女性だったのです。エイダが夢見たことは、現代ではほぼ実現されています。

 すぐれた計算力と予測力、そして豊かな想像力をもった1人の女性が、コンピューターという精密機械の未来を拓きました。プログラミングの歴史を知ることができる絵本。

 「世界でさいしょのプログラマー エイダ・ラブレスのものがたり」のレビューはこちら

当サイトおすすめプログラミング学習絵本&児童書 3位    プログラミングガールズ! 1  ステイシア・ドイツ/作  美馬 しょうこ/訳  高橋 由季/絵  石戸 奈々子/監修  偕成社 

独断と偏見の 当サイトおすすめプログラミング学習絵本&児童書 ベストセレクション

 こちら、四冊のシリーズ物ですが、プログラミング入門書としてすばらしいのは第1巻。あとはわりとふつうのジュブナイルです。(面白いのですが)

 4人の女の子が学校のプログラミングクラブでのクラブ活動を通じて、プログラミングを学んでゆきます。

 物語の形式をとりながら、「プログラミング思考」をわかりやすく解説。プログラムとは、プログラムを書くのにはどういう順番で考え、何が大切なのか、がよくわかる良書です。
 また、物語としても面白く、ジュブナイルとしても純粋に楽しめます。

 女の子たちもみんな魅力的で、お母さんがプログラマーとして活躍していたり、顧問の先生が女性だったりと、「女性はプログラミングに向かない」と言う固定観念をぶち壊していてクールです。

 「プログラミングガールズ! 1」のレビューはこちら

当サイトおすすめプログラミング学習絵本&児童書 2位   ルビィのぼうけん こんにちはプログラミング リンダ・リウカス/作 鳥井雪/訳 翔泳社

独断と偏見の 当サイトおすすめプログラミング学習絵本&児童書 ベストセレクション

 かわいい女の子ルビィの冒険を通じて「プログラミング思考」をわかりやすく説明する絵本。プログラミングの解説とストーリーの融合が素晴らしく、楽しく読み進めながら理解することができます。

 絵がカラフルで、とてもかわいい。そして、わかる人にはニヤっとする要素もあり。女の子でも抵抗なくプログラミングの世界に触れることができると思います。

 「ルビィのぼうけん こんにちはプログラミング」のレビューはこちら

当サイトおすすめプログラミング学習絵本&児童書 1位    なるほどわかったコンピューターとプログラミング ロージー・ディキンズ/作 福本友美子/翻訳 阿部和弘/監修 ショー・ニールセン/イラスト  ひさかたチャイルド

独断と偏見の 当サイトおすすめプログラミング学習絵本&児童書 ベストセレクション

 作りこまれたしかけ絵本。全部を楽しみながら読むのに、かなりの時間がかかりそうですが、ひとつひとつを自分で調べながら、理解しながら読むと、多くのことを理解できそうです。

 プログラミングの解説を楽しく、わかりやすく理解できるよう作りこまれています。
 読んで遊んでいるだけで、ごくごく単純な二進数の仕組みから、基礎的なプログラミングの方法、インターネットの仕組みなどまで自然に学べるようになっています。

 プログラミングの背景を知り、考え方を理解したらこれを。数学的なことに興味があるお子さまなら、おすすめです。

 「なるほどわかったコンピューターとプログラミング」のレビューはこちら

 この夏は、あまりにも暑く、外出するよりおうちで過ごすことが多くなりそうです。でもそんなときには、読書。プログラミングは、とっつきにくく抵抗感がある子も多いと思いますが、適性がある子には楽しいものです。

 人の適性ってどこにあるかはわからないもの。
 様々なことにチャレンジしているうちに、意外な道が開けるかもしれません。

独断と偏見の 当サイトおすすめプログラミング学習絵本&児童書 ベストセレクション

 
 さて、ここまで読んで「これらの本がよさそうなのはわかるけど、ここに何度も出てくる『プログラミング思考』って何なの?」と疑問に思われる方もいらっしゃるでしょう。

 本日は、記事内にもある「プログラミング的な考え方」について、すこしだけ記事を書いてみようと思います。興味のある方だけ、以下の記事を覗いてみてくださいね。

とあるプログラマとの会話

 わたしは、プログラマではありませんが、身近にプログラマがいる生活をしてきました。彼らとの会話には、コツが必要です。ずっと会話しているうちに、いつしかプログラマの言葉を否プログラマに通訳するようなことを頼まれるようになりました。

 彼らは、同じ日本語を使っているように見えて、思考方法とか言葉の導き方が少し、ふつうの日本人とは違います。

 今日は、そんな、プログラマから見たらどうってことのない、一般人から見るとちょっと不思議な面白話を書こうと思います。

まず、簡単な設問を出してみましょう。

例文「明日の体育の授業、晴れならプールで水泳です。雨ならば、体育館で卓球です」
これをプログラムコードで語りなさい。

 おおう「明日って何」って聞かれてしまいました。哲学か!(違う) そして、「晴れの定義は何?」と聞かれてしまいました。そうですね、一口に「晴れ」と言ってもピーカンから雨がふっていない曇り状態までいろいろとあります。
 この場合は、「水泳ができるかどうか」が焦点になりそうな文章ですから、雨が降っているかいないか、でしょうね。

 その場合は、「雨でないならば。いや、『空から水滴が落ちてきていない状態ならば』」としたほうが、コードは書きやすい、と言われました。たしかに、晴れかどうかは曖昧ですが、雨が降っているかどうか、雨は水が降ってきているかどうかで判断するならばということならと、かなりはっきりとしてきます。

 彼が書いたのはこれ↓

if ( 今日は「明日」か?) { // 時間の確認が必要。そもそも今日とは? 今は明日かどうかが問題?
// もしも明日だったら
if( 天気は晴れか? ) {
体育の授業はプールで水泳
}
else if ( 天気は雨か?) {
体育の授業は体育館で卓球
}
// 雨でも晴れでもない状態ではどうなるのか不定
}

 ここまでで、プログラマの思考と普通人の思考がかなり違うことがおわかりいいただけますでしょうか。

 例文を最初に見たとき、普通の人の感性では、最も重要なのは「明日の体育は水泳なのか、卓球なのか」です。しかし、プログラマにとって重要なのは、「雨かどうか」と言う前提条件なのです。

 これだけでも、思考のルートがかなり違いますね。

 開発の現場では、発注者の希望が後から変更になることがあります。これがプログラマにとってきつい場合の変更は、この「水泳か卓球か」の変更ではなく、「雨か晴れか」の変更の場合です。

 もしも、変更内容が「晴れならばマラソン、雨ならば体育館で器械体操」だとしましょう。これは実は、そんなに大変ではありません。
 しかし、「雨が降っていたら体育館で卓球だけど、小雨ならばプールで水泳」とか、前提条件が変わってくると、彼らは嫌がります。

 要求される変更がプログラムで書く文章の前のほうであればあるほどきついようです。
 でもねえ、往々にしてこの変更はあります。なぜならば、一般の人にとっては大事なのは「水泳か、卓球か」だから。

 なので、かなり作って完成間近になって、「もし雨でないならば」みたいなところの修正が来る場合があります。ソフトウェアの場合、具体的には、ログイン可能人数の変更とか。

 「いろいろと考えてみると、こうしたほうがいいと思って」と言うのは、お客様のことを考えれば正しいし、いいものを作るためには変更は必要なのですが、「最初に言ったことと違うだろ」と現場が上ともめるのは、こういう事情があるから。

 プログラマは頑固だとか融通が利かないとか言われがちなのですが、思考のルートの順番がそもそも違うのです。優秀なエンジニアであればあるほど、普段の会話も「プログラム的」に会話します。

 でも、「あとになって事情が違ってきた」と言うのは、生きていればよくあることですよね。

 で、優秀なエンジニアはここをどうやってクリアしているかと言うと「予測力」です。 「こんなこともあろうかと」と言うヤツです。

「このクライアントさんはあとになって『ここを拡大してくれ』と言い出すかもしれない。この上司はあとになって『ここを変更してくれ』と言い出すかもしれない」と言う予測力で対応しているのです。それでも、予測を超えることはおきるんですけども。

 いままで一緒に仕事をしたプログラマさんで「この人はすごいな!」と思った方々はみな、あらゆる事態に対してとてつもない予測力を持っていました。予測は忖度とは違うので、思考のルートがまったく逆なのですが、結果は似てきます。忖度のできないエンジニアは、その短所を予測力で補っているのです。

 ただ、この能力には難点があります。それは「他人を信用しない疑り深い人」「冷たい」「情がない」「小賢しい」などの誤解を受けやすいことです。

 ……と、ここまで書いて「こういう解釈でよいですか?」と聞きましたら「まあ、それでいいですよ」と言う、いいんだか悪いんだかわからない返事をもらいました。正確ではないが、まちがってはいないというところでしょうか。

 マイクロソフトが爆発的に発展した理由の一つは、創業者のビル・ゲイツ氏がこの「プログラム的思考」ができ、「プログラマの言葉」で部下に指示を出すことができたからではないでしょうか。

 「同じ種族の言葉」で話をしていたのでしょう。

 わたしはプログラミングがまったくできないただの一般人ですが、プログラマのみなさんから「話しやすい」と言われることが多く、外部の方との通訳やクッションとしての仕事を長年してきました。
 「真実の妖精」である彼らは、嘘や忖度ができず、特殊な思考ルートを持っていますが、とても気のいい、心優しい人たちです。

 こう言う人たちがのびのびと仕事ができて、いいものが作れる、そんな職場がたくさんあれば、この世は幸せなテクノロジーで満ちた、素敵な社会になると思っています。

 ※件のプログラマのコメント
 「細かいことを言い出したら説明の文章が倍になりそうなので、まあこれでいいんじゃないかとおもいます。」

 ううーん、まだまだ修行、ですね!

独断と偏見の 当サイトおすすめプログラミング学習絵本&児童書 ベストセレクション
お気に入り登録をしてくださればうれしいです。また遊びに来てくださいね。
応援してくださると励みになります。

にほんブログ村 本ブログへ

広告