SlideShare una empresa de Scribd logo
1 de 86
Descargar para leer sin conexión
「映画にでてくるハッカーになりたい」

    cho45 <cho45@lowreal.net>
          株式会社はてな
自己紹介
id:cho45
http://www.lowreal.net/
株式会社はてな
京都8F(@hatena8f)勤務
Perl (バックエンド)
JavaScript (フロントエンド)
Ruby (ツール作り)
Scala (たまに)
Java (Android アプリ)
DSi Browser JS の実装にそれなりに詳しいです
例:DSi ブラウザの textarea でキャレットを表示する方法

JavaScript で textarea に対して focus() させるとキャレットがでる。

この状態で A ボタンを押すとソフトウェアキーボードが開かず改行
を入力することができる。

ただし何かの役に立つわけではない。
趣味
神社巡り
写真
プログラミング
コード群: http://github.com/cho45
日記: http://subtech.g.hatena.ne.jp/cho45/
最近作ったもの
P::M::StaticShared
P::M::ServerStatus
P::M::Random.
Text::Xatena (はてな記法っぽい記法)
Niro (個人用ブログツール、Plack, DBIx::Skinny)
JSDeferred (JS 機能追加など)
git-branch-recent (Ruby)
HTML::Trim
 (HTML タグを考慮しつつ文字列トリム)
DBIx::RewriteDSN
 (DBI レベルでデバッグ時一括で DSN 書きかえ)
togetter_block_all_users.user.js
 (togetter で纏まれているユーザを一括ブロック)
bdfcanvas.js
 (BDFフォントをcanvasに描画)
oecan.js
 (お絵描きツール)
Chemr-js
 (リファレンスひき支援)
jAutoPagerize
 (なんかあれ)
本題
映画にでてくるハッカーの例
何かわからないが画面に文字が流れる
ものすごい可視化がされてる
よくわからない方法で暗号を解く
見ていて鳥肌がたつ
でもこう…もうちょい 
現実的かつかっこよくならないか?
仕事で使いたい 
I HATE
RIAJU.
コーディングしてモテたい
実用性+
実用性だけでも面白くない
遊びだけじゃただのクソアートだ
というわけで
使えそうで使えない
でもちょっと使えるツール群
および
使えそうで実際使える
というかマジ使えるツール
のご紹介をさせて頂きます
前置き終了
実用的かつ、映画的ハッカーを追求
そのいち
tail -f /etc/httpd/access_log
ハハハ、ワロス
何をいってるんだ
ログを tail -f して
人間が得られるもの
1.動体視力
動体視力を鍛えたいわけじゃない
  ハッカーになりたいのだ
別に tail -f は悪くない
ただ何かが足りない
そこでハッカー的なことを加える
ハッカー的なこと
ハッカー的なこと
すごい可視化
realtimeresponsegraph.pl
tail -f a.log | realtimeresponsegraph.pl

tail -f からレスポンスタイムを即座にグラフにする

パフォーマンス改善の結果をすぐ出せる
レスポンスタイムグラフ
レスポンスタイムグラフ
はてなでは一日分を Hadoop で
処理してグラフ化している

全解析は一日かかるので本番での
チューニング結果がすぐ解らない
demo
realtimeresponsegraph.pl の実装
use OpenGL;
select();
vec();
fileno();
my $rin = '';
vec($rin, fileno(STDIN), 1) = 1;
LINE: while (select($rin, undef, undef, $max_wait)) {
  # ...
}
いろいろな機能

グルーピング
 (デフォルトではHTTPメソッドごとに別のラインにする)
Apache ログフォーマットパーサジェネレータ
だいぶ良くなったが
まだ何かが足りない
ハッカー的なこと
ハッカー的なこと
ものすごい可視化
realtimeaccesstrack.pl
realtimeaccesstrack.pl

直近アクセスを可視化

特にアクセスが多いクライアントを抽出
どこにどうやってアクセスしていっているかがわかる

DOSアタック的クライアントの即時検出

ユーザ行動分析
demo
realtimeaccesstrack.pl の実装
use OpenGL;
select();
vec();
fileno();
realtimeaccessgraph.plと
       ほぼ同じ
だいぶ良くなったが
まだ何かが足りない
ハッカー的なこと
原点に還って
画面に何か流れる
Devel::KYTProf
Devel::KYTProf

id:onishi 作 (NYTProf ではない)

DBI とか memcached とか、IO に関わる処理を
処理時間とともにターミナルに全て出力

空気 読んで とってくれる プロファイル だとか
KYoTo Prof だとか
諸説ありますが知りません
便利な点
吐かれるSQLがわかる
どこから吐かれたか
  わかる!
かかった時間がわかる
demo
まとめ
realtimeresponsegraph.pl
      実用度 ★★★
      かっこよさ ★★
