技術的負債
技術的負債とは、
- 技術的負債(英語: technical debt)、または設計負債、コード負債とは、ソフトウェア開発における概念であり、時間がかかるより良いアプローチを使用する代わりに、今すぐ簡単な(限定的な)解決策を選択することで生じる追加の手直しの暗黙のコストを反映したものである。
(技術的負債 Wikipedia 日本語版より、太字筆者)
ですが、
ここで最高に良いアプローチ(負債0)を考えますが、
思いますに、それは、
- 動くプログラムになるのか
疑問です。
ある程度の負債含みの「簡単な(限定的な)」解決策こそが、
- 動くプログラムになる要因(本質)そのもの
で有り、プログラミングを学ぶとは、その、
- 最小限の技術的負債に見える解決策
を学ぶ事では無いかと言う仮説です。
本当に「間抜けばかり」なので、技術的負債が出来るのか?
勿論、「より良いアプローチ」から必要以上にかけ離れて、プログラムを作るのは間抜けかも知れませんが、
そこまでの、学ばない間抜け人間がごろごろ転がっているものでしょうか?
流石にそれは行き過ぎの認識に思えます。
技術的負債0のプログラムを構成的に作れるなら、何で作らないのか、例によって、それはほぼ藁で、形而上の議論に過ぎず、
技術的負債は、動くプログラムでは必ず混入するだけでは無いか?
そしてだからこそ、プログラムを学ぶとは、
- より良いアプローチで無い何かを学ぶという事で、
- 試作もせずに、考えて学ぼうとしても、動かない極々極々理想的な何かになってしまう
とすると、1つの説明が付きます。
結論
これからも「因果推論に関する教示」を周りの人にされる事でプログラミングが嫌いになる人は存在し続けることでしょう。