「頑張るだけ無駄」という言葉がある。
この言葉はあまり真実を含んでいない。努力して無駄になることというのは、人生ではほとんどないからだ。
例えばけして仕事で使うことなんてないと思われるプログラミング言語(Scalaのことではないぞ。必ず流行るから)に手を出したとする。一見すると無駄な行為に見えるかもしれないけど、そこで使われている概念を知ることはプログラミングの幅を広げるし、1つの言語を学んだという経験は次の言語を学ぶスピードを速めてくれる。
せっかくなら流行る言語に手を出した方が効率がいい。でも、何もしなかった場合と手を出した場合とで、どちらが有効な結果をもたらすかと言えば、努力した方に軍配が上がる。
つまり、努力せずに過ごしていることは、効率は悪くとも努力して過ごした時間と比べて無駄が多いと言える。言い換えると「頑張らないだけ無駄」とも言える。
もう1つ例を出してみよう。例えばとある異性に興味を持ってあの手この手を使って攻勢をかけたものの、結局落とせずに終わったとする。一見、努力は水泡に帰したかのように見える。でも、これも意外と無駄なことでもない。
無駄だと思って攻勢もかけずにいたら、100%相手を落とすことはできない。攻勢をかければどれだけ可能性が薄くても5%くらいは成功できる。つまり努力によって5%を買ったわけだ。
それに失敗経験というのは次に活きる。ろくに攻勢をかけた経験もなければ、次に好みの相手を見かけた場合に経験値ゼロの状態からスタートしなければいけない。適度に失敗しておけば経験値がある状態で攻撃を開始できる。
努力というのは成果を保証するものではない。成果を得る確率の獲得と、次に試行した際の成功率の上昇。この2つを買えるものだ。
1秒でも多く努力をして、現状で成功を得られる可能性と、後々成功を得られる可能性を高めておけば、最終的には努力の総量に見合った成果は得られる。
というわけで私は「頑張っても無駄」という言葉を発している人を見かけたら、「この人、頭悪いんじゃないかな」と疑ってみることにしている。
とは言ってみたものの、無駄に終わる努力というものがまったく存在しないというわけでもない。努力の方向性を間違えた場合だ。
極端な例を挙げると、先ほど述べた異性の例で「好きになった相手に振り向いて欲しくて、一生懸命ストーキングしました」なんてことをした場合、もちろんそんな努力をいくら重ねたところでうまくいくはずがない。
「英語をしゃべれるようになりたいので、一生懸命英語の教科書読んで勉強しました」というのも、間違ってはいないけど効率が悪い。教科書を読んでも英語をしゃべれるようにはなかなかならない。
「給料を上げたかったので、会社のために一生懸命働きました」というのも微妙な方向性だ。それで給料が上がるタイプの会社なら良いけど、それより自身の市場価値を上げる方向で努力した方が汎用的で効率は良いかもしれない。
同じ時間努力をしても、3時間で10歩進める努力と、10時間で5歩しか進めない努力、それからストーキング行為のような本人は努力をしているつもりで明らかにマイナスにしかなってない努力などがある。
せっかく努力をするなら、効率良く目的を達成できる方法を考えることも忘れないでおきたい。
というわけで、今日もこんな時間までプログラミング。この努力はたぶん報われる、といいなぁ。