エンジニアの学び方のモデル更新の図
2019-04-13
エンジニアの学び方に"実行し,結果を検証し,モデルが修正されるサイクル"という図がある。
iPadがある今ならもっと上手く描けるかもしれないので描いてみた。
https://gyazo.com/3d0dfa8b44c1385932620a0736ef43fc
まず「Aが欲しいな」と思う
例えば「ある機能Xを持ったソフトウェアを作りたい」とか「目玉焼きが食べたい」とか
「Aはどうやったら手に入るだろう」と考える(how)
「BとCを組み合わせたらAが手に入るのではないか」と考える
https://gyazo.com/5f5f53b3764e679eaec7913f980e289d
「フライパンをコンロの火に乗せて卵を入れたら目玉焼きになるのでは」とか
モデルMがこれを生み出す
実際にやってみる
Aが得られると期待したのにDが得られた
驚く
https://gyazo.com/25b480f2a23dd9ca147b733049810488
「BとCを組み合わせるとAではなくDになる」という観測事実が得られた
これ「Do」って書いてあるんだけとわかりにくいね(2025-04-16)
なぜAではなくDになるのかを考える(why)
「BとCを組み合わせたらAになる」という仮説を生み出したモデルMが間違っている
モデルMを修正する(M')
2014年の図にはあったけどここに描いていないこととして、この修正は「なぜこうなったのか?」に対する「これが原因じゃないか?」という「仮説」が追加されることによって行われる(2025-04-16)
https://gyazo.com/d67ab7ee2568cc215a3436e29b678c64
新しいモデルM'を使って、改めて「Aはどうすれば手に入るだろう?」(how)を考える
「BとGを組み合わせたらいいのでは?」などと思う
実際にやってみる
https://gyazo.com/5f16d877cd671f8caed49496cb22465a
Q: モデルとは何か?
モデルとはエミュレータだ
モデルは現実エミュレータ
追記(2025-04-16)
明確に書かれてなかったことを補足すると、この「モデル」とは「仮説の集合」で、その仮説を使って行動して予想通りになることで仮説の確からしさがだんだん上がって行く
モデルは仮説の集合
知識は行動によって検証されなければいけない
元の図
https://gyazo.com/3abcff715dccfeae293c6befeaea383a
第3章 どうやって深く理解するか―比較,歴史から学ぶ,作って学ぶ:エンジニアの学び方─効率的に知識を得て,成果に結び付ける|gihyo.jp … 技術評論社
この図がイラストレーターによって清書される前の形
2014-03-10
https://gyazo.com/0784dca29788387862f38bf547676ab9