「プログラムの基礎は知っておきたいけど、「アルゴリズム・サイエンス (入口|出口)からの超入門」まで手に入れて基礎からしっかりやるだけの根気も時間もないし、という方にはうってつけの本。

本書を読んでもプログラムを「わかる」とまではいかないが、プログラマーと話を合わせるところまでは行けるのではないか。

本書「プログラムのからくりを解く」は、プログラマーでない人のためのプログラミング案内。入門ではない。入門ではないので、これを読んで職業プログラマーになれる、というところまで行くのはちょっと無理がある。その代り、入門で扱うには難しすぎる話題、たとえばグラフ探索や公開鍵暗号まで扱っている。難易度で行くと、以前紹介した「あなたはコンピュータを理解してますか?」と「アルゴリズム・サイエンス (入口|出口)からの超入門」の中間といったところか。

目次 - Si新書最新刊! 高橋麻奈著『プログラムのからくりを解く ルート探索や料金計算はどうやってるの?』概要 (サイエンス・アイ新書Web)より抜粋
  • 第1章 右に左に快適走行
  • 第2章 青信号? 赤信号?
  • 第3章 運賃計算も確実に
  • 第4章 カーナビでもう迷わない
  • 第5章 時刻表もリアルタイムに
  • コラム
    • メモリにはRAMとROMがある
    • 改行コード
    • 論理演算
    • データの「型」
    • 入れ子
    • アルゴリズムの語源
    • 分割統治
    • 演算子いろいろ
    • ダイクストラ法の開発者
    • DNS
    • 2分探索木にデータを追加するときの注意
    • サンプリング定理4
    • プロトコル
    • ワイルドカード
    • SQL
    • データベースの普及

見ての通り、本書の特徴は、身近で実践的な例を取り上げていることにある。Hello, WorldやFizzBuzzは基礎的だが実践的でないので、プログラムがもともと好きでないと楽しめない。OOで哺乳類と犬が出てくるのも同様だ。プログラムに興味がない人には眠たくなるだけだろう。しかし本書は、プログラムの何が面白いのかピンと来ない人々に、プログラムというものに興味を持ってもらうような工夫があちこちにしてある。

それでいて、単にブラックボックスのインターフェイスの名前を一通り説明して終わり、となっていないところがすばらしい。本書にはアセンブラもスタックもきちんと登場する。チラ見とはいえ、本物のプログラマーがやっていることをごまかさずに見せている。この点は素晴らしい。

著者の高橋麻奈は、テクニカルライター。Amazonを見るとすでに36冊もの本を著している。私が著者の本を読んだのは本書がはじめてだが、本書の出来を見ると他もなかなか行けるのかも知れない。

プログラマーの会話について行けずに困っている方にはうってつけの処方箋。彼ないし彼女と一緒に読むというのも乙かも。

Dan the (Writer|Programmer)