なるほどわかった コンピューターとプログラミング

文:ロージー・ディキンス
絵:ショー・ニールセン
訳者:福本友美子
監修:阿部和広
出版社:ひさかたチャイルド

発行:2017年2月
形態:大型本

 

今使っているものが、どんな思想の上に成り立っているのか。

スマホでアラーム、電卓、LINE、カメラ、Gmail、GoogleMap、テトリス、クックパッド、音楽のアプリを使う。パソコンを立ち上げて、ノートに書いておいた下書きをメモ帳に打ち込む。写真のサイズを変える。インターネットのブラウザを開き、WordPressのダッシュボードにログインする。

コンピュータの使い方に習熟していても、どこで何が動いているのかを知らない。プログラミング教育が盛んになる中で、つかむべき本質って何だろう。

目次は以下の通り。「めくって楽しい」しかけ119個と学ぶ構成である:

1 コンピューターって?
2 プログラミングって?
3 中はどうなってるの?
4 コンピューターはどう考えるの?
5 命令を出す
6 コンピューター言語
7 いいプログラムを作るには
8 インターネットを使おう
9 コンピューターの歴史

私はとりわけ、
・ノートPCのキーボード部分を開けて、CPU、バッテリー、ファン、補助記憶装置が出てくるしかけ
・フローチャート
・言語の仕組み
・ウェブページのアドレスを入力してからディスプレイに表示されるまでの、信号の流れ
が気に入った。なんとなくでしか知らなかった用語や考え方を、絵で理解することができた。

プログラミングのコードでは、1つの命令に1つの動きしか紐づかない。つまり、コンピュータが動くには膨大な数の命令の集積が必要になる。実現したいことと現状の差分を取り、策を考えるときに、大きな策1つをどんと置くようなことはできない。簡単に動くように見えるものが、途方に暮れてしまうような細かいステップで成り立っている。技術者は、すべきことを細かいタスクに分け、命令の論理的道筋を作る。Excelのセルを1つずらすことにさえ、実は後ろでとてつもない量のプログラムが動いている。計算式や自動処理なんて、何倍だろう。

タスクを細かく切り分け、リスク対策を含めて全体図を描き、地道に手を動かしていくことが、プログラミング思考でものをつくることなのだと定義できた。コンピュータの世界は目に見えない分、やはり豊富な比喩が活用されていることも合わせて確認できた。