Get Things Right

My English blog is here http://getthingsright.blogspot.com/

同僚に学ぶプログラムの達人

プログラム技術の高い同僚に恵まれたので気づいたことを列挙する。

○ 使用するツール郡を重視している。
IT技術者はIDE開発環境などツールのお世話になることが多い。達人はツールの良し悪しとその使いこなしが作業効率に影響することを理解している。そのため自分のお気に入りのツールには強いこだわりがある。職人が使う道具にこだわるのに似ている。

○ ラーニングカーブを意識している。
焦点が新しい技術を学べるか学べないかではなく、時間をかければ当然学べるとの立場をとっている。だから何を学ぶかではなく、限られた時間でどれだけ学べるかという時間対費用効果で考えている。言い換えるとラーニングカーブをどれだけ急斜面にできるかが焦点となっている。

○ 実装ではなくインターフェースで考えている(Interface driven programming)
実装は後で変えられる。インターフェースをできるだけ使い回しができるように設計し、できるだけジェネリックにしている。

○ 検索が上手
プログラムを組むには数え切れないほどの関数とその引数を使いこなす必要がある。記憶に頼らず検索上手になることに焦点がある。検索で気づいたのだがプログラム関連をグーグルで検索すると英語のgoogle.comと日本語のgoogle.co.jpでは英語のほうがはるかに有益な情報が得られる。IT関連は英語の情報源が豊富なのだから当然の帰結だが、このことを意識の上にのせることができたため、自分はグーグルツールバーを英語版に変更できた。

ここにあげた項目はプログラミングという作業のなかで何が重要な焦点かを説いている。どれも真似できることなので彼らと働けて本当によかったと感謝している。