リバース・エンジニアリング

 プログラムやスクリプトのコードの一部を変更し、結果がどう変わるかをみてコードそのものを勉強する手法を、「リバース・エンジニアリング」と言うそうですね。言葉そのものは知りませんでしたが、私などはコードが書けませんので、普段からやっている手法です。
 例えば昨日のFirefoxにvimperatorを入れて、そのpluginに_libly.js(※1)を置き、.vimperatorrcにjagua’s blog(※2)のコードを追加する際、Instapaper関連の15~72行目のみを転記し、複数アカウント分として17、24~70行をアカウント分挿入、起動キーのiaは別々のキーに、[‘instapaper’]はinstapaper1~nとかに名称変更をしておきます。
 「リバース・エンジニアリング」と言うとなにか仰々しいですが、ほとんど普段の生活や人生設計そのものでやっていることじゃないでしょうか。成功した人の足跡をたどり、その一部を自分なりに変えてみる。コードならばすぐに結果が出ますが、人生ではすぐに結果が出ないところが大きな違いですが・・・・。

(※1) https://github.com/vimpr/vimperator-plugins/blob/master/_libly.js
(※2) http://jagua.hatenablog.jp/entry/2013/06/02/025906

se.gif