tokuhirom's blog Search
  • あたらしい O/R Mapper の Teng でたよ
    [ ActiveRecord 型の O/R Mapper であるところの DBIx::Skinny の後継です。 より RDBMS をリスペクトするようになった点、コードがよみやすくなった点が特徴
    2011-01-18(Tue)
  • PSGI 対応のサーバーの使い分けについて
    最近は、わたくしは以下のようにつかいわけております。 開発時には HTTP::Server::PSGI を使います。スタンドアロンでうごいて楽なので。本番では Starlet か Starman を
    2011-01-18(Tue)
  • Imager 0.78〜0.79 で GIF のエンコードが異常におそい件
    [ Imager 0.78 以後で、なぜか gif の圧縮がおそいのではないかということを [id:clouder]( さんにおしえていただいたので、ベンチマークをとって、本家に feedback
    2011-01-14(Fri)
  • Redis の sorted set にかんするメモ
    ほんとにチラ裏ですが。 [ をみてて、なんで redis の ZRANK はやいのかなーとおもって、しらべたののメモです。 skip list については、[ このへんがわかりいいとおもいました
    2011-01-14(Fri)
  • わたし、諦めない! - Sub::Retry
    DB に接続失敗したばあいに数秒後にリトライしてほしいとか、 API なげるのに失敗したときにリトライしてほしいとか、そういう処理を楽にかけるモジュールつくった。 以下のようにしてつかう。 ```
    2011-01-13(Thu)
  • QRCode をどのフォーマットでだすのがいの?という話
    [ ちょっと遅レスですが、プロファイラにかけてみると、実際には gif に encode するところで時間をちょうくってるということがわかった。 なんでだろう。Imager がおそいのか、減色処
    2011-01-13(Thu)
  • GNU globals でソースを読む
    vim とか emacs からよんでもいいのだが、めんどいので GNU globals で HTML を生成した。 ``` brew install global gtags -v htags op
    2011-01-12(Wed)
  • Imlib2 に、オンメモリ保存機能をつけたいという話
    という話をよく聞くのだが、対応させるためには、src/modules/loaders/loader\_\*.c に、オンメモリに保存する機能をつけて云々すればよさそう。というか、各フォーマットごとのエ
    2011-01-12(Wed)
  • libkyototycoon をつかって 5分で C++ で RPC サーバーを書く方法
    ちょっとした RPC サーバーを C/C++ でかきたいな、なんてケースはままあるわけですが、そんなときに便利なライブラリがあったので紹介します。 KyotoTycoon をつかうと、TSVRPC
    2011-01-12(Wed)
  • Text::Darts が OSX でうごかなかったのでなおした。
    [ OSX では IVSIZE != sizeof(int) なのでうごかないのでなおしました。 リリース希望>[id:dankogai](
    2011-01-11(Tue)
  • FrePAN のスコアリングをチューニングした話
    現時点で、search.cpan.org よりも、検索精度よくなったとおもいます。つまりこれは「俺がのぞむ検索結果」にちかい結果をだしてくれてる気がするという程度の意味ですが。 基本の検索エンジンに
    2011-01-09(Sun)
  • XS::Object::Magic をつかって Magic なオブジェクトをあつかうの法
    マルチスレッドで云々とかかんがえないでよいケースでは、XS::Object::Magic をつかうと楽にできる。 xs/typemap というファイルに以下の内容をコピペする。 ``` TYPEM
    2011-01-05(Wed)
  • How to configure xs module depended on external library using pkg-config
    If you want to write XS module, depended on external library using pkg-config, you just write like f
    2011-01-04(Tue)
  • Catalyst::View::JSON から opera 用の workaround がとりのぞかれてた
    [ [ だそうで。
    2011-01-03(Mon)
  • 新春連載企画: O/R Mapper についてかんがえてみた その1
    あけましておめでとうございます。正月早々、O/R Mapper についてかんがえてみたことについて、ちょっとだけかいてみます。 #### O/R Mapper は RDBMS の差異をうめるためのも
    2011-01-03(Mon)
  • pod を表示するためのウェブアプリを列挙してくスレ
    #### インストール済のpodを表示する系 ##### Pod::Webserver Pod::Simple を使用。httpd はなんと自前実装。 ##### Pod::POM::Web
    2011-01-02(Sun)
  • 自分用 homebrew もどきをかきなおした
    [ homebrew みてたら、こういう風にかけたほうがらくだわーとおもったので、かきなおした。簡単につかえるので、真似してつかってみてもいいかもしれない。
    2010-12-31(Fri)
  • 2010年の総括
    なんだかんだでいろいろやりました。 #### 現在のPCなどの環境 * mac mini(仕事用) * macbook air(もちはこび及び家用) * SC440(サーバー) SC440はパー
    2010-12-31(Fri)
  • Yet another CPAN search powered by groonga
    [ FrePAN に incremental search を追加した。groonga を採用しており、非常に高速な検索が可能。スコアリングもそれなりに考えて実装してあるので、ぼちぼちいいかんじの結
    2010-12-30(Thu)
  • use local::lib 'extlib'; のかわりにつかえる snippet
    ``` use File::Spec; use lib 'lib', File::Spec->catdir(qw/extlib lib perl5/); ``` 【追記】 実は archname
    2010-12-29(Wed)
  • added 'args_pos' function on Smart::Args
    Hi, I added the new 'args\_pos' function on Smarts::Args. It's very similar with 'validate\_pos' fun
    2010-12-28(Tue)
  • HTMLにふくまれるrelative URLをabsolute URLにかきかえる簡単な方法
    [ HTML::ResolveLink をつかうと簡単ですね。 ``` #!/usr/bin/perl use strict; use warnings; use utf8; use HTML::
    2010-12-28(Tue)
  • Perl 以外の言語でかかれたTCPサーバーをTest::TCPでテストする
    Test::TCP の中で exec 発行すれば、groonga だろうと KT だろうと memcached だろうと、サーバープロセスのテストは簡単にできるのであって、サーバーごとにモジュールにす
    2010-12-17(Fri)
  • web application 開発における git のブランチ運用ルール
    俺は普段こういう運用でやっているが、君はどうか。 社内の trac にドキュメントをかいたので、コピペしておく。git についてはカジュアルにつかってるだけなので、もっとこうしたほうがいいんじゃねえ
    2010-12-15(Wed)
  • How do you manage triggers in RDBMS.
    RDBMSレベルのtriggerはアプリケーションレベルのトリガーにくらべてもれもなく、安心感があってよいものですね。 しかし一方で、RDBMS レベルのtriggerは、deploy がむずかし
    2010-12-14(Tue)
  • Ubuntu hardy に Imager::PNG がはいらなくてはまる件
    前にレポートしたやつ。Imager-0.79 でなおってた。 ``` - parse defines from the options returned by pkg-config --cflag
    2010-12-12(Sun)
  • DBI と SAVEPOINT
    [ [ SAVEPOINT 関連は SQL 2003 できまってるし、DBI レベルではサポートしなてもいいよね!っていう話みたい。 ただし、DBIx::Connector をみると MSSQ
    2010-12-10(Fri)
  • Active Record パターンで single table inheritance できないというのは誤り
    [ Active Record パターンでは Single Table Inheritance パターンがつかえないというのは誤りです。件の記事にかいてある Active Record だからー、っ
    2010-12-10(Fri)
  • SASS とか HAML とか、ましてや DBIC と学習コストのはなし
    結局、がんばってそれの作法をおぼえても、それのブームがさった後にまったく役にたたない知識なので、そういうのを覚えるぐらいなら、ベーシックな技術の修得に時間をさくべきではないか、とおもった。
    2010-12-09(Thu)
  • Perl で拡張可能なモジュールをかくときに s/^\+// ? $_ : __PACKAGE__ . '::Plugin::$_' とした方がいい理由
    Data::Validator のコードの中にこんなのがあった。 ``` sub with { my($self, @roles) = @_; foreach my $role(@r
    2010-12-09(Thu)
  • Shibuya.pm Tech Talk
    [ Slide is here.
    2010-12-09(Thu)
  • Python のいいところ/わるいところ
    PyJUG のイベントのパネルによばれたので話してきた。事前にかんがえておいたメモを以下にコピペしておきますね。 ``` いけてるところ - indent acme - pep - method の
    2010-12-09(Thu)
  • AUTOLOAD vs tie in hash key validation
    code ``` #!/usr/bin/perl use strict; use warnings; use utf8; use Benchmark ':all'; { packa
    2010-12-06(Mon)
  • Class::Accessor::Fast とかの継承の罠
    ``` package Parent; use parent qw/Class::Accessor::Fast/; ``` な Parent クラスがある場合に、これを継承したクラス Child を
    2010-12-06(Mon)
  • DBD::Sponge
    ``` my $sponge = DBI−>connect("dbi:Sponge:","","",{ RaiseError => 1 }); my $sth =
    2010-12-04(Sat)
  • Class::Accessor::Lite に mk_(ro|wo)_accessor がほしいようという話
    [ まあ、ほとんどつかわないけどたまにほしくなるので、というか今ほしかったのでパッチをかいておくった。
    2010-12-03(Fri)
  • Minimalistic Approach for O/R Mappers
    O/R Mapper とかって結局つくってるアプリの正確とか、ユーザーの好みによって必要な機能とかがちがうわけです。あるいはつかってる DB サーバーによって、とか。 まあ、そういうことがあるので、
    2010-12-03(Fri)
  • All your base.pm are belongs to us
    ``` % perl -e '$HTML::Parser::VERSION; package MyApp; use base qw/HTML::Parser/; MyApp->new();' Can'
    2010-12-03(Fri)
  • How do you trace your query with DBI
    DBIx::QueryLog とかつかわなくても Callbacks を駆使すれば結構いけるよ!っていう話になった。いいね。 ``` use strict; use warnings; use DB
    2010-12-01(Wed)
  • それ Proc::Guard 0.04 でできるよっていう話
    [ Proc::Guard をつかってこういう風にするのはどうか。$worker\_guard ってのが Scope::Guard あるいは AnyEvent の guard みたいなかんじになって
    2010-11-30(Tue)
  • switching with for idiom
    ``` for ($foo) { return 1 if $_ == 1; return 2 if $_ == 2; return $_; } ```
    2010-11-30(Tue)
  • Write DBIx::Skinny's schema file from DB with DBIx::Inspector
    ``` #!/usr/bin/perl use strict; use warnings; use utf8; use Text::MicroTemplate qw/render_mt/; use
    2010-11-30(Tue)
  • DBIx::Inspector 0.01 released の話
    [ これ、英語でしか書いてなかったので日本語でダラダラ解説しておこうとおもいます。 これつくろうとおもった発端は、最近わたくし、DBIx::Yakinny っていう DBIx::Skinny っ
    2010-11-28(Sun)
  • SQL::Builder をつくっているというはなし
    SQL::Abstract がなんともつかいにくいとか、DBIC にひきづられすぎているとかいう話があるんで、Data::ObjectDriver をベースにつくられた DBIx::Skinny::S
    2010-11-28(Sun)
  • JPerl Advent Calendar 2010
    Japanese Perl Advent Calendar 2010 aka. JPerl Advent Calendar 2010 is ready to run!!! In this year,
    2010-11-28(Sun)
  • DBIx::Inspector - introspection for DBI
    ``` use DBIx::Inspector; my $dbh = DBI->connect(...) or die; my $inspector = DBIx::Inspector->new(d
    2010-11-27(Sat)
  • Encode::encode で変換できない文字を 〓 にする
    ``` use utf8; use Encode; my $geta = Encode::encode($encoding, '〓'); Encode::encode($encoding, $str
    2010-11-26(Fri)
  • 大概のテンプレートファイルを別ファイルにしたほうがいい理由
    conflict デザイナーに発注しやすくなるってのが最大の理由で。 あと、VCS で conflict する可能性をできるかぎりへらしたいというのもある。
    2010-11-26(Fri)
  • Amon2 の構成
    今、こうなっている。 基本的には魔法をつかわず、pluggableで minimalistic というところで、現状のものであんま不満はないのだが、つかってるモジュールをちょっとかえるかも。具体的に
    2010-11-25(Thu)
  • Jonk をいろいろかえてもらったの件
    [ ぱっとみで気になったところをいくつか指摘してなおしてもらいました。コードは10文字ぐらいしかかいていない。 だいぶシンプルなので、TheSchwartz や Qudo よりはこっちのほうがすき
    2010-11-24(Wed)
  • 海外からの contributor をえるの法
    * 英語で commit log をかく * 日本語の pod を書かない(日本語の ja.pod とかが充実してると、ひいてしまう) * 英語で blog をかく * pull request とか
    2010-11-24(Wed)
  • Imager::Probe が ubuntu hardy とかでうごかないからパッチおくった件
    [ 要は、pkg-config libpng --cflags の結果をまんま $opt{INC} にいれてるから、-D がかえってきたときにしぬので、とりのぞうようにしたというおはなし。
    2010-11-22(Mon)
  • urandom streaming on twiggy
    ``` use strict; use warnings; use autodie; sub { open my $fh, '<', '/dev/urandom'; sub {
    2010-11-22(Mon)
  • natatime on Xslate
    ``` #!/usr/bin/perl use strict; use warnings; use utf8; use Text::Xslate; my $tmpl = <<'...'; <tabl
    2010-11-22(Mon)
  • apply BLOCK LIST じゃない方法
    List::MoreUtils::apply のドキュメントによれば ``` my @a = apply { $_ * 2 } @b; ``` は ``` for (my @a = @b) {
    2010-11-22(Mon)
  • File::Stampedかいた
    [ Log::Dispatch::File::Stamped みたいよしなにタイムスタンプがついてるファイル名でファイルをつくるの人です。 ``` use File::Stamped; my $f
    2010-11-19(Fri)
  • PHP5 __destruct() and unserialize() function
    [ このへんみておもったこと。 unserialize() 関数はオブジェクトの unserialize もできるのだが、5 以後では \_\_destruct() が導入されているので、その
    2010-11-18(Thu)
  • first impression of Moo.pm
    * construct from reusable modules. * THIS IS GOOD. * no built-in TypeConstraints * no Role composi
    2010-11-17(Wed)
  • 開発時にslave用のdbhにかいたのを検出する方法
    ``` GRANT SELECT ON *.* TO slave@localhost IDENTIFIED BY ''; ``` とかしておいて、つなぎにいけばいいということにした。
    2010-11-17(Wed)
  • iTerm2++ という話
    [ iTerm といえば Terminal.app がバギーだから遅いけど我慢してつかうものというイメージだったのだが、最近はよくなったらしいと [id:nekokak]( がいうのでためしてみてる
    2010-11-17(Wed)
Prev
Next
© tokuhirom