@kyanny's blog

My thoughts, my life. Views/opinions are my own.

Perl

p5-App-AccessLogFilter-Colored というプログラムを書いてみました (追記あり)

追記 grep --color でだいたい事足りてしまいますねすいません... (知らなかった) Common/Extended Log Format なファイルを「特定のフィールドに限定してフィルタリングしたい」「特定のフィールドだけ色を変えたい」なーと常々思っていたのですが、用途に…

YAPC::Asia Tokyo 2011 トーク応募した

Rubyist のための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist) というテーマで応募した。以前は「トークに応募するなんてだいそれたことは自分にはとてもできない」と思っていたものだったが、今は「何か特別な資格がい…

Shibuya.pm #16 に行ってきた

Shibuya Perl Mongers : Shibuya Perl Mongersテクニカルトーク#16 に行ってきた。皆様お疲れ様でした。会場やら懇親会の飲み食いやらを提供してくださった mixi さまありがとうございました。セミナールームも休憩スペース?も広くて綺麗だった。例によって…

Amon2 + Teng で nopaste を作る

Amon2 と Teng の練習用に、 nopaste なウェブアプリケーションを作ってみた。https://github.com/kyanny/NoritamaAmon2 の使い方は GitHub - tokuhirom/frepan: freshness mirror of cpan viewer とか https://github.com/tokuhirom/p5-OreOre-NoPaste とか…

Rails のログをリクエスト単位で grep する

何度も似たようなのを書いては捨ててるような気もするけど、性懲りもなくまた書いた。GitHub - kyanny/rails-log-block-grepRails のログは apache やら lighttpd やらのログ (common とか extended/combined とかよばれる) と違って一リクエストが複数行に…

Shibuya.pm #15 に参加した

Shibuya Perl Mongersテクニカルトーク#15 に参加してきました。関係者の皆様、ありがとうございました。今回は「教育」がメインテーマでした。個人的に教育にはもともと関心を抱いていたこともあり、普段以上に楽しみでした。そして今回のサプライズゲスト…

JPerl Advent Calendar 2010 に参加してみた

JPerl Advent Calendar 2010 の English Track に参加してみた。ネタも英語も自信はないけど、僕もお祭りに加わりたいなと思ったので。頑張ります。

YAPC::Asia Tokyo 2010 を終えて

YAPC::Asia Tokyo 2010 が終わった。前夜祭からほぼフル参加してきた。とても楽しかった。前夜祭で LT を、一日目にトークをやらせてもらった。「おれにもできるんだなー」というのが率直な感想。長年「発表?無理無理、だって話すようなネタないよ」って思…

YAPC::Asia Tokyo 2010 で発表しました

YAPC::Asia Tokyo 2010 で発表しますというわけで発表してきました。お聞きいただいた皆様、ありがとうございました。スライドは SlideShare にアップロードしてありますので、是非ご覧ください。30days Albumの裏側 後日談View more presentations from Ken…

YAPC::Asia 2010 前夜祭で LT やってきた

