最近読んだ記事に、とても刺さる考え方がありました。
要点をざっくり言うと、
「やった方が良さそうな“ベター”なことに時間をかけすぎると、成果に直結する“ベスト”なことができなくなる」
という話です。
コードを書き直す癖
私はITエンジニアをしています。
今まさに、書いたコードをしょっちゅう書き直してしまう癖に悩んでいます。
- とりあえず動いているけど、設計はこのままでいいのか?
- 将来的にモジュール化したくなったら困るかも…
- だったら今から分離しておくべきでは?
こんなことをぐるぐる考えて、手が止まる。
結果として、「ベター」な改善には手を出すけど、「ベスト」な次の実装が進まない。
たとえば、ある処理の話
最近、ある処理で .txt ファイルを読み込んでDBに保存する機能を作りました。
これ、動いてるんです。すでに要件を満たしてます。
でもそこで手が止まる。
- この処理、どこに置くのが「正しい」んだろう?
- オニオンアーキテクチャ?クリーンアーキテクチャ?DDD?
- もっと綺麗に書きたい…
そんなことを考えてしまう。
もちろん、それは悪じゃない。むしろ「良いこと」ではある。
でも、それは "ベター" であって、今やるべき "ベスト" ではない。
「気持ち悪い設計」を残す勇気
記事を読んで、ハッとしました。
完璧主義になってはいけない。完璧なんてものは、そもそも存在しない。
だからこそ、今の「そこそこ動く」設計で一旦OKを出して、 次の処理に着手することが“ベスト” なんだと思いました。
今後、どうせまた設計は変わるし、そのときに直せばいい。
気持ち悪さに蓋をする勇気。これが今の自分に必要な「ベスト」でした。
最後に
もし、あなたも完璧を求めて前に進めないでいるなら。
「ベストだけをやれ、ベターはやるな」という言葉を思い出してみてください。
そして、手を動かしてみましょう。
それが一番の「成果」になるはずです。