realtimaccesstrack.pl
     実用度 ★★
    かっこよさ ★★★
Devel::KYTProf
実用度 ★★★★★
 かっこよさ ★★★
ご静聴ありがとうございました
  www.lowreal.net

Más contenido relacionado

La actualidad más candente

オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
Akihiro Kuwano
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
Takayoshi Tanaka
 

La actualidad más candente (20)

JavaのテストGroovyでいいのではないかという話
JavaのテストGroovyでいいのではないかという話JavaのテストGroovyでいいのではないかという話
JavaのテストGroovyでいいのではないかという話
 
大阪Node学園 七時限目 「ゼロからはじめるnode.js」
大阪Node学園 七時限目 「ゼロからはじめるnode.js」大阪Node学園 七時限目 「ゼロからはじめるnode.js」
大阪Node学園 七時限目 「ゼロからはじめるnode.js」
 
Node js 入門
Node js 入門Node js 入門
Node js 入門
 
づや会 Vol4 Node.jsとphpのパフォーマンスを比較してみる
づや会 Vol4 Node.jsとphpのパフォーマンスを比較してみるづや会 Vol4 Node.jsとphpのパフォーマンスを比較してみる
づや会 Vol4 Node.jsとphpのパフォーマンスを比較してみる
 
サーバサイドNodeの使い道
サーバサイドNodeの使い道サーバサイドNodeの使い道
サーバサイドNodeの使い道
 
Hello, Node.js
Hello, Node.jsHello, Node.js
Hello, Node.js
 
Node.js Tutorial at Hiroshima
Node.js Tutorial at HiroshimaNode.js Tutorial at Hiroshima
Node.js Tutorial at Hiroshima
 
Djangoのススメ
DjangoのススメDjangoのススメ
Djangoのススメ
 
Node.js で Web アプリ開発
Node.js で Web アプリ開発Node.js で Web アプリ開発
Node.js で Web アプリ開発
 
Web制作勉強会 #2
Web制作勉強会 #2Web制作勉強会 #2
Web制作勉強会 #2
 
20150131_jQueryのようにWebテストが書けるGeb Navigator APIの紹介
20150131_jQueryのようにWebテストが書けるGeb Navigator APIの紹介20150131_jQueryのようにWebテストが書けるGeb Navigator APIの紹介
20150131_jQueryのようにWebテストが書けるGeb Navigator APIの紹介
 
俺とCI
俺とCI俺とCI
俺とCI
 
Django/Celeyを用いたデータ分析Webアプリケーションにおける非同期処理の設計と実装
Django/Celeyを用いたデータ分析Webアプリケーションにおける非同期処理の設計と実装Django/Celeyを用いたデータ分析Webアプリケーションにおける非同期処理の設計と実装
Django/Celeyを用いたデータ分析Webアプリケーションにおける非同期処理の設計と実装
 
【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
 
Node.js Hands-On
Node.js Hands-OnNode.js Hands-On
Node.js Hands-On
 
Windows で PHP をビルドしてみた
Windows で PHP をビルドしてみたWindows で PHP をビルドしてみた
Windows で PHP をビルドしてみた
 
大規模なJavaScript開発の話
大規模なJavaScript開発の話大規模なJavaScript開発の話
大規模なJavaScript開発の話
 
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
 
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
 

Destacado

デザインデータと実装の間でギャップが起こる事があるから、いまさらだけどピクセルパーフェクトとか そこら辺のことについて調べてみたよ@転職会議framewo...
デザインデータと実装の間でギャップが起こる事があるから、いまさらだけどピクセルパーフェクトとか そこら辺のことについて調べてみたよ@転職会議framewo...デザインデータと実装の間でギャップが起こる事があるから、いまさらだけどピクセルパーフェクトとか そこら辺のことについて調べてみたよ@転職会議framewo...
デザインデータと実装の間でギャップが起こる事があるから、いまさらだけどピクセルパーフェクトとか そこら辺のことについて調べてみたよ@転職会議framewo...
aya.furusawa@gmail.com Sano
 

Destacado (20)

グロースハックのマインドセット
グロースハックのマインドセットグロースハックのマインドセット
グロースハックのマインドセット
 
boketeのグロースハック 先生:イセ オサム
boketeのグロースハック 先生:イセ オサムboketeのグロースハック 先生:イセ オサム
boketeのグロースハック 先生:イセ オサム
 
大分グロースハッカーズナイト#01
大分グロースハッカーズナイト#01大分グロースハッカーズナイト#01
大分グロースハッカーズナイト#01
 
グロースハック_UIscope_講演資料20150825
グロースハック_UIscope_講演資料20150825グロースハック_UIscope_講演資料20150825
グロースハック_UIscope_講演資料20150825
 
