流行りに乗っかってみる。
気になったことは納得できるまで追求する
エンジニアに限った話ではないとは思いますが。
最近は便利なフレームワーク、便利なライブラリ、便利なサービスで溢れかえっていて、 あまり深く考えなくてもサクッとWebサービスとかアプリを作れてしまうような時代です。
そんな時代だからこそ、なのでしょうか。「どうしてこれが動くんだろう?」という疑問が湧いてくることが多いです。 Railsとかそうでした。コイツはなんでこのプログラムを、このファイルを勝手に読みに行ってくれるんだ…?とか。 (残念ながらRailsの中身を徹底的に追求することは出来てませんが、ある程度自分の中で納得できるところまでは落とし込んだつもりです。)
「これをこうしてこうじゃ」みたいな、めっちゃ簡単に複雑なことが出来るのが、ある意味でとても気持ち悪いのです。 なので、自分の中である程度「これはこういうことをして動いている」というのが納得出来ないと、 どんなに便利なものでも使うのを躊躇ってしまうことが多いです。
追求することの良いトコ悪いトコ
追求しないと気がすまない、というのは良い面も悪い面もあります。
良い面としては当然「使っているアプリやフレームワーク、ライブラリの知識理解が深まる」ということです。 これによって何かトラブルだったり、うまくいかないことがあっても、その解決がスムーズにできるという効果が期待で居ます。 多分他にも良いことはあります。たぶん。
一方で悪い面として、「新しい、未知の技術を始める時のハードルが高くなる」ということがあります。 「これをこうしてこうするだけでサクッとHogehogeできる!」みたいな話で完結するのに、 「え、なんでこれだけでHogehogeできちゃうの気持ち悪い…ちゃんと調べないと…」みたいな状態に陥ります。 このせいで、「目的を達成する手段」について延々調べてしまい、目的がなかなか達成されない…という問題が発生します。
(良い面悪い面はあくまで私個人の話です)
個人的な意見:エンジニアなら気になったことは追求したいじゃない?
上記のような良い面悪い面がありますが、私はこの「気になったことを納得行くまで追求する」は大事にしていきたい立ち居振る舞いだと思っています。
もちろん、上記の悪い面は改善していかなければならないとも思っています。
私は
「技術は問題を解決するための手段である」
と思っています。
上記の悪い面は完全にそれに反する行動になってしまっているのは間違いないです。
「目的を達成する手段」として何かライブラリ等を使うのであれば、納得する、ということのラインを少しゆるくしてみたり、 目的を達成してから追求する、などの工夫をしていかなければな、と思っています。
実際に追求してみた例
を載せようと思ってたけど思ったより本文が長くなったので割愛。 もしかしたら別のエントリで書くかもしれない。