タオルケット体操

サツバツいんたーねっとでゲームとかガジェットのレビューとかをします

プログラマーが読むべきプログラミング以外の書籍

「〜べきXX」みたいなブログを書いてみたかった。

プログラマーという人種は控えめにいって啓蒙書やビジネス書の類を読まない(僕もそうです)傾向にある、というか馬鹿にして嫌っているようにおもいます。しかし全く読まずにバカにするのもフェアじゃないよなぁ、とおもって去年はあえていくつか有名な本を読んでみました。
しょうもない本もあったけど、流石売れるだけあって「これを食わず嫌いしてたのはもったいなかったかな」みたいな本もいくつかありました。今回はその中でもとりわけ印象的だったものを紹介してみます。

なんか有名っぽいタイトルばっか並んでる気がするんですけども、それは僕が「別ジャンルに入門するときは有名アーティストのベスト盤から入れ」派閥の人間だからです。

人を動かす(原題: How to Win Friends and Influence People)

人を動かす 文庫版

人を動かす 文庫版

最初にタイトルだけ見たときは「ハァ〜〜心理テスト(笑)もどきのクソみたいな新書とかそういった内容でしょ」と勝手に思い込んでいたんだけど、当然のように全く以てそんなことはありませんでした。

端的にまとめてしまうと、なんらかのアクションに対して人はどうリアクションしてしまうか、というような原則みたいなものが豊富なエピソードと共に紹介されている感じです。
僕がこれを読もうとおもったきっかけは、Joel Spolskyがプログラムマネージャになるにはというブログ記事で次のように述べていたからです。

私はFog Creekのマネージャ見習いには何よりもまず先にこれを読ませている。読むようにと言うと彼らはいつも鼻で笑うのだが、読み終えたときにはみんなこの本が好きになっているのだ。

人のマネジメントに必要なお話が沢山のっているわけなんですが、逆にマネジメントされる側の人間が読むことでセルフマネジメント、モチベーションコントロールの教本として捉えることもできる書籍だと僕はおもいます。

また、ちょうど今 エンジニア立ち居振舞い: 技術的な暴力を振るわない - futoase というエントリが話題になったりとかしているわけですが、エンジニアという人種はとかく正論で人を殴るのが正しい行為だと信じている……というのは言い過ぎですけども、発言の内容の正しさに拘泥するあまり、その意義や効果をおざなりにしがちだというのを日頃から感じます。
本書が述べるいくつかの原則のうちで、我々技術者にとって一番重要なものは「議論で誰かをやりこめる意味」のくだりです。すげー短くまとめると、相手がよほどの人格者でない限り(あるいはそうであっても)議論で相手をやりこめたところで、意固地にさせるだけで手前の自己満足以上の効果はねーよというお話です。

我々はついつい「人格否定じゃないからセーフ」という考えのもとに暴言スレスレ(ときどき暴言そのもの)の技術論をぶちあげがちですが、貴様のそのいきり立ったマサカリに自己満足以上の目的があるならば、やり方を考える必要があるよねという話で、まぁ詳しいところは買って読んでください。
僕は読んでて、自分の過去の発言などを振り返り、色々と恥ずかしい気持ちになりました。

七つの習慣(原題:The Seven Habits of Highly Effective People)

完訳 7つの習慣 人格主義の回復

完訳 7つの習慣 人格主義の回復

バーナード嬢であればまず間違いなく言い訳を並べて手に取らないタイプの書籍だとおもうんですが、Amazonプライム会員の特典(月一冊、ラインナップの中から好きなKindle書籍を無料で読める)になっていたので、僕の中のド嬢も納得してくれ、読みました。
本気で実践していこうとおもうとかなりストイックになる内容の書籍だとおもうのですが、時には孤独な戦いを強いられることもある技術者にとってセルフコントロールの指針を与えてくれる良書でした。

というようなことを書きつつ、いま改めて内容を思い出そうとして、全然思い出せない自分に軽い絶望を覚えていることもなくはないのですが、僕のお気に入りのお話は「反応を選択する」という章です。
要は「襲いかかる事象を完全にコントロールするのは不可能だけど、それに貴方がどう対応するかは選ぶことができますよ」という話です。紹介されているエピソードがナチスに連行されたユダヤ人のもので、「それはtoo muchすぎでは」感があるのはご愛嬌です。
誰にでも覚えがある話だとおもうんですけども、例えば機嫌が悪くて苛立っている人を前にしたとき、つられて自分まで不機嫌な対応をしてしまうという。コヴィー氏の述べるには、こういう「反応的」な生き方を改めて、自発的に自分の反応をコントロールしていくことでいい感じの人間になっていけるんですよ、という、なんだかカントの自由概念っぽい話ですが、いい話だとおもいます。いい話ですよね? なかなか実践できませんけども。

