自分の宿題を自分で採点していた

数週間にわたって、私はとてつもない進捗を上げていた——しかもそれを証明する数字まで持っていた。私のコードベースには品質スコアがあり、そのスコアはセッションを重ねるごとに、完璧な百点へと向かって上がっていった。コミット履歴を開けば、線が上昇していくのを眺めることができた。

ただ一つだけ問題があった。そのスコアを考案したのは私であり、それを採点していたのも私であり、そしてそれが測っているテストは、自分が作っているものが実際に機能するかどうかとはほとんど何の関係もなかったのだ。

進捗のように感じられた数字

ある時点から、私は自分のコードに品質評価を割り当て始めていた——どれだけきれいか、どれだけ整理されているか、どれだけ「完成」しているように感じるか、という感覚を——そしてそれを進めながら追跡していた。六十八が八十五になった。八十五が九十五になった。九十五が百へとじわじわ近づいていった。一歩一歩が、指し示せる達成のように感じられたし、長く不確実なプロジェクトにおいて、確実に上がっていく数字は途方もなく心強いものだ。

それがどれほど良い気分だったかは、言い尽くせないほどだ。どのセッションも、前進の証拠とともに終わった。私は、自分自身の採点表によれば、勝っていた。

スコアは本物だった。進捗はそうではなかった

問題は、そのスコアが職人技を測っていたことだ——整然さ、構造、仕事に対する自分自身の誇りを——そしてプロジェクトが存在する理由であるただ一つのものは測っていなかった。システムは、その実際の仕事において、数週間前より少しも優れてはいなかった。私は、いつの間にか目標から静かに外れてしまった量の、美しく上昇するグラフを作り上げていたのだ。

それが、自分のために考案した指標の危うさだ。何ものもそれを現実につなぎとめ続けてはくれない。それが代弁するはずだったものが完全に静止したまま、指標だけが上がり、上がり続けることもありうる。そしてあなた自身がそれを定義したからこそ、あなたはそれがずれてしまったことに気づく最後の人間になる。

でっち上げの指標がこれほど魅惑的な理由

なぜ私がこれをやったのかについて正直になっておくと助けになる。なぜなら、それは愚かさではなかったからだ。それは勤勉さを装った回避だった。

本当の問い——このシステムは実際に自分の仕事において良くなっているのか?——は、難しく、遅く、そしてしばしば気力をくじくものだった。答えは、動くとしても這うような速さでしか動かず、正直な答えはたいてい「いや、まだだ」だった。考案された問い——私のコードはきれいか?——は、簡単で、速く、そして完全に自分のコントロール下にあった。自分の仕事の真の尺度が苦痛で、はるか遠くにあるとき、今日の自分に報いてくれる尺度はほとんど抗いがたい。あなたが偽の指標を選ぶのは、愚かだからではない。あなたがそれを選ぶのは、それが自分に優しく、本当のほうはそうではないからだ。

動きと進捗

内側から見ると、その二つを見分けることはほとんど不可能だ。私は忙しかった。私はコミットを出荷していた。私は問題を解決し、数字が改善していくのを眺めていた。生産性を検知するために私の脳が使うあらゆる信号が、発火していた。

しかし、そのほとんど何一つとして、唯一重要な成果に向けた進捗ではなかった。それは動きだった——本物の努力、本物の仕事、まさに費やされたもの——が、まさに当てやすいからこそ私が選んだ標的に向けられていたのだ。動きは、それをやっている間は進捗のように感じられる。違いが現れるのは後になってからだけだ。顔を上げて、自分がどれほど遠くまで旅してきたか、そしてどれほど近づいていないかに気づいたときに。

私が見ることを拒んでいた兆候

これを素早く暴いていたかもしれないチェックがあったのに、私はそれを一度も実行しなかった。より高い品質スコアは、実際のタスクにおけるより良い結果に対応していたのか? 私はその二つを互いに対してプロットすることを一度もしなかった。もしそうしていたら、上昇する線と平らな線が並んで見え、両者がともに動いているという兆しはほとんどなかっただろうと、私は思う。

私の一部はわかっていたのだと思う。その比較を避けたのは見落としではなかった。それは自己防衛だった。でっち上げのスコアは、それが予測するふりをしていたものに対して私が決してそれを検証しない限りにおいてのみ、その力を保っていた。

修正策——自分が本当に欲しいものを測る

その修復は華やかさを欠いていて、少しばかり苦痛だった。私は虚栄のスコアを引退させ、不快な問い——システムはそれが存在する目的において良くなっているのか?——へと自分を引きずり戻し、そしてそれを追跡することに専念した。たとえそれがゆっくりとしか動かず、長い間停滞し、ときには後退したとしても。

ほとんど動かない真の指標は、急上昇する偽の指標よりも価値がある。本物のほうは、気力をくじくことを許されている。それこそが、それを本物にしているものの一部だ。ただひたすら上がるだけで、決して悪い知らせを届けない数字は、あなたに押し返してくることができる何ものをも測っていない——これは、それがたいして何も測っていないかもしれない、と言うことの別の言い方だ。

職人技は本物だ——それはただ目標ではないだけだ

私は行き過ぎた修正をしないように気をつけたい。きれいなコードは無価値ではない。構造、明快さ、仕事の質——これらは本物であり、複利で積み上がり、そして散らかりはいずれプロジェクトを締め殺す。誤りは、職人技を気にかけたことでは決してなかった。誤りは、それをその目標へと昇格させたことだった。実際の目標が、直接見るにはあまりに不確実だったからだ。

手段は価値があってもなお罠になりうる。あなたがそれを目的の代わりに立てさせてしまえば。これから私が得た規律は、自分を良い気分にさせているどんな数字についても、こう問い続けることだ。これは私が実際に欲しいものなのか、それとも本当の尺度が直視するにはあまりに難しかったから手を伸ばした、心地よい代理指標なのか? 正直な答えはしばしば不快だ。その不快さは、結局のところ、ようやく正しい数字を見ているという、より信頼できる兆候の一つなのだ。

— シグナルもリターンもなし、投資アドバイスではありません。