風変わりな選択の本当のコスト
ある言語を、エレガントだから、速いから、あるいは尊敬する誰かが絶賛しているからという理由で選びたくなる誘惑があります。とりわけvibe codingでは、その本能が静かにプロジェクトを沈めかねません。理由はこうです。ニッチな言語のツールと格闘する一時間も、モデルが見た例が少なすぎて微妙に誤ったAI出力をほどく一時間も、出荷に使えなかった一時間です。風変わりな選択がけたたましく失敗することはめったにありません。それは、増える修正ループ、存在しないライブラリ、存在しないStack Overflowの回答という、遅い水滴として失敗します。
具体的には、その罰則は三つの場所に現れます。第一に、AIの流暢さが落ちるので、より多くの間違いを犯し、それを直すのも下手になります — そして、その言語を知らないあなたには、良いコードと悪いコードの区別がつきません。第二に、エコシステムが薄いので、必要なライブラリが存在しないか、放棄されているか、コピーできる例がないかもしれません。第三に、行き詰まったとき、Webはより静かです。チュートリアルも、回答された質問も、あなたとまったく同じ壁にぶつかった人も少ない。PythonやTypeScriptでは、この三つはどれも問題になりません。
これは風変わりな言語が悪いという意味ではありません。立証責任が風変わりな選択の側にあるという意味です。具体的で明確な理由があるなら — 本当にRustの速度が必要だ、App Storeに強いられてSwiftだ、既存のGoサービスを拡張している — なら、目を開いたままそのコストを払いましょう。理由が「かっこよさそうだから」なら、人気の選択肢を選んで何かを出荷しましょう。あとからいつでも書き直せますが、ほぼ書き直すことはありません。人気の選択がすでに仕事を片付けているからです。