Booklog - プログラミングの心理学 25 周年記念版
Gerald. M. Weinberg, 伊豆原弓
スーパーエンジニアへの道は 1986 年、本書は 1971 年に書かれてる。 著者のシリーズの源流が本書らしい。各章に著者の振り返りがあって答え合わせしてくれてるのもあり、読みやすい。 当時としてはプログラミング(というかシステム開発)を人間の活動から理解しようとしたのは画期的だったらしい。
2025-08-16, read count: 1, page: i ~ xv, pages read: 15
第Ⅰ部 人間の行動としてのプログラミング。 プログラミングと機械の関わりばかりが注目されてきたが、本書はプログラミングを人間的な観点から捉える。 初版から 25 年経った振り返り時点でも当時より膨大な金がプログラマーに投じられるようになっていた。現代もその高騰は続いている認識。 更にいえば AI が登場しても(一部の代替可能な層を除き)プログラマー不要論が現実にならないのは、プログラマーが単にコードを書くのが仕事でなく人間的な側面がその本質だったからって感じかな(今後は知らんが)。
2025-08-17, read count: 1, page: 1 ~ 3, pages read: 3
第 1 章 プログラムを読む。 プログラミングを学ぶ術は、書くことと読むこと。読むときには諸々の事情がコメントに残されていることは少なく、何故そうなったか知るのは難しい。 そうしたコードには、コンピュータ・プログラミング言語・プログラマの知識の制約、事故の応急処置、仕様に基づく必要・不要な記述が混ざっている。 その背後には人の心理的要因があり、理解するのに人間の行動を研究する価値がある。 サンプルコードが PL/I で時代やな~と感じる。にも関わらず現代も状況はさほど変わらない。 コードを読め、コメントには意図を残せとか諸々の手法が発展してきても状況に大差ないのは、原因が人間の心理的要因にあるからということか。
2025-08-18, read count: 1, page: 4 ~ 16, pages read: 13
第 2 章 良いプログラムとは何か。 プログラムを評価するのは難しい。 判断の絶対的な指標はなく、相対的な指標でも、仕様を満たす(動く)か・計画に間に合ったか・プラットフォーム移行の容易さ・実行効率といった複数の基準があり単純に評価できない。 良いプログラムとは何かという問題自体が適切でないと言える。 振り返りでは経済的指標も増えてなおさら難しくなってる。 ここで言う「良い」は後の著者の本でいう品質みたい。 なんかまだ「スーパーエンジニアへの道」ほど面白い感じはしないな。
2025-08-19, read count: 1, page: 17 ~ 32, pages read: 16
第 3 章 プログラミングをどのように研究するか。 プログラミングの人間的な活動を研究する術として、行動科学の手法を流用する話。 その際に行動科学の研究でも陥る内省・観察・実験・計測・利用するデータなどの誤りについて触れ、さらにプログラミング固有の難しさについても言及している。 個人でなく集団を研究すべきだというのはせやなと思ったが、まだ全体的に面白みはないかな。 1970 年代にこの内容が書かれたという点で、その何らかの派生物の影響を自分も受けてるだろうから驚きがないのかもな。
2025-08-20, read count: 1, page: 33 ~ 52, pages read: 20
Years (2)
Books (24)
- Domain Modeling Made Functional 関数型ドメインモデリング ドメイン駆動設計と F# でソフトウェアの複雑さに立ち向かおう
- People Powered 「ビジネス」「ブランド」「チーム」を変革するコミュニティの原則 遠くへ行きたければ、みんなで行け
- サンダー・キャッツの発酵の旅 世界中を旅して見つけたレシピ、技術、そして伝統
- サンダー・キャッツの発酵教室
- スーパーエンジニアへの道 技術リーダーシップの人間学
- ピアリング戦記 日本のインターネットを繋ぐ技術者たち
- ピクルスと漬物の歴史
- プログラマーのための CPU 入門 CPU は如何にしてソフトウェアを高速に実行するか
- プログラマー脳 優れたプログラマーになるための認知科学に基づくアプローチ
- プログラミング F#
- プログラミングの心理学 25 周年記念版
- ユーザーの問題解決とプロダクトの成功を導く エンジニアのためのドキュメントライティング
- 世界の作りおき野菜 みんなに愛される味付けの魔法
- 世界一流エンジニアの思考法
- 入門・倫理学
- 分子調理の日本食
- 型システムのしくみ TypeScript で実装しながら学ぶ型とプログラミング言語
- 実践プロパティベーステスト PropEr と Erlang/Elixir ではじめよう
- 家庭の低温調理 完璧な食事のためのモダンなテクニックと肉、魚、野菜、デザートのレシピ 99
- 本を読む本
- 演奏するプログラミング、ライブコーディングの思想と実践
- 男のスコッチウィスキー講座 100 蒸留所 巡礼試飲旅
- 習慣と脳の科学
- 魏武注孫子