図書館から借りてきた単行本で、ブライアン・カーニハン著『教養としてのコンピューターサイエンス講義』(酒匂寛訳、日経BP刊、2020)を読みました。「カーニハン&リッチー」と呼ばれる名教科書『プログラミング言語C』の著者であり、私も愛用するテキストデータ処理言語「AWK」の共同開発者の一人でもあるカーニハン氏がプリンストン大学で一般社会人向けに行った講義の翻訳だそうです。
「まえがき」を読み、第0章「はじめに」に目を通したとき、本書の価値に気が付きました。これは、コンピュータを何か仕事に役立てようとか、プログラミングができるようになるためのテキストブックにしようとか、そういった実用的な目的のために読む本ではない。そうではなくて、コンピュータの碩学が、現代のデジタル社会をどうとらえ、考えればよいのかを示した本なのだ、ということです。その意味では、原題"Understanding the Digital World" のほうが、内容を適切に表しているようです。大きく見ると、
- 第1部 ハードウェア
- 第2部 ソフトウェア
- 第3部 コミュニケーション
という三部構成になっており、第1部では CPU、RAM、ディスク、ビット、バイト、CPU の内部、などが取り上げられています。
これに対して第2部では、アルゴリズム、プログラミングとプログラミング言語、ソフトウェアシステム、プログラミングを学ぶ、といった内容になっており、最後のプログラミング体験では JavaScript でブラウザ上に "Hello, world" と表示するところから始まっています。しかし、では万人がプログラミングを学ぶべきかという問いに対しては、
プログラミングは万人向けではありません。本当に必須である読み、書き、算術とは異なり、全員にプログラミングを学ぶことを強制するのは理にかなっていないと思っています。プログラミングのアイデアを魅力的なものにすること、始めるのが簡単であるようにしておくこと、たくさんの機会を提供すること、できるだけ多くの障壁を取り除くこと、そしてあとは自然に進路を選んでもらうことが最善でしょう。(p.237)
としています。教育経験豊富な碩学らしい含蓄のある見解だと感じますし、本書の魅力の一つが、こうした問いに対する見解に随所で触れることができるということかと思います。
第3部では、ネットワーク、インターネット、ワールドワイドウェブ、データと情報、プライバシーとセキュリティ、などを扱います。検索エンジンの仕組みや広告とトラッキングのこと、データマイニング、クラウドコンピューティングなど、私にとってもたいへん興味深い内容がわかりやすく説明されます。そして、ふと気が付きました。AI の内容が書かれていない! 調べてみたら、原著は2017年に刊行され、翻訳出版は2020年となっています。そして現在は、2022年に第2版が刊行されているらしい。こちらの方では第4部として「データ」を独立させ、ここで AI を扱っているらしい。
うーむ、これは返却期限のある図書館の本を借りてすませるのではなく、新版を購入すべきではなかろうか。善は急げということで、さっそく地元の行きつけの書店に注文して来ました。12月16日に届くとのこと、楽しみです。
興味津々の話題に溢れていて、じっくり読ませて頂いております。
入院中の夫から「ACアダプタを持ってきて」と
言われましたが、それってなんだっけ的レベルの
私です。ACの意味、今日分かりました。(笑)
>カンカンさまのところから飛んできました。... への返信
コメントありがとうございます。カンカンさんのところから飛んできたら、マニアックなコンピュータの本の記事で、びっくりされたのではないかと思います。農作業の記事や化学実験室の歴史、あるいは手帳や文具の話など、話があちこちに飛ぶブログですので、どうぞ興味の持てそうなカテゴリーで様子をみてください(^o^)/
夫君が入院されているのですね。どうぞお大事に、早い快癒をお祈りいたします。ACアダプタってなんだっけ、それはさすがにスゴイです(^o^)/ ご夫君も思わず笑ってしまい、ユーモアの力で元気が出るのではないでしょうか(^o^)/