タグ

ブックマーク / hiratara.hatenadiary.jp (14)

  • 単純なRSA暗号の解き方 - Pixel Pedals of Tomakomai

    以下のような感じで"ABCD"を暗号化する。 use strict; use warnings; use Crypt::RSA; use Crypt::RSA::Primitives; my $rsa = Crypt::RSA->new; my ($public, $private) = $rsa->keygen(Size => 48) or die; print $public->serialize, "\n"; my $prim = Crypt::RSA::Primitives->new; my $message = unpack "L", "ABCD"; my $ctxt = $prim->core_encrypt (Key => $public, Plaintext => $message); print $ctxt, "\n"; __END__ $VAR1 = bless( {

    単純なRSA暗号の解き方 - Pixel Pedals of Tomakomai
    TMTL
    TMTL 2012/09/19
  • 今日はYAPC::Asia Tokyo 2011の2日目です - Pixel Pedals of Tomakomai

    あいにくの雨ですが、今日も時間通り会場に到着しています。 日もgihyo.jpさんの特集のレポーターをやってます。参加されているみなさんと一緒に楽しみながらレポートしようと思っています。 Kazuho Okuさん「Unix Programming with Perl 2」 昨年のトークでは、エラーやファイルハンドル、シグナルについて話した 今年はプロセス間通信と、シグナル周りのレースコンディション IPC::Open3 : open3がロックする場合がある。いつ? A). STDIN を読むコードの場合、$cinを待ち続けるのでロック close $cin する B). 子プロセスがSTDOUTとSTDERRに大量にデータを吐いた場合、バッファがいっぱいとなる 試すと、16384byte (16KB)でブロックする。これがバッファサイズ。OSによって異なる--close $cout, c

    今日はYAPC::Asia Tokyo 2011の2日目です - Pixel Pedals of Tomakomai
  • 今日はYAPC::Asia Tokyo 2011の1日目です - Pixel Pedals of Tomakomai

    YAPC::Asiaの季節がやってまいりました。昨日は寝込んでいましたが、今日は朝から出席します。場所は東京工業大学大岡山キャンパスです。 なお、今年もgihyo.jpさんの特集のレポーターをやってます。会場の熱気を伝えられるよう、頑張ります。 なお、機材トラブルの影響で、開始時間は10:40となる見込みです。 (追記: なんか今日は英語のセッションばっか聞いてたので、メモの内容はあんま正確じゃないです。もしも内容をあてにしている方がいらしたら、ごめんなさい!) 941さん「Opening」 会場の照明がLED電球になった! プロジェクタ12万で手配したけど無駄になった→機材トラブルで使うことになった 新たな試み 遠方からの参加者支援 → SKYARC Systemさんに拍手 個人スポンサー → 90名 スイーツエリア → 交流の場 Jesse Vincent さんの旅費は、個人スポンサー

    今日はYAPC::Asia Tokyo 2011の1日目です - Pixel Pedals of Tomakomai
  • Data::Monad::CondVar をリリースしました - Pixel Pedals of Tomakomai

    YAPC Asia 2011で話をする予定のモジュールをCPANへアップしました。 Data::Monad::CondVarはJSDeferred みたいなもんです。 use AnyEvent; use AnyEvent::HTTP; sub random_choice { my ($data, $headers, $cb) = @_; my (@url) = $data =~ m{href="(http:[^"]+)}g; http_get +(shuffle @url)[0], $cb; } my $cv = AE::cv; http_get "http://yapcasia.org/2011/", sub { random_choice @_ => sub { random_choice @_ => sub { random_choice @_ => sub { my ($data,

    Data::Monad::CondVar をリリースしました - Pixel Pedals of Tomakomai
  • 今日はHokkaido.pm #5の日です - Pixel Pedals of Tomakomai

    旅行中にふらりと立ち寄ったので、内容をメモしておきます。 ustreamはこちら。 「今年の夏休みは...」 / @charsbarさん Hokkaido.pm 1周年おめでとう! Mojolisious のプリント配布どもです YAPCのネタを考えよう Game Development in Perl アメリカのYAPCのスライド Perlで書かれたゲーム Frozen Bubble、Zumbies SDL モジュール(SDLのラッパー) sdl.perl.org 国内の例だと、ニコニコ動画にある Rubyではも出ているくらいメジャー レイヤー、ネットワークなど Games-Sokoban なぜか Marc Lehmann作 これを使ったSDLのSokoban のサンプルを作ってみた : デモ コントローラのソース Gameコンテストの作品の紹介 会場にYAPCに参加する人は割といるが

    今日はHokkaido.pm #5の日です - Pixel Pedals of Tomakomai
    TMTL
    TMTL 2011/07/17
  • 今日はShibuya.pm #16の日です - Pixel Pedals of Tomakomai

    今日は夏の正規表現祭りに参加していますので、自分用にメモします。 ustreamもあります! (Irr|R)egular Expressions / @dankogaiさん 「えろい」のではなく「えらい」 「命賭けるな、コード書け」 正規表現の使い過ぎに注意 $str eq 'XXX' or $str eq 'YYY' を /^(XXX|YYY)$/ に書き直したくなる → やりすぎ もしくはハッシュを使ったり、5.10 でスマートマッチ ~~ を使ったり。 メールアドレスの検証の正規表現 → 適当に書くと不完全。完全に書くとすごく長い Regexp::Common → 便利な正規表現集。ipv4とか。 Regexp::Assemble → alternations (xxx|yyy|zzz) をTRIE最適化する。 ただし、5.10 以降は自動でTRIE最適化してくれる マッチした部分を

    今日はShibuya.pm #16の日です - Pixel Pedals of Tomakomai
  • 今日はShibuya.pm #15の日です。 - Pixel Pedals of Tomakomai

    Shibuya.pm #15に出席予定です。昨日に引き続き、IIJさんの大会議室に向かってます。ストリーミング中継もあるらしいです。 MORE Learning Perl / brian d foyさん(@briandfoy, @briandfoy_perl) .pmは世界中にある → 実際に会いたい Acme::CPANAuthors->new('Japanese') → 日のCPAN author "Learning Perl" → 5.10に対応。5.14対応にしたい。Unicode対応したい。 "Inter mediate Perl" → 新しい版は来年の夏? 正規表現オブジェクトやMoose対応。 Mastering Perl → アップデート予定はない Effective Perl PROGRAMMING → 一番おすすめ。5.12。 Effective Parlerを更新中

    今日はShibuya.pm #15の日です。 - Pixel Pedals of Tomakomai
  • Apache2+mod_proxy+持続接続で時々レスポンスが悪くなる現象のメモ - Pixel Pedals of Tomakomai

    今更な話題で恐縮ですがmiyagawaさんがものすごい勢いで教えてくれたのでメモっておきます。 mod_proxyでバックエンドにリクエストを投げたとき、リクエストのうち何個かが極端に遅いという現象が起こりました。その時のabの結果は以下。 % ab -c 5 -n 500 http://127.0.0.1:21082/ Percentage of the requests served within a certain time (ms) 50% 1 66% 1 75% 1 80% 1 90% 4 95% 1008 98% 1994 99% 2003 100% 2020 (longest request)なお、今回使おうとしたバックエンドはStarmanです。 多分こんな原因 検証不足で断言はできないのですが、多分以下のような感じ。多分。 Apache のデフォルトのServerLimi

    Apache2+mod_proxy+持続接続で時々レスポンスが悪くなる現象のメモ - Pixel Pedals of Tomakomai
    TMTL
    TMTL 2010/03/26
  • 今日は Yokohama.pm #5 の日です - Pixel Pedals of Tomakomai

    19:00 にスタートです。詳細はこちら。 出ますので、いつものようにメモをまとめる予定です。ustreamはこちららしいです。 モダンコマンドラインツール - xaicronさん cpanminus CPAN::Shellの代替 Plackのリリースが伸びる原因に!? cpan の問題点 起動、メモリ Bundle::CPANを入れるのが大変 コードがカオス CPANPLUS 5.10 からコア入りしているけど・・・ 重過ぎる miyagawaさんが40分くらいで作った 特徴 単一のPerl Script 高速、省メモリ プラガブル インストール → ダウンロードしてchmod +x か、普通にインストール コマンドは cpanm デフォルトでは表示をほとんど捨ててる。Y/Nが必要な時は --interactive Pluginは17個 backpan とか 今のとこは開発者向け。自己責

    今日は Yokohama.pm #5 の日です - Pixel Pedals of Tomakomai
  • https://hiratara.hatenadiary.jp/entry/20091212/1260577791

    TMTL
    TMTL 2009/12/13
  • AnyEventとPlackの社内勉強会資料 - Pixel Pedals of Tomakomai

    社内で Shibuya.pm*1でmiyagawaさんのTatsumakiの話を聞く上での予備知識のつもりな勉強会をするので、利用するスライドだけ貼っておきます。 AnyEvent and PlackView more documents from hiratara. *1:自分は行けなくなりましたが・・・orz

    AnyEventとPlackの社内勉強会資料 - Pixel Pedals of Tomakomai
  • Tatsumaki でブラウザベースの Twitter Streaming - Pixel Pedals of Tomakomai

    それってHamakiなんですが、試しに作ってみたので一応。ただし、Tatsumakiは、 This is considered as alpha quality software. Most of the stuff are undocumented since it's considered unstable and will likely to change. You should sometimes look at the source code or example apps in eg directory to see how this thing works. Tatsumaki なので自己責任で:-p 後、このエントリより eg/chat を見た方が勉強になりますw Tatsumaki概要 TatsumakiはPlackとAnyEventをベースにしたTornadoっぽくWE

    Tatsumaki でブラウザベースの Twitter Streaming - Pixel Pedals of Tomakomai
  • PSGIを勉強したメモ(PlackとかMiddlewareとか)

    Tatsumakiを触ってみたいなあと思ったらなんかPSGI/Plackの迷路に入ってしまい、つぶやいてたらid:miyagawaさんが色々教えて下さったので、せっかくなのでまとめておきます。 教えてもらってない自分で調べたことも書いてるので、間違ってたらごめんなさい! PSGIとは WEBアプリとWEBサーバ間の仕様です。仕様はここ。WSGIやRackのPerl版です。レガシーな分け方で言えば、CGI(or mod_perl or FastCGI)の仕様の層になります。 Plackとは PSGIの仕様に関するリファレンス実装群です。 Plack(特にPlack::Server) PSGIサーバのリファレンス実装。レガシーな分け方で言えば、これはApache等の層。 Plack::Request(と、Plack::Response) PSGIアプリケーション用のユーティリティ。レガシーな分

    PSGIを勉強したメモ(PlackとかMiddlewareとか)
  • Coro::AnyEventでフロントエンドをコールバックを使わずに書く - Pixel Pedals of Tomakomai

    Coro::AnyEventを使うと、継続渡しスタイルを使わずに非同期を書くことができます*1。 ということで、試しにやってみました。 最初にまとめ AnyEventの層を作り、その上にCoroの層を重ねて、フロントエンドからはCoroの層だけ使うとわかりやすいアプリができるんじゃないかなあと思います。 (0) AnyEventのAPIを作る まず、AnyEventでフロントエンドのための材料を作ります。頑張ってコールバックを使って非同期処理を書いて下さい。名前空間はAnyEvent::的な何かにするといいと思います。また、たぶんこの段階ではまだCoro::AnyEventは使わない方が無難です。ピュアAnyEventの方が使い回しが効きますし。 ここでは、AnyEvent::HTTPを題材にします。バックエンドとしてすでにAnyEvent::HTTPは使えるものとします。 (1) Cor

    Coro::AnyEventでフロントエンドをコールバックを使わずに書く - Pixel Pedals of Tomakomai
  • 1