スマホアプリの収益のモデリング
スマホアプリの収益のモデリングスマホアプリの収益のモデリング
スマホアプリの収益のモデリング
 
恋愛に喩えて学ぶ、グロースハックの概念と要点 先生:梅木 雄平
恋愛に喩えて学ぶ、グロースハックの概念と要点 先生:梅木 雄平恋愛に喩えて学ぶ、グロースハックの概念と要点 先生:梅木 雄平
恋愛に喩えて学ぶ、グロースハックの概念と要点 先生:梅木 雄平
 
10,000DAUまで 成長させたグロースハック事例
10,000DAUまで 成長させたグロースハック事例10,000DAUまで 成長させたグロースハック事例
10,000DAUまで 成長させたグロースハック事例
 
UIscope流グロースハック~ユーザーテストで「AARRR」をハックする!~
UIscope流グロースハック~ユーザーテストで「AARRR」をハックする!~UIscope流グロースハック~ユーザーテストで「AARRR」をハックする!~
UIscope流グロースハック~ユーザーテストで「AARRR」をハックする!~
 
KAIZEN platformの公開グロースハック!〜 CVRを40%以上向上させた施策 先生:須藤 憲司
KAIZEN platformの公開グロースハック!〜 CVRを40%以上向上させた施策 先生:須藤 憲司KAIZEN platformの公開グロースハック!〜 CVRを40%以上向上させた施策 先生:須藤 憲司
KAIZEN platformの公開グロースハック!〜 CVRを40%以上向上させた施策 先生:須藤 憲司
 
AARRRで始めるグロースハック
AARRRで始めるグロースハックAARRRで始めるグロースハック
AARRRで始めるグロースハック
 
君にグロースハックはいらない
君にグロースハックはいらない君にグロースハックはいらない
君にグロースハックはいらない
 
200以上のwebサービス事例から見えてきた鉄板グロースハック ~傾向と対策~ 先生:須藤 憲司
200以上のwebサービス事例から見えてきた鉄板グロースハック ~傾向と対策~ 先生:須藤 憲司200以上のwebサービス事例から見えてきた鉄板グロースハック ~傾向と対策~ 先生:須藤 憲司
200以上のwebサービス事例から見えてきた鉄板グロースハック ~傾向と対策~ 先生:須藤 憲司
 
有名サイトのGrowth hackテクニック色々〜Quora、facebook、twitterなど〜
有名サイトのGrowth hackテクニック色々〜Quora、facebook、twitterなど〜有名サイトのGrowth hackテクニック色々〜Quora、facebook、twitterなど〜
有名サイトのGrowth hackテクニック色々〜Quora、facebook、twitterなど〜
 
Y Combinator に学ぶスタートアップ強化プログラム (3 か月間でスタートアップを成長させる Accelerator Program の仕組み )
Y Combinator に学ぶスタートアップ強化プログラム (3 か月間でスタートアップを成長させる Accelerator Program の仕組み)Y Combinator に学ぶスタートアップ強化プログラム (3 か月間でスタートアップを成長させる Accelerator Program の仕組み)
Y Combinator に学ぶスタートアップ強化プログラム (3 か月間でスタートアップを成長させる Accelerator Program の仕組み )
 
コミュニティアプリのリニューアルから考えた モバイルUXデザインとUIデザイン
コミュニティアプリのリニューアルから考えた モバイルUXデザインとUIデザインコミュニティアプリのリニューアルから考えた モバイルUXデザインとUIデザイン
コミュニティアプリのリニューアルから考えた モバイルUXデザインとUIデザイン
 
デザインデータと実装の間でギャップが起こる事があるから、いまさらだけどピクセルパーフェクトとか そこら辺のことについて調べてみたよ@転職会議framewo...
デザインデータと実装の間でギャップが起こる事があるから、いまさらだけどピクセルパーフェクトとか そこら辺のことについて調べてみたよ@転職会議framewo...デザインデータと実装の間でギャップが起こる事があるから、いまさらだけどピクセルパーフェクトとか そこら辺のことについて調べてみたよ@転職会議framewo...
デザインデータと実装の間でギャップが起こる事があるから、いまさらだけどピクセルパーフェクトとか そこら辺のことについて調べてみたよ@転職会議framewo...
 
営業向け ABテストの統計学 データアーティスト
営業向け ABテストの統計学 データアーティスト営業向け ABテストの統計学 データアーティスト
営業向け ABテストの統計学 データアーティスト
 
効果的なAbテストがwebサイトを成長させる~abテスト成功メソッドのご紹介~
効果的なAbテストがwebサイトを成長させる~abテスト成功メソッドのご紹介~効果的なAbテストがwebサイトを成長させる~abテスト成功メソッドのご紹介~
効果的なAbテストがwebサイトを成長させる~abテスト成功メソッドのご紹介~
 
