こんにちは。
相馬一進(そうまかずゆき)です。
「YAGNIの原則」というプログラマーの標語があります。
これは「『もしかしたら必要かもしれない』と
感じる程度の機能なら、実装しないほうがいい」
といった考え方を指します。
というのも、プログラマーの経験則によると
「もしかしたら必要かも」と感じる程度の機能は
実際は10%程度しか使わないそうです。
言い換えると、90%程度がムダになっています。
それどころか、その余計な機能を実装したせいで
ソフトウェアの誤作動が増えるケースもあるそうです。
そういったムダな作業を戒めるために、
「You ain’t gonna need it.
(あなたはそれを必要としないだろう)」
の略称であるYAGNIという標語が広まりました。
「もしかしたら必要かも」と感じるくらいなら
作業をしないほうがいいと考えるわけです。
それで、YAGNIの原則は、
プログラミング以外の分野でも
多くの場合は当てはまると私は思います。
たとえば、駆け出しの個人事業主が
「もしかしたら必要かもしれない」と言って
民間資格をいくつも取っている場合があります。
ですが、ほとんどのビジネスは無資格でかまいません。
法律上の問題がありませんし、
販売者の資格の有無などを
お客さんもあまり気にしていないからです。
そのため、資格取得に投資した時間やお金は
多くの場合にムダになってしまいます。
それであれば、セールスやマーケティングなどの
商品を売るための努力に投資したほうがいいのです。
もしどうしても資格が必要だと感じるのであれば、
その奥にある自分の心理を見つめてほしいのです。
「資格を取得することによって、
“自分はまだまだ不十分だ”という自己肯定感の低さを
満たそうとしているのではないか?」とか、
「取得した資格を誰かに自慢するなど、
“本当の目的”が奥に隠れていないだろうか?」と。
もちろん、医師、弁護士、税理士などの
国家資格は例外になります。
なぜなら、こうした業種は
無資格で開業すると法令違反になるからです。
いずれにしても考え方はYAGNIの原則と同じです。
「もしかして必要かも」と感じることは放置して
「絶対に必要」なことだけに取り組めばいい。
あなたも「もしかすると必要かも」と感じた時は
「You ain’t gonna need it.
(あなたはそれを必要としないだろう)」
というフレーズを思い出してみてください。