とあるStartupに勤めるエンジニアの技術ブログ

Salesforce、テスト関係の技術ブログなどを書く予定

「難しい」という言葉

「難しい」というのは思考停止だ、という人が結構いる。
本当にそうなのだろうか?

メンタリティが違うような気がする。

研究者やエンジニアにとって難しい問題はむしろ好物だったりする。
難しい問題は解決していく対象である。
本質的な解法がないとしても近似解を求めようとする。
なんとか問題を解こうとして何年でも取り組んでいく。

そして、エンジニアは難しい問題を解くための技術を持っている。
代表的なものは、「分割統治法(Divide and Conquer Method)」がある。

分割統治法 - Wikipedia

そのままでは解決できない大きな問題を小さな問題に分割し、その全てを解決することで、最終的に最初の問題全体を解決する、という問題解決の手法である。

この手法は、大学時代に卒業研究するときに教授から学んだ。
「ロジック・ツリー」といったほうが馴染みがあるかもしれない。

難しいからといって、諦めるとか、思考停止するとかする必要なんてない。
難しいことを認識して、正しい問題を設定、および分割する。
その上でトライ・アンド・エラーしながら、ひとつずつ解決していく。

それだけだ。

ぼくらはエンジニアなのだから。