リアクティブなプログラミングスタイルが好きでも、人格的にまでリアクティブではいけないわけですね。そういえば売り言葉に買い言葉で平行線を辿りまくるリアクティブプログラミング界隈の人たちがいましたね。でもこういう揶揄で人は動かない、学びですね。

1日ひとつだけ、強くなる。

プロゲーマーのウメハラの本。
前に紹介した本、なんかややこしそうだしめんどくせえなとおもったらこれがおすすめで、めっちゃサクッと読めます。サクッと読めるんですけども、エッセンスは詰まっている本です。

執筆は彼の本業ではないですけども、平易な文章で勝負の世界に生きる人間の哲学がしっかり書いてあるいい本だとおもいます。いやマジで。
目標は可能な限り低くたもち、本書のタイトルにもある通り、一日ひとつだけ強くなる。ここら辺で述べる継続の哲学なんかはどのような技能でも通じるところがありますね。その他、コンディションを維持するためにジムに通っている話だったり、格闘ゲームという個人競技の世界であっても人間関係を良好にしておくことは重要性なんだよと言及していたり、内容も幅広くまたプログラマーも共感できる内容が多い気がします。

個人的に一番面白かったのは「プロゲーマーだってゲームに飽きることはあるんだよ」というところの話で、その中でプロとしてどうモチベーションコントロールをしていくか、というノウハウが語られています。プロゲーマーと同じように、プログラマーはプログラミングが好きでなった人たちが多いですが、かく言う僕も若干マンネリズムに襲われているわけで、なんとか参考にして乗り切っていきたいところであります。

金持ち父さん 貧乏父さん

改訂版 金持ち父さん 貧乏父さん:アメリカの金持ちが教えてくれるお金の哲学 (単行本)

改訂版 金持ち父さん 貧乏父さん:アメリカの金持ちが教えてくれるお金の哲学 (単行本)

はい。
技術者が毛嫌いしそうな書籍ランキングをとったら間違いなく上位に君臨しそうな本で、またマルチ商法の人間が愛用している本ではあります。「ビジネス系の勉強会」のようなものに参加して、この手の本を片手に近寄ってくる人間がいたら99%がマルチです。そういうイメージもあって今まで読んできませんでしたが、僕の場合は信頼できる友人が「お金のことを知らないなら一度読む価値はある」と言ってきたので買って読みました。

先入観を捨てて読んでみると、文章があまりに冗長すぎて酷いということを除けばかなり真っ当なことを述べている書籍です。マジで冗長なので、普通の読書の3倍くらいの速度で読んでも問題ありません。
まず安心して欲しいんですが、本書には「こうすればドッカンドッカン金が入ってリッチマンだぜHahaha」みたいなテクニックは乗っていなくて、むしろ「見栄やその場の物欲のために良い車やデカい家を買って、ローンの返済に何十年も働くのが貴方のお望みですか?」的な、地味ーな啓蒙書っぽい内容がほとんどです。抽象的な内容も多いです。

本書の優れている点は、「お金持ちとは何か」や「資産と負債の違い」、「借金の良し悪し」といった言葉について、筆者なりの定義を与えているところで、僕みたいに経済観念の欠落していたプログラマー諸氏はそれを知るだけで世の中の見方が少しだけ変わる……かもしれません。

そんな本書ですが、お金に関すること以外にも個人的には色々と学ぶことがあって、例えば先に批判した文章の冗長さについてです。
この本の文章の冗長さや平易さは間違いなく売るために計算されたもので、つまり本を読まないような層にも訴求していくためにはこれくらいがむしろちょうど良いのだということです。この事実は、例えばユーザーマニュアルを書くような機会がある人は知っておくべき事柄ではないかと。

まとめ

たまには技術書と小説以外の本を読んでみるのも良いもんですね。売れてる本を色んな観点から読むと、売れてる理由について色々な観点から考察できるので脳にいいんですよ。今後の僕の人生で、本を出すようなイベントが発生するのかどうかは、謎です。