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

うさみ本棚

うさみの本棚です。おすすめされた本を読みますので、おすすめ教えてください!

*[清水亮][プログラム][教養][読書感想文]教養としてのプログラミング講座を読んで、読書感想文。

この本、amazonのレビューでズタボロに言われてるんですよ。
「後半は読む価値なし」
「教養がない人が説明したプログラミングの本」
とか。
でも、いいレビューの人もけっこういる。
星の数がこれだけバラける本も珍しい、というくらいバラけてます。

こんな内容の本でしたよ

私みたいなSEとしてもプログラマーとしてもハンパな者からすると、
とても良書に見えるんです。
なんというか「プログラムを通して見た、論理思考の教科書」みたいな内容なんですよ。
余計わかりにくいかな?


プログラムを書くときって、大体その前に設計をするんですけど、
その際に論理的な考え方ができないとプログラムが作れないんです。
もしも○○が△△したら□□する、というような指定を細かくしないといけない。
論理的な結果を得るために、論理的な思考が必要。


たとえば、最近自動運転車のニュース見るけど、
自動運転車に対して
「いい感じで走ってください。渋谷駅から青山一丁目駅まで。」
ってタクシーの運転手さんに言うみたいにプログラミングしただけでは、たどり着かないんです。


その前提として
「左車線を走ること
 左車線というのは左側の白線とセンターラインの間で、それぞれからどのくらい隙間を空けて
 制限速度を読み取って速度センサーがそれ以下の数値になるように走ること
 もしも車線変更をする場合は3秒前にウインカーをつけること
 前の車との車間距離は○○メートル空けること
 急発進を避けるために加速は○秒に時速○キロメートル以内にすること
 急ブレーキを避けるために減速は○秒に時速○キロメートル以内にすること」
みたいな、細かい細かい設定をしておく必要がある。


これができてないと、乗り心地がサイアクになったり、事故を起こしまくったりする。


料理のレシピだと「一煮立ちしたら塩一つまみ」みたいな表現が出てきますが、
そうではなくて
「コンロの最大出力50%の火力で沸騰させ、沸騰後コンロの最大出力に対し25%の加熱を1分した後、塩0.8g。ただし気温が10度以下の場合は沸騰後の加熱を1分30秒」みたいな正確な指示。
あいまいな指示だとちゃんと動かないからね。


あと、プログラムの基礎の
「処理と判断と繰り返し」みたいな話があるのもいいよね。
プログラムを受け取ったコンピューターさんって
処理と判断と繰り返しくらいしかしてないんですよ。


こういう考え方をこの
「教養としてのプログラミング」
という本を通して学べるようになってるんです。
なんとすばらしいことでしょう。


海外でプログラミングを必修にしている国があったり、
日本でも2014年から中学校でプログラミングが必修になってたりするし、
(うっそー!という人は
 各国で始まるプログラミング教育必修化の波:日経ビジネスオンライン
 の片山良平さんという人の記事を読んでね。昔は選択科目だったけど、必修になってるのよ)
Eテレでも芸人の厚切りジェイソンさんの「Why!プログラミング」という番組がやってたりした
Why!?プログラミング [技術 小5~6・中・高]|NHK for School


こういうのの背景として、「コンピュータプログラミング」だけじゃなくて
広義のプログラムについても学べるこういう本の存在ってほんとにありがたいと思う。
「いいよー、おれべつにプログラムとかやんないしー」という人も
スマホのアプリを使ったりするだろうから、ぜひ一度読むといいと思います。

こんな人に読んで欲しい本でした

・プログラムも論理的な思考もなんのこっちゃわからん
・プログラム書いたことあるけど、論理的思考?なんのこっちゃわからん
ロジカルシンキングの本を読んでみたけど、いまいち飲み込めなかった
・人に依頼をしたことはあるが、思い通りのものができたことがない
・人にお願いをするとなんでか想像とまったく違うものができあがる
・コンビニに行く後輩になんか買ってきてって言ったらなんか思ってたのと違うのばっかり買ってこられる


まあそんな本なんですよ
以上!