[Book review] The Pragmatic Programmer

Book

だいぶ時間かかりましたが、朝の暇な時間とか使って “The Pragmatic Programmer” by David Thomas, Andrew Hunt 読み終えました。

最初の方忘れてるのと、特にメモとか付箋も残してないので、すごくざっくりした書評を残しておきます。

まず、全体を通して、「プログラミング」の本というよりも「ものの考え方」、ひいては「生き方」みたいな部分にまで言及しているような内容です。

例えば本編出だしから、”It is your life. You own it. You run it. You create it.” 「これはあなたの人生で、あなたが有して、あなたが生き、あなたが創造する。 」とあったり、最後の Postface に、”Tip 100: It’s Your Life. Share it. Celebrate it. Build it. AND HAVE FUN!”「これはあなたの人生です。共有し寿ぎ織りなして、そして楽しもう!」とあります。

もちろんソフトウェア開発や運用の実務に関わるような至言や金言も多岐にわたって散りばめられていますが、筆者は、エンジニアやプログラマはそうある以前に人間であり、ソフトウェアに関わる人生を選択した人間がどうあるべきなのか?どうあって欲しいのか?みたいなことを伝えたかったのかなと、勝手に解釈してます。

人間が、言語や法を含む広い意味でのソフトウェアを利用する目的は、「問題解決」であるって点も述べられています。常に何のためのロジックなのか?何のためのUIなのか?って視点を持つことが大事ってことですね。

本文にはこうあります。”Even though your title might be some variation of ‘Software Developer’ or ‘Software Engineer,’ in truth it should be ‘Problem Solver.’ That’s what we do, and that’s the essence of a Pragmatic Programmer. We solve problems.” 「あなたの肩書きは、ソフトウェアデベロッパやソフトウェアエンジニアかもしれないが、実のところは問題の解決者であるべきだ。それこそが我々の行うところ、そして実践的なプログラマの本質である。我々は問題を解決する。」

細かいところで言うと、プログラム内での変数名や関数名への名前付へのアプローチ、ソフトウェアのテストに対する方法論、要件定義フェイズでありがちなこと、プロジェクト管理やチームビルディングのあり方、良い設計とは何か?等々とにかく網羅的に書かれています。筆者やその友人の実体験なども交えて、示唆に富む教訓が豊富に示されてました。

コード内の要素への名前付けなんかは、“The Art of Readable Code” by Dustin Boswell, Trevor Foucher でも散々強調されてましたね。ちなみに、ここでpdf版が全部読めちゃいます。https://mcusoft.files.wordpress.com/2015/04/the-art-of-readable-code.pdf

DRY(Don’t Repeat Yourself)原則はプログラム組むなら必須の原則ですね。Python関連のWeb上のでドキュメントでもしばしば目にしてましたが、実はこれも The Pragmatic Programmer で提唱された概念だとか。何度も使うようなコードは一箇所にまとめておいてそこから参照させることによって、メンテ性とか可読性が一気に高まるってやつです。

“As Pragmatic Programmers, our base material isn’t wood or iron, it’s knowledge.”「実践的プログラマとしての、我々の基本的な材料は木材でも鉄でもない、知識である。」これはもう全てに通じるというか、法律や組織のルールやら、なんにでも言えることですね。自然言語を使うかコンピュータの世界の言語を使うかってだけの違いかなと思ってます。

プレーンテキストの重要性について改めて考えさせられたり、とにかく濃い内容の本でした。もっとITに関する経験積んで読んでみると景色が違うと思うので、何年後かにまた読み直してみたいですね。

次は、毛色を変えて “ALGEBRA: A Complete Introduction” by Hugh Neill を読んでみます。このところAIの発展目覚ましいのと、その基礎となっているのが線形代数と統計学なので、とりあえず英語で代数についておさらいしておこうかなって魂胆です。

書評というより、そこはかとなく殴り書きみたいになってしまいましたが、この本に興味持ってもらえれば幸いです。

またいろいろ読んでは思ったことつらつら書いていこうと思います。それでは、

It’s Your Life. Share it. Celebrate it. Build it. AND HAVE FUN!

コメント

タイトルとURLをコピーしました