グロースハック
グロースハックグロースハック
グロースハック
 
Unyoo.jp Meetup vol.3 AdWordsスクリプトに寄り添う
Unyoo.jp Meetup vol.3 AdWordsスクリプトに寄り添うUnyoo.jp Meetup vol.3 AdWordsスクリプトに寄り添う
Unyoo.jp Meetup vol.3 AdWordsスクリプトに寄り添う
 

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

Createjsについて@jsCafe20
Createjsについて@jsCafe20Createjsについて@jsCafe20
Createjsについて@jsCafe20
佐藤 俊太郎
 
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
Takashi Endo
 
ゆとりエンジニア交流会_20130706
ゆとりエンジニア交流会_20130706ゆとりエンジニア交流会_20130706
ゆとりエンジニア交流会_20130706
拓 小林
 
Java script testing framework for around html5 studies-
Java script testing framework for  around html5 studies-Java script testing framework for  around html5 studies-
Java script testing framework for around html5 studies-
Jun Saeki
 
20140517 knockoutjs hands-on
20140517 knockoutjs hands-on20140517 knockoutjs hands-on
20140517 knockoutjs hands-on
Seiji Noro
 

Similar a 映画にでてくるハッカーになりたい - YAPC Asia 2010 (20)

LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介
LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介
LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介
 
これからのJSの話をしよう ~jQueryで作るTwitterアプリ~ (Gunma.web #2 2010/10/9)
これからのJSの話をしよう ~jQueryで作るTwitterアプリ~ (Gunma.web #2 2010/10/9)これからのJSの話をしよう ~jQueryで作るTwitterアプリ~ (Gunma.web #2 2010/10/9)
これからのJSの話をしよう ~jQueryで作るTwitterアプリ~ (Gunma.web #2 2010/10/9)
 
Inside frogc in Dart
Inside frogc in DartInside frogc in Dart
Inside frogc in Dart
 
Morioka As 0x06 Usagi Koyomirya
Morioka As 0x06 Usagi KoyomiryaMorioka As 0x06 Usagi Koyomirya
Morioka As 0x06 Usagi Koyomirya
 
#nds34 LT
#nds34 LT#nds34 LT
#nds34 LT
 
Javaと小道具
Javaと小道具Javaと小道具
Javaと小道具
 
これから始める人のためのjQuery入門 先生:大竹 孔明
これから始める人のためのjQuery入門 先生:大竹 孔明これから始める人のためのjQuery入門 先生:大竹 孔明
これから始める人のためのjQuery入門 先生:大竹 孔明
 
どきっ!三行で作るランダムダンジョン!?~WEBもあるよ!~ - 2010/8/21 群馬Web研究会(勉強会)
どきっ!三行で作るランダムダンジョン!?~WEBもあるよ!~ - 2010/8/21 群馬Web研究会(勉強会)どきっ!三行で作るランダムダンジョン!?~WEBもあるよ!~ - 2010/8/21 群馬Web研究会(勉強会)
どきっ!三行で作るランダムダンジョン!?~WEBもあるよ!~ - 2010/8/21 群馬Web研究会(勉強会)
 
Enchantjs
EnchantjsEnchantjs
Enchantjs
 
Createjsについて@jsCafe20
Createjsについて@jsCafe20Createjsについて@jsCafe20
Createjsについて@jsCafe20
 
An Internal of LINQ to Objects
An Internal of LINQ to ObjectsAn Internal of LINQ to Objects
An Internal of LINQ to Objects
 
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
 
じっくりコトコト煮込んだJavaスープ
じっくりコトコト煮込んだJavaスープじっくりコトコト煮込んだJavaスープ
じっくりコトコト煮込んだJavaスープ
 
ゆとりエンジニア交流会_20130706
ゆとりエンジニア交流会_20130706ゆとりエンジニア交流会_20130706
ゆとりエンジニア交流会_20130706
 
Java script testing framework for around html5 studies-
Java script testing framework for  around html5 studies-Java script testing framework for  around html5 studies-
Java script testing framework for around html5 studies-
 
NSHashTableでDelegatesパターン
NSHashTableでDelegatesパターンNSHashTableでDelegatesパターン
NSHashTableでDelegatesパターン
 
レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】レスポンシブWebデザイン【発展編】
レスポンシブWebデザイン【発展編】
 
20140517 knockoutjs hands-on
20140517 knockoutjs hands-on20140517 knockoutjs hands-on
20140517 knockoutjs hands-on
 
スクレイピングその後
スクレイピングその後スクレイピングその後
スクレイピングその後
 
Presentation on your terminal
Presentation on your terminalPresentation on your terminal
Presentation on your terminal
 

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