リファクタリング・ウェットウェア - Andy Hunt

リファクタリング・ウェットウェア ―達人プログラマーの思考法と学習法

リファクタリング・ウェットウェア ―達人プログラマーの思考法と学習法

Pragmatic Thinking and Learning: Refactor Your Wetware (Pragmatic Programmers)

Pragmatic Thinking and Learning: Refactor Your Wetware (Pragmatic Programmers)

『達人プログラマー』の共著者として有名なハント氏が、ソフトウェアのソースコードだけでなく人間の脳(ウェットウェア)もリファクタリングすることが大事だと説く、一風変わった本。

ドレイファスモデル(Dreyfus Model)の5段階(初心者 Novice、中級者 Adcanced Beginner、上級者 Competent、熟練者 Proficient、達人 Expert)をベースに、どうすれば「初心者 Novice」から「達人 Expert」の域に到達することができるかについて説く。

たとえば、こんなピラミッドが出てくる。

第2章では、フィッシャー・スペースペンを使って風呂の中でもアイディアを記録しろと説く。

第7章では、集中力を養うためには瞑想が重要だと説く。瞑想であれば何でもよいのではなく、「ヴィパッサナー瞑想」がいいらしい。

  • 1章 初心者から達人への道
    • 1.1 初心者 vs. 達人
    • 1.2 ドレイファスモデルの5段階
    • 1.3 現場におけるドレイファスモデル
    • 1.4 ドレイファスモデルの効果的な利用
    • 1.5 道具のワナに注意
    • 1.6 コンテキスト再考
    • 1.7 日々のドレイファスモデル
  • 2章 脳の構造
    • 2.1 2種類のモード
    • 2.2 いつでもどこでも洞察を逃さない
    • 2.3 LモードとRモードの特徴
    • 2.4 Rモードの躍進
    • 2.5 Rモードは森を見て、Lモードは木を見る
    • 2.6 自分でできる脳の手術と神経の可塑性
    • 2.7 どうやって目的を達成するのか
  • 3章 Rモードへの転換
    • 3.1 関与する感覚の増加
    • 3.2 右脳で描く
    • 3.3 RモードからLモードへの流れを作る
    • 3.4 Rモードが提供してくれるヒントを手に入れる
    • 3.5 パターンを利用する
    • 3.6 Rモードの出力を上手に手に入れる
  • 4章 アタマをデバッグ
    • 4.1 認知バイアスを知る
    • 4.2 自分の世代傾向を認識する
    • 4.3 性格の分類
    • 4.4 ハードウェア的なバグ
    • 4.5 では、どう考えたらよいのか
  • 5章 意識的な学び
    • 5.1 学びとは何か
    • 5.2 「SMART」な目標を定める
    • 5.3 プラグマティック投資計画の作成
    • 5.4 自分の学習モード
    • 5.5 同僚との勉強会
    • 5.6 より優れた学習技術
    • 5.7 SQ3Rで意識的に読む
    • 5.8 マインドマップによる直感の視覚化
    • 5.9 ドキュメント作成の真の力を利用する
    • 5.10 教えることによって学ぶ
    • 5.11 技を携えて町に出よう
  • 6章 経験の積み重ね
    • 6.1 学ぶための遊び
    • 6.2 既存の知識の活用
    • 6.3 失敗を生かす
    • 6.4 インナーゲーム
    • 6.5 プレッシャーによって損なわれる認識力
    • 6.6 想像力は五感を上書きする
    • 6.7 達人のように学ぶ
  • 7章 集中のコントロール
    • 7.1 集中力と注意力を増強する
    • 7.2 集中のために集中をぼかす
    • 7.3 知識の管理
    • 7.4 現時点でのコンテキストを最適化する
    • 7.5 割り込みの意識的管理
    • 7.6 大きなコンテキストを保つ
    • 7.7 焦点の定まった状態を維持する
  • 8章 達人になってから
    • 8.1 効果的な変化
    • 8.2 明日の朝から始められること
    • 8.3 達人になってから
  • 1 Introduction
    • 1.1 Again with the "Pragmatic"?
    • 1.2 Consider the Context
    • 1.3 Everyone Is Talking About This Stuff
    • 1.4 Where We're Going
    • 1.5 Grateful Acknowledgments
  • 2 Journey from Novice to Expert
    • 2.1 Novices vs. Experts
    • 2.2 The Five Dreyfus Model Stages
    • 2.3 Dreyfus at Work: Herding Racehorses and Racing Sheep
    • 2.4 Using the Dreyfus Model Effectively
    • 2.5 Beware the Tool Trap
    • 2.6 Consider the Context, Again
    • 2.7 Day-to-Day Dreyfus
  • 3 This Is Your Brain
    • 3.1 Your Dual-CPU Modes
    • 3.2 Capture Insight 24x7
    • 3.3 Linear and Rich Characteristics
    • 3.4 Rise of the R-mode
    • 3.5 R-mode Sees Forest; L-mode Sees Trees
    • 3.6 DIY Brain Surgery and Neuroplasticity
    • 3.7 How Do You Get There?
  • 4 Get in Your Right Mind
    • 4.1 Turn Up the Sensory Input
    • 4.2 Draw on the Right Side
    • 4.3 Engage an R-mode to L-mode Flow
    • 4.4 Harvest R-mode Cues
    • 4.5 Harvesting Patterns
    • 4.6 Get It Right
  • 5 Debug Your Mind
    • 5.1 Meet Your Cognitive Biases
    • 5.2 Recognize Your Generational Affinity
    • 5.3 Codifying Your Personality Tendencies
    • 5.4 Exposing Hardware Bugs
    • 5.5 Now I Don’t Know What to Think
  • 6 Learn Deliberately
    • 6.1 What Learning Is...and Isn’t
    • 6.2 Target SMART Objectives
    • 6.3 Create a Pragmatic Investment Plan
    • 6.4 Use Your Primary Learning Mode
    • 6.5 Work Together, Study Together
    • 6.6 Use Enhanced Learning Techniques
    • 6.7 Read Deliberately with SQ3R
    • 6.8 Visualize Insight with Mind Maps
    • 6.9 Harness the Real Power of Documenting
    • 6.10 Learn by Teaching
    • 6.11 Take It to the Streets
  • 7 Gain Experience
    • 7.1 Play in Order to Learn
    • 7.2 Leverage Existing Knowledge
    • 7.3 Embed Failing in Practice
    • 7.4 Learn About the Inner Game
    • 7.5 Pressure Kills Cognition
    • 7.6 Imagination Overrides Senses
    • 7.7 Learn It like an Expert
    • 8 Manage Focus
  • 8.1 Increase Focus and Attention
    • 8.2 Defocus to Focus
    • 8.3 Manage Your Knowledge
    • 8.4 Optimize Your Current Context
    • 8.5 Manage Interruptions Deliberately
    • 8.6 Keep a Big Enough Context
    • 8.7 How to Stay Sharp
  • 9 Beyond Expertise
    • 9.1 Effective Change
    • 9.2 What to Do Tomorrow Morning
    • 9.3 Beyond Expertise