2009-08-04
知識のポートフォリオ / 達人プログラマー
book | |
- 作者: アンドリューハント,デビッドトーマス,Andrew Hunt,David Thomas,村上雅章
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2000/11
- メディア: 単行本
- 購入: 36人 クリック: 889回
- この商品を含むブログ (327件) を見る
1章5節より。
プログラマーの知識の学習方法には、金融工学のポートフォリオの理論を応用できる。
- 定期的に投資を行う。継続的に学習を続け、新しい知識を取り入れる。
- 多角化。特定の技術だけでなく、幅広く学ぶ。そうすることで、変化への対応力がつく。
- リスク管理。分散投資のように、ハイリスク・ハイリターン(エッジだが、廃れるかもしれない技術)、ローリスク・ローリターン(普遍的だが、誰もが知っている技術)の両方の知識に、適切なバランスで取り組む。
- 安く買い、高く売る。今後伸びそうな技術を、先取りして学んでおく。目利きが難しい。
- 見直しと再配分。学んでいる技術を見直し、業界の変化に対応する。
具体的な行動
XSのデバッガ, Binary Hacks
XSをうまくデバッグする方法ってないのかな。perlのレイヤーはperlのデバッガでできるんだけど、cのコードのを呼び出す部分以降は当然追えない。普段はperlのデバッガを使い、cのレイヤーに差しかかったら自動的にgdbを起動する、みたいなことができればいんだけど。
とりあえず今は、cのコードで直接printfする原始的printfデバッグと、動作を見たい関数にピンポイントでバックトレースを表示するコードを差し込んでいます。バックトレースはこちらを参考にしました。
普通のやつらの下を行け: C でバックトレース表示 - bkブログ
すごい参考になります。まだあんまり理解してないんですが、stdlib.h, execinfo.h, signal.hをインクルードして以下の3行を追加すればそれっぽく動きます。あとでちゃんと読んでおこう。
void *trace[128]; int n = backtrace(trace, sizeof(trace) / sizeof(trace[0])); backtrace_symbols_fd(trace, n, 1);
こんな感じで表示されます。
0 libxapian-1.1.1.dylib 0x010857bf _ZN11FlintCursorC1EP10FlintTable + 45903 1 libxapian-1.1.1.dylib 0x01033b0d _ZN6Xapian8revisionEv + 6685 2 libxapian-1.1.1.dylib 0x0107bc08 _ZN11FlintCursorC1EP10FlintTable + 6040 3 libxapian-1.1.1.dylib 0x0100788b _ZN6Xapian16WritableDatabase12set_metadataERKSsS2_ + 1099 4 libxapian-1.1.1.dylib 0x0100308c _ZN6Xapian8DatabaseD2Ev + 60 5 libxapian-1.1.1.dylib 0x010030e5 _ZN6Xapian16WritableDatabaseD0Ev + 37 6 Xapian.bundle 0x0050186b _Z43XS_Search__Xapian__WritableDatabase_DESTROYP11interpreterP2cv + 747 7 libperl.dylib 0x001c784d Perl_pp_entersub + 925 8 libperl.dylib 0x0014a98b Perl_call_sv + 1883 9 libperl.dylib 0x001cdaf4 Perl_sv_clear + 132 10 libperl.dylib 0x001ce6ee Perl_sv_free + 126 11 libperl.dylib 0x001f998f Perl_leave_scope + 3263 12 libperl.dylib 0x001be902 Perl_pp_unstack + 82 13 libperl.dylib 0x001be2a9 Perl_runops_standard + 25 14 libperl.dylib 0x0014b200 perl_run + 768 15 perl 0x0000204e _mh_execute_header + 4174 16 perl 0x00001ee6 _mh_execute_header + 3814
話はそれますが、「普通のやつらの下を行け」って、すんごいかっこいいフレーズですね。今回の話も面白かったし、あと普通に役に立ちそうだし、バイナリハックス買おうかな…
Binary Hacks ―ハッカー秘伝のテクニック100選
- 作者: 高林哲,鵜飼文敏,佐藤祐介,浜地慎一郎,首藤一幸
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2006/11/14
- メディア: 単行本(ソフトカバー)
- 購入: 20人 クリック: 318回
- この商品を含むブログ (220件) を見る
ちなみに元ネタはPaul Grahamのエッセイです。確かハッカーと画家にもこのエッセイは入っていて、僕はそっちで読みました。こちらも当然面白いです。
コメントを書く


