2024/01/23 ヤクの毛刈りに気づく / 道具を汎用的に最適化する / 一次情報理解して二次情報からも学ぶ #33

kadoppe
·

昨日、今日とWindows で Windows アプリを作っているのだけど、Windows での開発環境の構築にところどころ手間取ってしまい、完全に息をするようにコードを書く、とまではいかなかった。最初に自分が macOS で開発している環境と近い環境をつくろうというモチベーションがあって、そのせいで問題にぶつかり、解決するとまた新しい問題がでてきて、の繰り返しが何度か発生した。そこで、「あ、これはこのまま進んじゃいけないやつだ」と気がついて、当初のモチベーションは諦めて、郷に入っては郷に従えの方法で開発環境を構築したらうまく言った。自分がヤクの毛刈りをしていることに比較的早めにき付けたので致命傷にはならず、今日一日の終わりにはそれなりの進捗がだせたのでよかった。自分のやってることが「おかしい」と自分で気づくことができたのはとてもよいことだ。

---

自分の仕事道具(=開発環境)を自分好みにカスタマイズして、少しでも開発生産性をあげたいという気持ちがすごくある。それはとても大事な考えだと思うのだけど、その環境の習熟度があまり高くなかったり、特定の環境下でしか使えないものだったりすると、今回みたいなように新しい環境で仕事をしないといけなくなったときに、スムーズにことが進まなかったり、問題にたくさんぶつかったりする。どこまで広い環境を考慮に入れて、自分の道具を最適化していくか。特化することと汎用的にすることはトレードオフの関係になってるような気がして、バランスをとることがまだ難しい。単純に自分の知識・スキル不足かもしれない。今回わかったのは、macOS の中で仕事ができたらそれでOKというわけではなくなり、Windows で仕事する可能性もあるんだよ、ってこと。両方をスコープにいれて道具を最適化することで、今と違った結果になるかもしれない。引き続きやっていく。

---

使っているツールについて、第三者が書いたブログ記事なども参考になるのだけれど、やっぱり公式ドキュメントを読み込むのがすごく重要。仕様だけでなく、そのツールの考え方として何を良しとして、何を良しとしないのか、哲学みたいなものの雰囲気も感じることができて、それがツールを正しく使い、正しく設計するために必要なこと。それらを理解したうえで、第三者が書いたブログ記事などを読むと、たとえ書かれている情報が古くなっていたり、間違っていたりしても、それに気づきやすいし、間違いからも何かしら気づきや学べることがある。総じて一次情報に近い情報源に積極的に触れることが大事。今日はエンジニアリングの基礎的な大事なことを再確認できて、なんだか楽しい一日だったな。

@kadoppe
Software Engineer / CTO at WE UP Inc. at Tokyo, Japan. Website: kadoppe.com