Your SlideShare is downloading. ×
  • Like
映画にでてくるハッカーになりたい - YAPC Asia 2010
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

映画にでてくるハッカーになりたい - YAPC Asia 2010

  • 795 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
795
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 「映画にでてくるハッカーになりたい」 cho45 <cho45@lowreal.net> 株式会社はてな
  • 2. 自己紹介
  • 3. id:cho45http://www.lowreal.net/
  • 4. 株式会社はてな京都8F(@hatena8f)勤務
  • 5. Perl (バックエンド)JavaScript (フロントエンド)Ruby (ツール作り)Scala (たまに)Java (Android アプリ)
  • 6. DSi Browser JS の実装にそれなりに詳しいです
  • 7. 例:DSi ブラウザの textarea でキャレットを表示する方法JavaScript で textarea に対して focus() させるとキャレットがでる。この状態で A ボタンを押すとソフトウェアキーボードが開かず改行を入力することができる。ただし何かの役に立つわけではない。
  • 8. 趣味
  • 9. 神社巡り
  • 10. 写真
  • 11. プログラミングコード群: http://github.com/cho45日記: http://subtech.g.hatena.ne.jp/cho45/
  • 12. 最近作ったもの
  • 13. P::M::StaticSharedP::M::ServerStatusP::M::Random.Text::Xatena (はてな記法っぽい記法)Niro (個人用ブログツール、Plack, DBIx::Skinny)JSDeferred (JS 機能追加など)git-branch-recent (Ruby)
  • 14. HTML::Trim (HTML タグを考慮しつつ文字列トリム)DBIx::RewriteDSN (DBI レベルでデバッグ時一括で DSN 書きかえ)togetter_block_all_users.user.js (togetter で纏まれているユーザを一括ブロック)bdfcanvas.js (BDFフォントをcanvasに描画)oecan.js (お絵描きツール)Chemr-js (リファレンスひき支援)jAutoPagerize (なんかあれ)
  • 15. 本題
  • 16. 映画にでてくるハッカーの例
  • 17. 何かわからないが画面に文字が流れる
  • 18. ものすごい可視化がされてる
  • 19. よくわからない方法で暗号を解く
  • 20. 見ていて鳥肌がたつ
  • 21. でもこう…もうちょい 
  • 22. 現実的かつかっこよくならないか?
  • 23. 仕事で使いたい 
  • 24. I HATERIAJU.
  • 25. コーディングしてモテたい
  • 26. 実用性+
  • 27. 実用性だけでも面白くない遊びだけじゃただのクソアートだ
  • 28. というわけで
  • 29. 使えそうで使えないでもちょっと使えるツール群
  • 30. および
  • 31. 使えそうで実際使えるというかマジ使えるツール
  • 32. のご紹介をさせて頂きます
  • 33. 前置き終了
  • 34. 実用的かつ、映画的ハッカーを追求
  • 35. そのいち
  • 36. tail -f /etc/httpd/access_log
  • 37. ハハハ、ワロス何をいってるんだ
  • 38. ログを tail -f して人間が得られるもの
  • 39. 1.動体視力
  • 40. 動体視力を鍛えたいわけじゃない ハッカーになりたいのだ
  • 41. 別に tail -f は悪くないただ何かが足りない
  • 42. そこでハッカー的なことを加える
  • 43. ハッカー的なこと
  • 44. ハッカー的なこと
  • 45. すごい可視化
  • 46. realtimeresponsegraph.pl
  • 47. tail -f a.log | realtimeresponsegraph.pltail -f からレスポンスタイムを即座にグラフにするパフォーマンス改善の結果をすぐ出せる
  • 48. レスポンスタイムグラフ
  • 49. レスポンスタイムグラフはてなでは一日分を Hadoop で処理してグラフ化している全解析は一日かかるので本番でのチューニング結果がすぐ解らない
  • 50. demo
  • 51. realtimeresponsegraph.pl の実装
  • 52. use OpenGL;
  • 53. select();
  • 54. vec();
  • 55. fileno();
  • 56. my $rin = ;vec($rin, fileno(STDIN), 1) = 1;LINE: while (select($rin, undef, undef, $max_wait)) { # ...}
  • 57. いろいろな機能グルーピング (デフォルトではHTTPメソッドごとに別のラインにする)Apache ログフォーマットパーサジェネレータ
  • 58. だいぶ良くなったがまだ何かが足りない
  • 59. ハッカー的なこと
  • 60. ハッカー的なこと
  • 61. ものすごい可視化
  • 62. realtimeaccesstrack.pl
  • 63. realtimeaccesstrack.pl直近アクセスを可視化特にアクセスが多いクライアントを抽出どこにどうやってアクセスしていっているかがわかるDOSアタック的クライアントの即時検出ユーザ行動分析
  • 64. demo
  • 65. realtimeaccesstrack.pl の実装
  • 66. use OpenGL;
  • 67. select();
  • 68. vec();
  • 69. fileno();
  • 70. realtimeaccessgraph.plと ほぼ同じ
  • 71. だいぶ良くなったがまだ何かが足りない
  • 72. ハッカー的なこと
  • 73. 原点に還って
  • 74. 画面に何か流れる
  • 75. Devel::KYTProf
  • 76. Devel::KYTProfid:onishi 作 (NYTProf ではない)DBI とか memcached とか、IO に関わる処理を処理時間とともにターミナルに全て出力空気 読んで とってくれる プロファイル だとかKYoTo Prof だとか諸説ありますが知りません
  • 77. 便利な点
  • 78. 吐かれるSQLがわかる
  • 79. どこから吐かれたか わかる!
  • 80. かかった時間がわかる
  • 81. demo
  • 82. まとめ
  • 83. realtimeresponsegraph.pl 実用度 ★★★ かっこよさ ★★
  • 84. realtimaccesstrack.pl 実用度 ★★ かっこよさ ★★★
  • 85. Devel::KYTProf実用度 ★★★★★ かっこよさ ★★★
  • 86. ご静聴ありがとうございました www.lowreal.net