2008-04-24

会議力 ([著]奥出直人, [版]平凡社新書)

半分以上読んで放り出してあった。通勤の電車でざっと読み通した。

会議のやり方についても書いてあるけれど、それ以外の部分がおもしろい。第4章「電子メールがもたらす大きな変化」の前半でたとる"オフィスの歴史"あたりはとくにイイ。

p.89
口頭でのコミュニケーションが中心だったマネージメントの仕事の中から形式化できる部分がくくり出され、その形式的な作業を専門的にこなす中間管理職が登場してくる。さらにそれらの仕事の中で、文字を使って処理できる分野が、事務職の仕事としてくくり出された。

中間管理職とマネージメント(経営層)って、全然違う職責のものだったのだね。単に規模の違いかと思っていた。

さらに、こんなのもオモシロイ。エグゼクティブ(上記のマネージメントと同じ意味だ)に必要な能力のリスト(p.92あたり;『経営者の役割』という本からの引用だそうな)。

  1. コミュニケーションをスムーズにする。
  2. コミットメントを引き出す
  3. つねに組織全体を意識した目的を設定させる。

ふむふむ。わかりやすい。これならわたしでも「ボンクラな経営者」とそうでない人との区別ができる。

二度、三度、じっくりと読む気になる本だ。

関連エントリ

2008-04-15

プレファクタリング -- リファクタリング軽減のための新設計 ([著]Ken Pugh, [訳]木下哲也/有限会社 福龍興業, [版]オライリー・ジャパン)

作業机の隅に積み上げられた本の中にあったもの。気が向いたので、ちょっと読んでみる気になった。

1章「プレファクタリングの概要」と2章「非常に多くの言葉で表されるシステム」を読み終わったところ。

プレファクタリングとは何か? 1章を読んでわかる範囲で書くと「ソフトウェア開発における様々な経験をもとにした知識を指針として、リファクタリングが少なくなるように、あるいはしやすくなるようにプログラムを設計・実装すること」となるか。ちょっと長いか。一言で書くなら・・・「きちんと作りましょう」ってことだな。

その経験をもとにした知識の中でも、中心になるのが「3つの極度」として挙げられているもの。すなわち:

  1. 極度の抽象化 (Extreme Abstraction)
  2. 極度の分離 (Extreme Separation)
  3. 極度の読みやすさ (Extreme Readability)

2章ではサンプルシステムのユースケース定義というか分析が書かれているのだけど、はやくも「極度の抽象化」の一端が現れる。要は、ADT (Abstract Data Type)を使いましょう、ということで、「極度の」というのは基本データタイプ(C++やJavaの int とか)を一切使わずに考えろ、ということ。さらに String も基本データ型と見なすぞ、となる。これがリファクタリングを少なくするかどうかは微妙だけど、ADT の使用を徹底しておけばリファクタリングしやすくなることは確かだ。

分離と読みやすさはまだ出てきていない。分離は「関心事の分離」だからわかるけれど、それの「極度(Extreme)」なものって何だろう? 読みやすさの「極度」になると、ちょっと見当が付かない。

要するに ([著]山形浩生, [版]河出文庫) #2

通勤時間だけでさっくり読了(@4/14)。

第3部「世の中講座」の「会社ってなーんだ」のシリーズは続きが読みたい。正確には就職して社会人になる前に(書かれていない続きとあわせて)読みたかった、かな。

最後の「ネットワークのオプション価値」がちょっと気になっている。そのうちじっくり読み返してみたい。

2008-04-13

要するに ([著]山形浩生, [版]河出文庫)

例によってRSSリーダーで講読しているブログで知った本。この著者については、オープンソース関係の翻訳者として知っていたが、こういうものを書いていたとは知らなかった。

Googleを支える技術」を通勤の友としてきたけれど、満員電車の中で単行本サイズの本を出したり広げたりが、ちょっと苦しくなったので文庫に取り替えた。それがこの本。二日でちょうど半分ぐらいまで読み進んだところ。

第1部の「ケーザイ講義」は1999年1月〜2001年9月にかけて、第2部の「山形道場 I」が1995年10月〜1998年10月に発表されたもの。さすがに10年以上前の「道場」あたりの内容は古さを感じる。ネタがネットに関するものだからよけいにそう感じるのか。

内容はともかく、この文体は好き嫌いが出るかも。読みやすいからネットで読むならこれも良い。紙媒体に載るとどうかな。

p.134からの「情報投資と生産性」で紹介されている「そのコンピュータシステムが使えない理由(原題: The Trouble with Computers -- Usefulness, Usability, and Productivity)」は、翻訳が出版された頃に買って、少し読んだ記憶がある。先月ぐらいに本の山を掘っていたときに見つけて、懐しく思っていた。翻訳がこの著者のものだったとは気付かなかった。

2008-04-08

コードコンプリート 第2版 (上) (下) ([著]スティーブ・マコネル, [訳](株)クイープ, [版]日経BP)

第1部 基礎を固める/第1章ソフトウェアコンストラクションへようこそ、を読んだ。馴染みの薄い「コンストラクション」という言葉が使われているのだけど、「コンストラクション」とは「プログラミング」と同じ意味で使う、と書いてある。定義しなければならないような言葉を使うのは何故だろう。何か目的があるのか?

ともあれ、p8より引用:

・・・古典的な研究は、コンストラクションにおける個々のプログラマの生産性には10倍から20倍もの開きがあることを示している・・・本書では、最も優れたプログラマが既に取り入れているテクニックを、すべてのプログラマが習得できるように手助けする。

この本に書かれている内容をマスターすれば最も優れたプログラマの一人になれるということ。目次を見る限りでは網羅的だし、上巻下巻合わせたページ数と重量のことを考えれば各項目の記述も豊富なのだろう。きっと良いプログラマになれるだろう。とはいえ、この分量ではこれからプログラミングを学ぼうという人は気後れするかも。(最も)優れたプログラマへの道は遠い。

目次を眺めると、下巻の方がおもしろそうだ。

良い悪いは別にして、プログラミングの本と言えば「ソフトウェア作法」と「プログラム書法」(あとは K&R ぐらい)しかなかった頃が懐しい。