Entries from 2010-03-01 to 1 month

Socketとかがよくわからずハマったメモ

Test::TCPを使って何故かハマった http://d.hatena.ne.jp/tokuhirom/20080817/1218953905 を見つつ、試しに書いてみた #!/usr/bin/perl use strict; use warnings; use Test::TCP; use IO::Socket::INET; test_tcp( client => sub { my $port1 = shift; test…

AnyEventでechoサーバ

まだAnyEventのあたりの使い方とか挙動とかを把握しきれていない。 ちょっと練習にAnyEvent::SocketとAnyEvent::Handleで超シンプルなechoサーバを書いてみた #!/usr/bin/perl use strict; use warnings; use AnyEvent::Socket; use AnyEvent::Handle; my $c…

10種類の記号で書くPerlワンライナーの作り方

java-ja温泉にて、Pythonのワンライナーがキモいという話が出ていて、Perlだってこれくらいキモいの書けるよ!とアピールしてみた perl -e '""!~("(?{".("{^(?)!(?^{^^!){.^^~~?}{!~}^}^.(!~}!..^^!~}!~~.~^}"^"^}((~))~~^{.{^~?}^!^}(~{^)?()^)^!).^}!()){.…

Twitterのfollowerをlistに追加するワンライナー

140文字以内に収まるように頑張った結果 perl -MNet::Twitter -e'$t->add_list_member(sugyan,listname,$_)for@{($t=new Net::Twitter traits,[API::Lists,Legacy],netrc,1)->followers_ids}'add_list_member に渡す引数(上記では sugyan, listname)はハード…

標準入力を受け取ってemacsで開く

vimだと、 echo hoge | vim -というように、"-"とオプション指定すると標準入力のものを開いて編集できるらしい。 emacsではどうすればいいのかな?と調べてみたけどよく分からない。とりあえず見つけたのがコレ。 unix - How to make Emacs read buffer fro…

proveコマンドの結果をTwitterにPOSTするプラグインの書き方

まったくそんな需要は無いと思うけど。 package Hoge; use strict; use warnings; use base 'TAP::Harness'; use Config::Pit; use Net::Twitter; sub load { my ($class, $p) = @_; my $prove = $p->{app_prove}; $prove->{harness_class} = $class; } sub …

DeNA Technology Seminar #1 に行ってきた

あっという間に募集定員に達してしまった大人気イベントに運良く枠内に入り、行ってきました。 DeNA Technology Seminar #1 : ATND 話聞きながらとっていたメモ。結局出来の悪い板書写しみたいになってしまった orz http://search.twitter.com/search?q=%23d…

proveコマンドの完了をGrowl通知するプラグインを書いてみた

Test::ContinuousでGrowlにtest完了通知させるようにしてみる - すぎゃーんメモで、testが終わるたびにGrowlで結果を教えてくれるのが便利だなーと思って、でもそれを使わない普通のproveコマンドの場合も結果を通知して欲しい!! ということで作ってみた。…

Yokohama.pm テクニカルトーク #5 に参加してきた

Yokohama.pm テクニカルトーク #5 を開催します(追記あり) - Yokohama Perl Mongers 前回に引き続き、参加させていただきました。 今回もid:hirataraさんが素晴らしい記事を書いてくださっています。ありがとうございます。 今日は Yokohama.pm #5 の日です …

Test::ContinuousでGrowlにtest完了通知させるようにしてみる

Catalyst::Testを使ってみたらtestを1回走らせるのも時間がかかって、いちいち結果出るまで眺めていたくないし、Growlで通知してもらうのがいいよなーと思って、例によってTwitterで聞いてみた。 sugyan prove終了したら結果をGrowl通知してくれる仕組みって…

Module::Buildでのインストール先の設定でハマった

local::lib切り替えのときに、モジュールの入ったディレクトリ丸ごと移動とかしていて、その後あるモジュール入れようとしてインストールしたのだけど何故か移動する前のところにインストールされてしまっていて、何でだと思ったら、どうやらModule::Buildが…

MySQLのSET型をDBIx::Classから使ってみる

sugyan 複数のチェックボックスからの入力を受けてDBに格納する場合って普通どういう風にするものなんだろう?各チェックボックスに対応するTINYINTカラムを作る?項目ごとにビット割り当ててINTでまとめる?MYSQLだとSETというのがあるみたいだけど 2010/03…

「local::libを切り替える」を試してみる

前回までのあらすじ ようやくlocal::lib童貞を捨てた - すぎゃーんメモから1.5ヶ月ほど経過。 やはりプロジェクト毎にモジュールのバージョンを揃えておきたくて、各プロジェクト用にモジュールをインストールしている。 アカウント作成して切り替え、という…