YAPC::Asia 2010 前夜祭の LT に応募したというわけで LT やってきました。スライドは SlideShare にアップロードしたので興味ある方はどうぞ。Maatkit で MySQL チューニングView more presentations from Kensuke Kaneko.時間オーバーで最後のスライド(エ…

YAPC::Asia Tokyo 2010 で発表します

YAPC::Asia Tokyo 2010 で発表します。「30days Albumの裏側 後日談」というテーマで、 30days Album を支えている MogileFS や Perlbal の運用にまつわる話などを紹介します。どうぞよろしくお願いします。もともと mizzy さんが応募したトークでしたが、僕…

YAPC::Asia 2010 前夜祭の LT に応募した

【LT発表者募集】YAPC::Asia 2010 前夜祭 : ATND勉強会・カンファレンスのトークに応募したのはこれが初めて。金曜の晩にぼーっとした頭のまま勢いで応募しちゃって、土曜の晩に「Perl ほとんど関係ないな・・・」と軽く後悔したけど、日曜の晩にスライドざ…

Shibuya Perl Mongersテクニカルトーク#14 に参加した

Shibuya.pm 参加してきました。 #13 は台湾なので不参加、 #12 は途中からだったので、フル参加は久しぶりでなんかフレッシュな気持ちでした。Shibuya Perl Mongers : Shibuya Perl Mongersテクニカルトーク#14アナログにペンと紙でメモとりつつ聞いてました…

エスケープシーケンスを利用してログファイルを読みやすくするフィルタ

Linux等でのログのモニタリングで簡単にアラートをキャッチするワンライナー - 元RX-7乗りの適当な日々 で、エスケープシーケンスを利用して文字を装飾しログファイルを読みやすくするテクニックが紹介されていた。とても便利で重宝しているのだけど、エスケ…

Nobody should not assert his/her rights by donation. (寄付は権利を主張するためのものではない)

Tetsuya Kitahata wrote an article about trademark of Perl in Japan.He said: I often donated to TPF and other major Open Source Software projects. I was angered by people who say to me "you are unrelated to TPF" and "you are selfish". Have …

JPA 一般会員に再登録した

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

Perl Quiz やってみた

Perl Quiz に挑戦して負けました(追記有り) - だるろぐ 寄せられたPerl Quizの回答と解説 - だるろぐどんだけ遅れてるんだよ、って感じだけど、さっきピン立ててた記事開いたところだったので、やってみた。一応、答えとかはみずに20分くらいでできたと思…

「したらば掲示板ビューア for Mobile Safari」作ってます

「したらば掲示板ビューア for Mobile Safari」というのを作ってます。ソースはここ GitHub - kyanny/jbbs-proxy: jbbs-proxy - したらば掲示板ビューア for Mobile Safariデモサイト (落ちてたらゴメンネ) http://kyanny.dyndns.org:9886/一年前に iPhone …

はじめての JSTAPd with jQuery

JSTAPd を試してみた。 GitHub - yappo/JSTAPd: JSTAPd is Ajax application friendly Javascript Unit Test Server. CPAN or github github の master のほうが CPAN にあがってるものよりも新しいので、 git clone してくる。 perl Makefile.PL && make &&…

DBIC で生の SQL を実行したいときは $storage->dbh_do() と $storage->dbh() どちらが適切?

DBIC で生の SQL を実行したいときは $storage->dbh_do() を使えば良いということを知った。 my @stuff = $schema->storage->dbh_do( sub { my ($storage, $dbh, @args) = @_; $dbh->do("DROP TABLE authors"); }, @column_list ); http://search.cpan.org/~…

MooseX::Getopt は --help オプションを自動認識する

POD によると、 If Getopt::Long::Descriptive is installed and any of the following command line params are passed, the program will exit with usage information. You can add descriptions for each option by including a documentation option fo…

MooseX::SimpleConfig の使い方を覚えた

MooseX::Getopt には慣れてきたので、次はコマンドラインオプションだけじゃなくて設定ファイルの読み込みもやりたくなった。何かないかとおもって、何をどう調べたか忘れたけど http://mt.endeworks.jp/d-6/2009/10/twitter-on-hamaki.html をみて --config…

実行中のプロセスが終わるまで待つ SIGINT のトラップの仕方

追記 牧さんがhttp://mt.endeworks.jp/d-6/2009/11/perl-4.htmlで詳細に書いてくれてるのでそっちを見るといいです。 lestrrat++シグナルハンドラの中で SIGINT とかを無効にしたい - 刺身☆ブーメランのはてなダイアリー で「うまくいかない」と書いてたやつ…

HTML::Element と HTML::TreeBuilder で盆栽

HTML::Element とか HTML::TreeBuilder で HTML 構文木をいじることを盆栽と呼ぶらしいですが、最近よく盆栽してていろいろ覚えたことがあるのでメモ。 as_HTML() で HTML エンティティに変換させない HTML::Element#as_HTML を呼ぶと HTML 文字列が返るのだ…

Sledge::* のメンテナになりました

Sledge は仕事でここ数年使ってきて、 CPAN の Sledge::* なモジュールにもお世話になってきたので、 http://d.hatena.ne.jp/tokuhirom/20091022/1256189097 をみて、消えてしまうのはもったいないし寂しいな、と思っていました。でも思っているだけでは何も…

HTML::TreeBuilder (など) で HTML をパースしたあと as_HTML() したときに タグがつかないようにしたい

具体的には以下のテストにパスするようにしたい。 $tree->implicit_tags(0); がそれっぽい気がするのだけど、うまくいかない・・・。実際にやりたいことまではあともうワンステップあり、 HTML 中の 'div.blah' 以下のノードツリーはのぞいた HTML 部分が欲…

MT形式のエクスポート用に出力をエスケープする

MT 形式はブログデータのエクスポート/バックアップにおける業界標準といっていいが、フィールドの区切り文字(デリミタ)に "-----\n" と "--------\n" を使っている(五つまたは八つのハイフンの連続に改行文字がついたもの)。これは正規表現で表すと qr/…

HTML::Element#as_Lisp_form

S式で出力できるらしい。ちゃんと入れ子をインデントで表現してくれるw $ perl -mHTML::Element -le '$p = HTML::Element->new(q{p}); $a = HTML::Element->new(q{a}, href => q{http://google.com/}); $p->push_content($a); print $p->as_Lisp_form()' ("…

Perl Casual Talks#1 スピーカー登録(補欠)した

http://perl-casual.org/ 始動おめでとうございます。賛同した一人として、自分も積極的に関わっていきたいと思います。なので、すでに枠は埋まってしまっていますが、 Perl Casual Talks#1 のスピーカー枠にも応募してみました(ただし補欠)。いままでカン…

Config::Pit の使い方をやっと理解できた

pod にかいてあるとおりにすれば何も困ることなかった・・・。 SYNOPSIS にかいてあるコードを一度は実行してみるべきだなぁ。いままで、 ppit set example.com とかやって値をセットしようとしてたんだけど、それだと --- {} こんなひな形ができて、 YAML …