2005-03-30
_ 買物
新宿で服買ったり。
_ プログラマの数学
4797329734
概要
プログラマに限らず社会で働いているひとびとは「 学校を卒業したら数学なんて使わないよ」という印象を持っているかもしれない。そうではない。普段から問題を解決しようとするときに数学を使っている。
- 大きい問題を分割して小さい問題にする。解決しやすくなる。
- 繰り返しを見付けだし一般化する。
- すべての条件を網羅する。
- すべての条件を重複しないようにする。
- などなど
私が本書でもっとも重要だと感じたのは「 大きい問題を分割して小さい問題にする 」である。分割して統治の考え。普段から分割して統治して問題解決しているけど、じつはそこには数学の要素がたくさん入っている。
論理値、数学的帰納法、繰り返し、順列、組み合わせ、再帰、指数などなど。
まあ高校生のころまでに習ったことなのだけど。しかし、私ははっきり言って学校に通っていたころの数学なんてほとんど理解できてなかった。高校から大学まで、あと会社も理系なんだけど。数学的帰納法なんていまになって理解できたし。
文章
あいからわず著者 結城浩さん の文章は読みやすい。本書に限らず結城浩さんの文章は他にもいくつか読んでいるけどやはり読みやすい。なぜ読みやすいのか考えてみた。
- 読者と対話するような文章である。
- 言葉を変えて繰り返し説明している。
- 言わなくても分かるだろうという暗黙の了解を排除している。ちゃんと説明している
- 図表が多い。
最後の図表が多いというのはそれほど珍しいことじゃないかもしれない。
決定的なのは最初の「 読者と対話するような文章である 」というところか。
対話するような文章にすることにより、著者が勝手に先に進もうとせず、読者が理解するのを待っている。読者のペースに合わせた文章にすることにより、読者をおいてけぼりにしない文章なのである。
「 ...ということになっています。分かるでしょうか。ちょっと表現を変えてみましょう。たとえば... 」 云々。
読者に合わせたペースの文章というのはよくある文章だろうか。私はあまり見掛けない。少なくとも UNIX ネットワークプログラミングではこのような読者のペースに合わせた文章ではなかった。
4894712059
ところで、本書を読んで一番驚いたのは以下の部分。
p.5 の Table 1-1 を見ても、晶かに 2 進法のほうが桁が多くなっていますね。
この文章は p.8 に書いてある。p.5 にある Table 1-1 を参照するときに Table 1-1 だけでなく、ちゃんと p.5 の Table 1-1 とページ番号も書いているのである。私がいままで読んだどの本にも図表番号を参照するときにページ番号まで書いてあった本は無かった。
これには驚いた。
他の本を読んでも図表番号を参照するときは、たんに「 表 1.1 に書いたように 」とあるだけでページ番号は書いてない。そしてたいていの場合、参照している文章から参照先の図表はかなりページが離れている。
このような図表番号のみを書いてある文章を読むたびに「 ページ番号も入れてくれ 」と思っていたものである。
それが本書では実践されていたのだ。
感動した。
ただ、すべての図表番号の参照にページ番号が書いてあるわけではない。たぶん 2 ページ以上離れた図表番号を参照するときにページ番号も書いてあるのではなかろうか。
昔から「読み書きそろばん」は必要科目ですから。(違<br>ちなみに、大きい事を小さく分割して解決って方法を実践しすぎると、私のように偉い人から「相手の逃げ道を潰すな」って怒られます。(ゎ
逃げ道とは仕様書で明記されてない機能などのことかしらん。