た日記

こんにちは

一般化の出来ない人について

問題

  • 言われたこと/起きたことの一般化が出来ない

  • 「特定のエラーメッセージを見たら、この対応」といった判定をする

    • 根本原因が別でも、メッセージだけ見て同じ問題だと判定してしまう
  • こういった点は、プログラムにも同様の傾向が出る

    • 抜けのある if .. else や switch
    • 同じロジックのコピペ

なぜか?

  • そもそも手順化するという観点がない

    • もちろん、一般化するという視点もない
  • 条件分岐の不具合だと思う

    • 「if A かつ B のとき」と判定すべきところを「if A のとき」でブロックに入ってきてしまっている
    • else がないパターンもあると思う
  • 枝葉の指摘だと思っている(なめてかかっている)から、根本原因を考えていない?

    • 場当たり的な対策を考えるから漏れが出る?
    • 漏れが出る結果、枝葉の指摘が増える?
  • 自分も同じようなことを言われていたことがあるような気がするが

    • その時は何が問題だったのだろう
    • 「言われたこと同時に満たすような解はない」というように思ってた気がする
    • その人らも同じように思っている?
    • でも解は都度示していても変わらないから、別の問題?

試していること

  • 起きたことの手順を書いてもらう

  • その際、書いて終わりにせず、説明してもらう

    • メールベースの共有は、結構みんな読まない(それはそれで問題)
    • ただし「やったことを順に書いて終わり」というパターンが多い
      • それだとただの日記
      • おれはあなたの彼氏ではないぞ?という気分になる
        • ここでいう「あなた」は残念なことに、おじさんである
      • 説明に異常に時間がかかる
      • 脳にバッファが足りなくなって聞けなくなる
  • 手順を今日のと次のに分けてもらう

    • 次同じことがあったときにやるべきこと (これを先に話す)
    • やったこと (「やるべき」からの差分だけ、必要なら話す)
  • 説明のための無駄な時間は減らしたい

    • メールベースで直すのは時間がかかりすぎる
    • 作った手順は印刷して説明してもらう

対策

  • まずはいずれの場合も、手順などに書き出すべきだと思う

    • 言われたこと
    • 起きたこと
  • 「手順を作ると考えなくなるから嫌」という意見もある

    • それは手順が悪い場合の話だと思う
      • 読み込んでいかないと全体が分からないとか
      • ロジックに抜けがあるとか
    • 作らないで考えられる人はそれでも良いのかもしれないが
      • それでも同じようなことばかりやってるように見えることは多々
      • そうでない人は問題点を頭の中にマップできない(自分もそうだ)
  • 書いた手順は「リファクタリング」的な習慣をつけると良いと思う

    • それによって、次のようなことを期待
      1. 手順を書く
      2. 表記ブレは直す
      3. 1個の巨大な手順は分割する
      4. 同じところをまとめる
      5. ボトルネックが分かる
      6. 解決策を考える
  • しかし、ITでない業界では、どういったやり方をするのだろう

結論

この文章自体、一般化できてないし、雑多だ。問題が分析できていない。解決にも遠いように思う。