こんばんは,ゴドーです。
今日はたまたま社員食堂で上司の上司に会い,一緒にランチしました。
今はマネージャー職についている上司ですが,元は研究職で,画像処理等の信号処理系をメインでやっていたようです。
途中から研究用プログラムに使うライブラリーの話になりました。
ライブラリーというのは,数学的な演算処理など汎用的なプログラムがまとめられたもので,無償で使えるものもあればお金がかかるものもあります。
上司が現役の頃はプログラミング言語のC++が出始めたばかり。
便利なライブラリーなどはまだなく,逆行列の計算など,アルゴリズム集のような本を片手にいちいち自分で実装していたようです。
信頼性の高いライブラリーを選べば,汎用的なしょりをいちから自分で実装してバグに苦しむこともなく,独自性の高い本当にやりたい実装の方へ速やかに着手できます。
その上司も「ライブラリーがある分,僕らの頃より早くできるはずなんだけどね」と冗談めかして言っていました。
ライブラリーは便利な一方で,内部の処理を分かりづらくしている側面もあります。
中で何をしているか分かっていれば,ライブラリーを適切に利用できると思いますが,理解が不十分なままライブラリーに頼っていると,実は意図しない結果を産み出しているかもしれません。
そういう意味では,かつての上司がやっていたように,内部実装も自分で書いてみるのはよい練習になりそうです。
話としては,「自分で証明できない数学公式は使うな」などと同じですね。
余裕があるときに,自分で色々やってみるのが大切のようです。
それでは,また。
/ゴドー