リファクタリング・ウェットウェア読んだ

 

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

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

 

 読み終わった。

だいたいこんな感じ。生涯学習続けていく職なので、そもそも学習ってどういうものなのか、どういうプロセスを経ているのかとかは結構興味がある。努力論もこの理由から読んだ。

努力論 (岩波文庫)

努力論 (岩波文庫)

 

 

リファクタリング・ウェットウェアはエッセンスを羅列している感じで、特にまとまった内容ではないのだが、全体として脳の働きや、それに伴う行動についての分析でおもしろいものがあった。いくつか気になったポイントを羅列してみよう。

 

ドレイファスモデル

 1970年台にドレイファス兄弟によって考案された技術習得の過程を表すモデルらしい。詳しくは↓のサイトとかで。

エンジニアの技能レベル〜ドレイファスモデル〜

この本では達人レベルで重視される直感の働きに注目している。

無限後退

何かしらをルール化する際に問題となる無限後退。いくら詳しく説明しようとしても、言葉は全ての具象を正確に表すことはできない。言葉と具象の分かれ目を意識できるかどうかが大きなポイントだ。

比喩

あるもののとある側面、特徴を強調したいために使うのが比喩。抽象的なものを考えるのが得意な人はあまりいない。自分が認識している以上に多くの比喩に頼って考え事をしている。しかし、比喩の扱い方を間違えると、間違った認識につながる。それが次の命名の誤りにリンクする。

シンボル化による縮小の誤り、命名の誤り

シンボル化は一種の比喩だが、ある特徴を強調する代わりにその他の特徴を見えにくくする。その失われた特徴、ニュアンスによって、事実までもが失われる場合もある。命名の誤りもまた同じで、ものに名前をつけるとそれで説明できたと思い込んでしまい、思考が止まってしまう。名前を付けただけでは役に立つ理解が得られるとは限らない。

 これはコードを書くときだけの話ではなく、ものを認知する行為全体に言える。

プラトンの襞(ひだ)とブラック・スワン-不確実性とリスクの本質

ブラック・スワン[上]―不確実性とリスクの本質

ブラック・スワン[上]―不確実性とリスクの本質

 

具象と抽象、不確実性に対する人の認識がどれほど適当なものなのかについて書かれているらしい。

トカゲの論理(dinosaur brains)

人は進化してきた。つまり、脳も少しずつ「建て増し」されてきている。この「建て増し」された脳の、古い部分は原始的な生存本能を司っているのだが、これが現代社会における行動とマッチしないことがある。これをトカゲの論理と呼ぶらしい。具体的なトカゲの論理の反応はこんな感じ。

  • 戦うか、逃げるか、怯える
  • ただちに行動する
  • 支配する
  • 縄張りを守る
  • 傷つけられたら怒りの声を上げる
  • 自分と同じ=善、自分と違う=悪

こういう行動を起こしそうになったら、ひとまず深呼吸して落ち着くべし。

ヴィパッサナー瞑想

集中力を持続するということは、余計な雑念に悩まされないということ。これは訓練することができる。その一つが瞑想。何も考えない状態を維持するというのは思った以上に難しく、すぐにいろんな考えや思いが浮かんでくる。これらに惑わされないようにできれば、集中力が増すだろう。

というわけで

気になった所だけ挙げてみたわけだけども、一番良かったのは瞑想について。結構コーディングしているとき、設計しているときに雑念に惑わされる事が多くて困っていたところだったので惹かれた。少し瞑想試してみたが、確かに何も考えないようにするのは難しい。これも習慣にできるかどうかが鍵だと思うので、少しずつやっていきたい。