【Aモデル録 フェーズX プログラミング基礎 思考設計編】
ここで、一度
多くの人が混同している2つ
を、きっちり分離します。
プログラミングの学習現場では、
こう思われがちです。
いいコードを書けば評価される
きれいな設計=良いアプリ
技術的に美しいものが正解
でも、製造業視点では、
これは半分しか合っていない。
製造業では、はっきりしています。
加工精度が高い ≠ 売れる
工程が美しい ≠ 使われる
職人が満足 ≠ 顧客が満足
コードで言い換えると、
まず、コード側の話。
一般に「いいコード」と呼ばれるものは、
読みやすい
保守しやすい
拡張しやすい
つまり、
工場内部にとって扱いやすい加工結果
です。
これは、
内部品質。
一方で、製品側。
使いたい
分かりやすい
役に立つ
これは、
外に出た瞬間の価値
であって、
内部構造は基本的に見られない。
問題はここ。
開発者は「いいコード」を見ている
利用者は「製品体験」しか見ていない
結果、
工場の中の評価軸
と
市場の評価軸
が、完全にズレる
理由はシンプル。
コードは、
自分が触る
自分が書く
自分が直す
一方、製品は、
他人が使う
他人が評価する
他人が判断する
つまり、
視点の主体が違う
製造業では、これを分けます。
工程評価(内部)
製品評価(外部)
工程が完璧でも、
売れなければ意味がない
使われなければ改善対象
逆に、
売れている製品でも
工程に無理があれば
内部改善は必要
両立させるのが仕事。
ここを分けないと、
コードを磨き続けて出荷しない
出荷後のフィードバックを無視する
「分かってないユーザーが悪い」と思う
これは、
工場都合で製品を作っている状態
この実践では、
コードは製造工程の成果
製品は「判断される対象」
と捉えます。
だから、
コードの完成度と
製品の価値は、常に別軸
いいコードは「内部品質」
売れる製品は「外部評価」
両者は別物
そして、
製造業は
内と外の両方を見続ける仕事