2012-01-01から1年間の記事一覧

Hokkaido.pm#8に来ています

ゲストとしてtypesterさんが来てくれているので、XSの話をリクエストしたところ実際にライブコーディングまで見せていただけたので非常に興奮しております。 ## XSにまつわる話 - 2010年から書き始めた - XS食わず嫌い期 - 2004-2010年くらいまで - 手を出す…

VirtualBoxでBluetoothを使う

Mac

環境: Mac OS X 10.8.2 Mountain LionDevices > USB Devices > Apple Inc. USB Bluetooth Host Controller から使えるようになっているように見えるが、エラーが発生してしまうのでBluetoothが有効にできない。 Mac側でBluetoothを無効にしてからじゃないと…

Webサービスのつくり方 - いかにして高校生が効率よく大量のおっぱい画像をダウンロードしたか

ゆーすけべーさんから献本していただきました。ありがとうございました。yusukebe++Webサービスのつくり方 ~「新しい」を生み出すための33のエッセイ (Software Design plus)作者: 和田裕介出版社/メーカー: 技術評論社発売日: 2012/11/20メディア: 単行本(…

正規表現のキャプチャ

正規表現のキャプチャの結果を取得したいときには、次のようなコードを書く: if (my @capture = '10/17' =~ m!([0-9]{2})/([0-9]{2})!) { # @capture = (10, 17) } $1や$2を使っても取得はできるが、キャプチャが増えたときに$1, $2, $3, $4, ...と増やして…

tacochanをCPANに上げた

App::Tacochan - Skype message delivery by HTTP - metacpan.org tacochanがCPANからインストールできるといいのに、という話を聞いたのでCPANに上げることにした。cpanm App::Tacochanでインストールできるようになっているはず。 そのままCPANに上げるの…

YAPC::Asia 2012で「Skype効率化」というトークをした話

Skype効率化 // Speaker Deck Skype::Anyというモジュールを書いたので、そのモジュールを使ってbotを書く例を紹介しました。実際にSkype::AnyはCPANにアップされているので、使うことができます。まだまだやりたいことがあるので、開発を続けたいと思ってま…

Cocoa::GuiTestというものを少しだけ書いた

akiym/Cocoa-GuiTest · GitHub use 5.016; use warnings FATAL => 'all'; use utf8; use Cocoa::GuiTest; use Time::HiRes qw/sleep/; my ($width, $height) = Cocoa::GuiTest::GetScreenRes(); my $hz = 10; my $omega = 2.0 * 3.14 * $hz; for my $x (0 ..…

メモリリークを見つける方法

use 5.016; use warnings FATAL => 'all'; use utf8; use AnyEvent; my $pid = shift or die "Usage: $0 pid\n"; my $cv = AE::cv; my $t; $t = AE::timer 0, 0.1, sub { warn `ps -o rss= -p $pid`; }; $cv->recv;

これぞ次世代の暗号?!絵文字だけですべてが表現できる「Emoji64」とは?

誰でも親しみやすく、そしてかわいらしい暗号…そんな暗号が今まであったでしょうか。それがEmoji64です。 Emoji64はUnicode 6.0で追加されたemojiを利用して秘密の暗号を作ることができます。必要なのは暗号のタネだけ。それさえ覚えていれば二人だけの秘密…

'あ' =~ /\w/ はマッチする

see perldoc perlrecharclass ちなみに/a修飾子をつけると[a-zA-Z0-9_]の範囲にしかマッチしなくなる。(perl-5.14.0以降で使える) 'あ' =~ /\w/a; # doesn't match.

YAPC::Asia 2012で「Skype効率化」というタイトルでトークしてきます

Skype効率化 無事に採択されました。ありがとうございます。しかし、kazuhoさんとTAKESAKOさんの裏番組でした ;( 気合入れて頑張ります! 基本的にはSkype botを作る上でのtips集の紹介です。このトークを聞けばSkype botが書けるようになるはずです。 Skype…

Acme::Collector64をCPANにアップした

Acme::Collector64 - Yet Another Base64? - metacpan.org

Mojo::DOMとWeb::ScraperとWeb::Query

Mojo::DOMとWeb::Scraper - Charsbar::Note より 最近、Web::Scraperの代わりにWeb::Queryを使うことが多いのでWeb::Queryも追加してみたけど、速度の面ではWeb::Scraperと何ら変わりないのであまり意味がなかった。。 use strict; use warnings; use 5.010;…

SFTPサーバーを立ち上げる

/etc/ssh/sshd_configに以下の内容を追加する Subsystem sftp internal-sftp Match Group sftp-only PasswordAuthentication yes ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding noあとはユーザーをsftp-onlyグループに所属させればおー…

Plack::Middleware::Warn::txt書いた

akiym/Plack-Middleware-Warn-txt · GitHub use strict; use warnings; use Plack::Builder; my $app = sub { my $env = shift; return [200, ['Content-Type' => 'text/plain'], ['hello']]; }; builder { enable 'Plack::Middleware::Warn::txt', author =…

hateblo hacks

自分のはてブロにwarn.txtを置いてみた。 通常、ファイルを置くことはできないようになっているが、あるハックをすると任意のファイルを置くことができるようになるので、それを利用した。http://akiym.hateblo.com/warn.txt

perl-5.16.0 is now available!

% perlbrew install perl-5.16.0 今朝、ついにperl-5.16.0がリリースされました。 詳しい変更点についてはperldeltaを見ればバッチリですが、Hokkaido.pm Casual#0で発表したスライドがあるので、そちらを参照するといいかもです。 http://akiym.com/slides/…

Skype::Any for Linux

0. Skype::Anyを入れる akiym/Skype-Any · GitHub からどうぞ 1. Net::DBus::Skype::APIを入れる akiym/Net-DBus-Skype-API · GitHub からどうぞ 2. AnyEvent::DBusを入れる % cpanm AnyEvent::DBus これで動くかもしれません。

Skype::Any現状

Macでは使えませんが、Linuxでは使えます(手元で動きました)。 MacのSkypeはバージョンアップして、レスポンスが非同期で返ってくるようになったので(仕様らしいです。うえー)、Mac環境では思ったように動きません。メッセージを送信だけするといったことは…

メモ: nginx「upstream sent invalid chunked response while reading upstream」

nginx/1.2.0でエラーを吐いた(しかも正常なレスポンスを返さない) nginx/1.0.15ではエラーを吐かなかった とりあえず、検索してみるとIRCのログのようなものにヒットした。 http://ngxbot.lustfield.net/logs/%23nginx/2012/02/%23nginx.03.log 英語でよくわ…

大学の授業の小テスト

perlのプログラミングについての質問です。 大学の授業の小テストなのですが、よろ... - Yahoo!知恵袋 より Q1 円の半径を入力すると「その円の面積」を出力するプログラムを作り、 作成したプログラムに半径として以下の値を入力した場合に、 それぞれの出…

.vimperatorrc晒し

あまりカスタマイズしてないけど。 今は使ってない機能とかも残ってると思うし、ただコピペしてきただけのところもあるので注意。 ひとつひとつコメントを書こうかなと思ったけど、面倒だったのでやめた。 set titlestring=Firefox set ignorecase set compl…

Firefox 12.0にアップデートしたらCocoaのEmacsキーバインドが使えなくなった!そんなときには…

気がつくと勝手にFirefoxのバージョンが12.0になっていて、うわーとなってしまいました。それだけなら別にいいのですが、CocoaのEmacsキーバインド(C-hやC-wなど)が使えなくなってしまいました。 原因 VimperatorというわけでVimperatorのアップデートをしま…

メモ2: 徳丸本に載っていないWebアプリケーションセキュリティ (PHPカンファレンス北海道)

- OSコマンドインジェクションは本当にめずらしい - 釣りでいうとイトウ(本人談) - キャッシュからの情報漏洩 - リバースプロキシ、フォワードプロキシ、ブラウザのキャッシュ機能 - アプリケーションの負荷軽減 - 「別人問題」 - 原因のひとつがキャッシュ …

メモ1: さくらのクラウドのコンパネをつくる話 (PHPカンファレンス北海道)

とりあえずメモしたので、貼り付けておく。 - 石狩データセンター - 4000ラック - ダクトは段ボール - 軽い、耐熱性 - さくらのクラウド - IaaS - インフラ - VLAN - Ether over InfiniBand - OUI: 9C-A3-BA - $1750くらい - API - REST - PHP+MySQL - ステ…

M.pmを読んだ

元ネタ: Mo.pmを読んだ - Perl日記 コード 見た感じはシンプルですが、どんな実装になっているのでしょうか。 package M; $VERSION = 1.000001; ネタが尽きたので終わり。

webibloを使ってみた

だるそうだなーと思ってたけど、まあまあ簡単だった。 しかし、webiblo.plはImage::Resizeに依存していたので嫌だなーと思ったのでImagerを使うように書き換えた。 diff --git a/webiblo.pl b/webiblo.pl index ba1fef0..c9af2d2 100755 --- a/webiblo.pl ++…

さくらのVPSを契約した

さくらのVPSがとってもお得になるという話を聞いたので、メモリ1Gのプランを契約してきた。 とりあえずDebian入れておいた。

Perlで動的ディスパッチ/動的メソッド定義

Ruby、Pythonで動的ディスパッチ/動的メソッド定義 - brainstorm より こんな感じでしょうか。 追記 AUTOLOADを使う方法もあるみたいです。(thanks nekokakさん) Re: Perlで動的ディスパッチ/動的メソッド定義 - blog.nekokak.org

Markdown事情

最近Markdownが流行っているみたいなので。自分の場合はプレゼン資料を書くのにMarkdownを使っている。 手作業でいちいちMarkdownをHTMLに変換するのはだるいので、コマンドで一発で変換するようにしている。 こんな感じ。 pfswatch ~/work/slide -e "slide.…