2013-05-16 Harriet ー テストのときつかうにデーモンの取扱を簡単にするためのフレームワーク https://github.com/tokuhirom/Harriet/ https://metacpan.org/module/TOKUHIROM/Harriet-0.01/lib/Harriet.pm テストのときにつかう mysqld, memcached, stf, groo... 続きを読む
Monoceros は @kazeburo さんが開発してる Plack 用ウェブサーバ。prefork型だけど、待機中の接続をイベントドリブンのマネージャで管理することで、同時接続10,000本とか行ける(ソケットの受け渡しは SCM_RIGHTS とか使う)。で、雑感 大好き!!!Starletよ... 続きを読む
Monoceros というPSGI/Plackサーバ書きました https://metacpan.org/release/Monoceros https://github.com/kazeburo/Monoceros StarmanやStarletのようなPreforkなアプリケーションサーバでは、コネクションの維持イコールプロセスの占有なので、HTTPのKeepAli... 続きを読む
2013-05-14 Minilla を用いた Perl モジュールの作り方 http://shanon-tech.blogspot.jp/2013/05/perl.html Perl モジュールの作り方、2013年においては Authoring tool をつかって作るのがよいです。具体的には Minilla でつくるのがオススメであります。 perl... 続きを読む
dannさんが以前Catalystでやってたのを参考に、Plack/PSGIアプリケーションのメモリリークを Devel::Leak::Object で調べる方法 plackup を -MDevel::Leak::Object 付けて起動 $ plackup -MDevel::Leak::Object=GLOBAL_bless -e '$Devel::Leak::Object::TRACKSO... 続きを読む
How to debug a perl script using gdb - Presentation Transcript Perl スクリプトを gdb でデバッグ 2011/10/15 YAPC::Asia Tokyo 2011 @ 大岡山 株式会社ディー・エヌ・エー 樋口 証 Perl実行中のプロセスをデバッグ 今どこの perl コードを実行してるのか... 続きを読む
Webアプリケーションが遅いとか感じる時って、僕の場合、I/Oがボトルネックなケースが多いのです。つまり、MySQLへクエリーを投げて返却を待つとか、memcachedにget/set等のメソッドを発行した時の待ち時間が長くかかってたり... とかです。そうすると計測して... 続きを読む
2013-04-13 Millaで呼吸をするようにgithubでperl モジュールを開発しcpanにアップする cpan Milla github Perl Module::Setupを使ってモジュール書くぞ、と思ってた矢先に CPAN モジュールの開発についての最近の風潮という@tokuhirom氏のブログのエントリを読... 続きを読む
2013-04-10 最近のPlack/Starletのパフォーマンス改善まとめ。最大2倍の性能向上 最近のPlackとStarletにはパフォーマンス改善のため次のような変更が加えられています。Plackに対する変更 (カッコ内はバージョン) Plack::Request::query_parameters の最適化... 続きを読む
As soon as I saw a Flame Graph visualization I knew it would make a great addition to NYTProf. So I’m delighted that the new Devel::NYTProf version 5.00, just released, has a Flame Graph as the main feature of the index page. In this post I... 続きを読む
自己紹介 twitter @xaicron works :DeNA CPAN https://metacpan.org/author/XAICRON 免責 本日発表する内容は、個人的な考えや意見であり、 所属する組織、会社とは一切関係ありません。 免責 本日発表する内容は、個人的な考えや意見であり、 所属する組織、会... 続きを読む
Language runtimes installer for production environments. Supports: Perl Ruby Node.js How to install Install perl (ex: 5.16.3) (and cpanm/carton/pmuninstall) xbuild/perl-install 5.16.3 ~/local/perl-5.16 Install ruby (ex: 2.0.0-p0) xbuild/ruby-... 続きを読む
CPAN Module の変更点をサクッと調べる方法 というエントリーに反応してみるテスト。 僕は CPAN Module のバージョン間の diff をとるのに、search.cpan.org にある diff 機能を使う以下のようなやっつけスクリプトを使ってる。 たまに空のレスポンスが返ってき... 続きを読む
2013-04-05 SQL::TwoWay - 2way SQL in Perl5 2WaySQLというものがあるわけです。 2WaySQLについてはhttp://www.slideshare.net/t_wada/tokyo-rubykaigi-01-twada-presentation を参考にしてもらうとして、 超絶簡単に説明すると、実行可能なSQLを書いておいて... 続きを読む
http://blog.livedoor.jp/xaicron/archives/54444878.html これでどういう感じで調べたのかというのをなんとなく書いてみます。 Changes を見る まず、なにはともあれ Changes を確認します。自分はよく metacpan を利用しているので、 https://metacpan.org/so... 続きを読む
Perl環境の設定方法はここ数年で大きく進化し、変わってきました。ここではアプリケーションのデプロイも見据えた、モダンなperl環境の整え方を紹介していきます。具体的にはperl本体や外部モジュールのインストール方法を解説したのち、Perlを使ったアプリケー... 続きを読む
複数バージョンのモジュールで同じコードを実行してBenchmark.pmで計測したい、というケースにこう書けばいいかな、という例。普通にBenchmark.pmを使ってしまうと同一モジュールを違うバージョンで複数読み込むことができないため、 バージョンごとに子プロセ... 続きを読む
A weblog about Programming, Tech, gadgets, Japan and San Francisco. tl;dr Today possibly for the first time ever, CPAN toolchain ecosystem all support test requirements as separate from build requirements. I can’t be happier ever. Little bit... 続きを読む
2013-03-13 安定的な Perl アプリケーション運用のための perlbrew 運用テクニック 前提知識 Perl5 は minor version 間ではバイナリ互換性が保証されている Perl5 の minor update では、bug fix しか基本的に行われない Perl5 Porters の保守的さ度合いは信用... 続きを読む
Statistics Favorites 0 Downloads 0 Comments 0 Embed Views 0 Views on SlideShare 0 Total Views 0 cpanfile Presentation Transcript cpanfile Hokkaido.pm #9 Yoshihiro Sasaki 自己紹介twitter: aloelightCPAN: YSASAKIgithub: ysasakiPerlでスマホアプリ... 続きを読む
すごいヘビーな負荷を受けているPSGIアプリケーションで「なんでこれで負荷があがるの?」的な現象があったので二つほどTipを。ちなみにこれは 2013/03/06時点での話なので、もしこれをあなたが大分将来に読んでいるのなら、状況に変更がないかちゃんと確認する... 続きを読む
Module::Build::Pluggable::CPANfile is awesome! I'm going to use this module :) @kazeburo++ for example: # Build.PL use strict; use warnings; use Module::Build::Pluggable qw(CPANfile); my $build = Module::Build::Pluggable->new( license => 'per... 続きを読む
Plack アプリのプロファイリング by Devel::NYTProf 特に、Plack アプリに限定する話でもない部分は多々ありますが、Plack アプリを Devel::NYTProf でプロファイリングする方法について。 シングルプロセスの場合 plackup -MDevel::NYTProf 開発環境で plackup... 続きを読む
ウェブアプリケーションを書くとき、最近はだいたい Plack::Request なりなんなりを継承して、そのプロジェクト専用のリクエスト/レスポンスオブジェクトを作ることにしている。特にリクエストオブジェクトは、リクエストのパラメータを適切に変換して返すよう... 続きを読む
2013-02-28 CartonConference で話した CartonConference で話しました。 実は最初 Catron Hackathon と勘違いしてて、軽いノリで「いいよ」って言ったら、気がついたら基調講演になってた。昨日 cpanm-1.6000 & carton-v0.9.10 がリリースされたので、自分的ま... 続きを読む
2013-02-24 Kansai.pmに行ってCinnamonというデプロイツールについて発表しました perl tech Kansai.pm 第15回ミーティング on Zusaar に参加して来て、前作ったデプロイツールであるCinnamonについて発表して来ました。 発表したこと 以前capistranoの奥深さに... 続きを読む
README.pod NAME plenv - perl binary manager SYNOPSIS plenv help # list available perl versions plenv available # install perl5 binary plenv install 5.16.2 -- -Dusethreads # execute command on current perl plenv exec ack # change global defaul... 続きを読む
Try::Lite より安全な例外キャッチを簡単に I wrote too safety exception handling module. https://metacpan.org/release/Try-Lite $@ の処理を安全に取り扱う例外処理モジュールとしては Try::Tiny があまりにも有名ですが、別の実装を作ってみました。 アプ... 続きを読む
Exception::Tiny - ちょー簡単な例外処理 I wrote too easy exception interface module. https://metacpan.org/release/Exception-Tiny 既存の例外処理モジュールは、結構頑張ってるのが多くてドキュメント凄いいっぱいあったり実装が読みにくかったり痒い所が... 続きを読む
Test::NoLoad あるモジュールが use されてたらこける うちのプロジェクトではとあるモジュール使用禁止、とか、Moose 読まれんの嫌、とか。 なんかそういうのをテストで担保するためのモジュール Test::NoLoad 書いてみました。 test でやるんじゃなくて、実働... 続きを読む
Perlを3行書くと死ぬ奇病にかかってはや数年、毎日青息吐息で出社している僕です。一番好きな言語はC言語です。裏切らないから。 というわけで、裏切らないC言語でPerlのモジュールがかければ死ぬ可能性が低まるのではないか、という仮説のもとに、XS module作... 続きを読む
A weblog about Programming, Tech, gadgets, Japan and San Francisco. shipit —trial ShipIt 0.60 is released, and it now supports --trial option to make a TRIAL release on CPAN. TRIAL release is a (new) way to make a developer release on CPAN, ... 続きを読む
Test::Pretty is a prettifier for Test::More.When you are writing a test case such as following: use strict; use warnings; use utf8; use Test::More; subtest 'MessageFilter' => sub { my $filter = MessageFilter->new('foo'); subtest 'should detec... 続きを読む
Plack::Middlewareでリクエスト終了後になにがしかのか処理をしたい場合 sub call { my ($self, $env) = @_; my $t0 = [gettimeofday]; my $res = $self->app->($env); my $ela = Time::HiRes::tv_interval($t0); }; と書きそうになりますが、これだと $res が ... 続きを読む
2013-02-03 carton + 開発版の cpanm で、特定のバージョンのモジュールをつかいこなす! 開発版の cpanm で、META file の version range がサポートされるようになりました。CPAN の META spec v2.0 では、version range がサポートされていて、以下のような柔... 続きを読む
Sometimes you need to walk a directory tree, pick out files, and do stuff. If you're working in the shell, you can use find — at least if you have GNU find. Those other finds… shudder. If you're in Perl, of course, there's more than one way... 続きを読む
I like Path::Class, but it's clunky and slow. So I wrote Path::Tiny to scratch my itch. It's smaller (roughly half the lines of code), comes in a single file, and is generally faster. Among other things, it has lots of handy UTF-8 input and o... 続きを読む
開発メモその3です。今回は Perl のおはなし。何年も前に作ったウェブアプリケーションのコードを開いてみたら黒歴史なコードが出てきて憂鬱な気分になる、そんな経験ありませんか。私はあります。ずっとそんな現実から目を背けて生きてきました。さて、先日 Pe... 続きを読む
このごろ作っているものが幾つかあるのだけど備忘録代わりにこの辺はこうしているということを書いて行こうかなと思います。まずは Perl によるアプリケーションのデプロイについて。id:antipop と id:shiba_yu36 が開発した "Cinnamon" というミニマムなデプロ... 続きを読む
Pod::Cpandoc の v0.13 から -c オプションでモジュールのChangesを読めるようになったようです。すばらしい! $ cpandoc -c Text::Xslate Revision history for Perl extension Text::Xslate 1.6002 2012-12-19 22:54:55 [BUG FIXES] - Fix a bug where TTerse... 続きを読む
Vixie cron形式のcrontabをparseするモジュールをリリースしました。 Vixie cronと言えば、けんじおじさんに「カビ臭い」とかdisられそうな代物ですが、なんだかんだで利用している人は多いでしょうし、僕も使っています。 https://metacpan.org/release/Parse-... 続きを読む
Copyright © 2012 GitHub Inc. All slide content and descriptions are owned by their creators. F.A.Q. Terms of Service Privacy Policy 続きを読む
2012年も残すところあと20日ほどとなりましたが皆様いかがお過ごしでしょうか。@fujiwara です。 このエントリは tech.kayac.com Advent Calendar 2012 10日目の記事です。 テーマが「私の中のマイイノベーション 2012」ということで、まずこの1年に作ったもの... 続きを読む
vim, perl知らないと損するvim知識30選はじめに毎日プロテイン&筋トレを忘れない漢、vimtakuです。何を目指しているの?っていわれます。何を目指しているんでしょうか。 社内向けに勉強会をやるべってなったので社外にブログを公開してそれを題材に社内向けに... 続きを読む
2012-11-30 Working with Unix ProcessesをPerlで 以前 Working with Unix Processesという本を読んだのですが、この本がUnixにおけるプロセスについて非常にわかりやすく解説されていました。それで自分で内容をメモしてみたり、さらにわからないところを調べ... 続きを読む
21 Nov 2012 16:13:44 GMT Download (25.27K) Source (raw) Browse (raw) Clone repository Bugs Rate this distribution Test results (89 / 0 / 0) CPANTS License: perl_5 NAME SYNOPSIS DESCRIPTION CONFIGURATION CAVEATS WHY TIPS PERFORMANCE AUTHOR SEE... 続きを読む
サービスをつぶさない為に Web アプリを書く時にやっとくと良い事2選 テンプレートのエラーが出た時にアプリケーションのログだけに書くのでは無く、誰にでも「ここがえらってるよ!」って見えるようにしとくと間違いが少なくなる傾向があるのでテンプレートエ... 続きを読む
Cache::LRU::WithExpires - can set an expiration for the Cache::LRU - metacpan.org Cache::LRU に expires の機能をつけただけのモジュールですね。 最初はプロダクトのコードで使っていましたが、だれか (たしかグニャラくん?) がコピペして再利用してい... 続きを読む
YappoLogs: App::Ikachan - 様々なサーバのバッチ処理の結果等を IRC のチャンネルに通知するサーバ より リポジトリはこちら akiym/p5-App-Tacochan - GitHub HTTPで叩けるSkypeみたいなものです。ikachanをコピペして作ったのですが、ikachanとは使い勝手が違... 続きを読む
YAPC::Asia三度目の参加で、お陰様でSpeakerとして参加させて頂きましたので、もろもろの感想を徒然なるままに綴ります。とにかく、JPAの皆様、ボランティアの方々、LTソンの運営の皆様、大変お疲れ様でしたっ!! YAPC::Asia2012とは YAPCとは、Yet Another Perl... 続きを読む
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n InstanceCache.pm を vim で開いて適当に解説\n \n \n \n \n \n \n \n \n nginx.conf.example を開い... 続きを読む
Plack Handbook for Developers This little handbook is based on the content of the website Plack Advent Calendar. The calendar had 24 useful short posts explaining the concept of PSGI and tutorials how to adapt Plack to the existing web applic... 続きを読む
Travis は Github 連携の CI サービスで、結構前に Perl にも対応しているので最近更新したレポジトリには基本的に .travis.yml を置いて便利に使わせていただいていたのですが、 いままで使っていた設定だとtravis上でうまくテストが通らなくなってしまった。 ... 続きを読む
I wrote a new CPAN module named Data::Difflet. It's inspired from diffletData::Difflet makes colorful diff like difflet.This is a example implementation using Data::Difflet. #!/usr/bin/env perl use strict; use warnings; use utf8; use 5.010000... 続きを読む
O/R Mapper においてはページャーの実装方法は3種類かんがえられます。 1. クエリから count(*) 文を発行して、勝手に Pager オブジェクトをつくる 採用しているO/R Mapper DBIx::Class 利点 勝手に処理してくれるので楽。 欠点 $rs->pager(); のように、クエリ... 続きを読む
最近、久しぶりに新規コードを書いたんですが、その中テスト書く中でTest::Mock::Guardってモジュール使って便利だったんで、ここらで、今使っている動作確認テストを書く上でいいな(使ってみたいな)って思ったモジュール群やテスト関連ネタを個人的なメモとし... 続きを読む
My image management system for work is really cranking. It is now hosting 22 million images on a single server. Mind you it’s a beefy server, but that’s still a lot of images. What still surprises me is the performance of plack + starman +... 続きを読む
昨日でたNet::DNS::Lite-0.09の変更点に関する話。 Furlと組み合わせて使うと幸せになれる Net::DNS::Lite のtimeoutとretry回りは若干変わった実装になっていて、 use Net::DNS::Lite; my $r = Net::DNS::Lite->new( server => [qw/8.8.8.8 8.8.4.4/] ); $r->r... 続きを読む
CLI | 02:28 | App::Rad というコマンドラインツールがあるのですが、手軽にサブコマンド作れてだいぶウマーな感じなのに日本語情報が全くないので紹介してみます。 基本 use App::Rad; App::Rad->run; sub bucho { return "Hello Bucho!"; } たったこれだけで... 続きを読む
perl, linux use Test::Config::System tests => 4; check_package('less', 'package less'); check_package('emacs21', 'emacs uninstalled', 1, 'rpm'); check_link('/etc/alternatives/www-browser', '/usr/bin/w3m'); check_file_contents('Test/Config/Sys... 続きを読む
FreeBSD・OpenBSDと他で ps -e の動作が違ってハマってしまいましたが、Proclet という簡単なsupervisor・プロセス管理モジュールをCPANにあげました。 Proclet - minimalistic Supervisor https://metacpan.org/module/Proclet GrowthForecastでは、growthfore... 続きを読む
A lot has changed in the world of cloud hosting since the last time i took a closer look at one of the providers. Almost all of them support Perl these days, directly or indirectly. One of the most prominent ones is Heroku, and today we are g... 続きを読む
https://github.com/tokuhirom/DBIx-Tracer/https://metacpan.org/release/TOKUHIROM/DBIx-Tracer-0.02/DBIx::QueryLog が便利でよくつかってるんだけど、なんかこう、立てまししまくった家みたいなコードになってて、ハウルの動く城のようになってしまっていて... 続きを読む
perlはsystem perlじゃなくてperlbrewで入れて、アプリで必要なCPANモジュールは全てアプリのディレクトリ下のextlibというディレクトリにインストールする方式は個人的にはいい感じだよなぁと思いつつ、cronとかdaemontoolsがいつもどうやるのが正解なのか分か... 続きを読む
basic streaming(code by chiba-san https://gist.github.com/2785757) use strict; use warnings; my $app = sub { my $env = shift; return sub { my $responder = shift; my $writer = $responder->([ 200, []]); for ( 1..5 ) { $writer->write("hoge"); sl... 続きを読む
AnyEvent を利用する際に注意する必要があることに、コールバック中で発生した例外の処理方法がバックエンドに任されている(=例外処理の方法がバックエンドによってちがう)、というのが挙げられる。 Impl::Perl では例外は単純に rethrow されるため、プログ... 続きを読む
Copyright © 2011 GitHub Inc. All slide content and descriptions are owned by their creators. F.A.Q. Terms of Service Privacy Policy 続きを読む
app.psgi 1 ファイルだけの簡単な PSGI アプリを書くとき、200 やら 302 やら 501 を返すのにいちいち ArrayRef を書いて返すのが面倒なので、モジュールを書いて簡単にできるようにしてみました。 モジュールを use すると HTTP::Status が提供する定数と同じ... 続きを読む
cpanfile is yet another format to declare CPAN dependencies of your Perl application. 続きを読む
Githubのページを開いたら、そこには This is Perl module XXX::XXXX:::XXX. INSTALLATION Install cpanm (App::cpanminus) and then run the following command to install HTML::Pictogram::MobileJp::TypeCast: $ cpanm XXX::XXXX:::XXX ... という説明しか... 続きを読む
Scripting Languages: PHP, Perl, Python, Ruby, Smalltalk a 5-way reference sheet for the hyperpolyglot programmer; there is also a reference sheet for Bash, Tcl, Lua, JavaScript, Io arithmetic and logic | strings | containers | functions | exe... 続きを読む
プロセスを並列に立ち上げて負荷を掛けるようなベンチマークを実行することって、よくありますよね。(例 : クエリキャッシュを切ったほうがいイカ? ベンチマークしてみた - 酒日記 はてな支店)Perl で Parallel::ForkManager を使うとそういう処理も簡単に書け... 続きを読む
Plack アプリで遅延ロードされるモジュールを見る アプリケーションで利用するモジュールは、できる限り先読み(preload)しておきたい。先読みしておけば、アプリケーション全体のメモリ消費が抑えられるし、遅延ロード(Lazy Load)のコストがなくなります。 モジ... 続きを読む
GNU screen 使っているとはいえ開発中に諸々のログを流しておくのにウィンドウ使うのに慣れてなくて、タブ開きまくるならやっぱりブラウザを使いたいってことで、標準入力をブラウザに出してくれるツールを書きました。 motemen/App-htmlcat - GitHub この html... 続きを読む
CPAN形式で開発していると避けて通れないのが依存モジュールの炙り出しと Makefile.PL へ requires を書き出す作業。これは意外と面倒なのでもっと怠惰に楽をしたいところ。たとえモジュールが要求するperlのバージョンを決めていたとしても「どれがコアモジュ... 続きを読む
infrastructure as code automated! repeatable! testable! (no manual steps, checklist, etc.) 続きを読む
どうもnekokakです。みなさんDBIを使っているコードのベンチマークってどうしてますか?SQLのチューニングであればいいのですが、ロジックのベンチマークを取りたい時に実際にdatabaseにクエリなげてしまうと、ネットワーク通信等が発生し、細かいロジックのチ... 続きを読む
As a Futurist… 人の興味は尽きることがない.いや,興味を無くした時点で人で無くなる.永遠の「知りたい」を追求するブログ. Profile Work モダンな感じでperlでウェブアプリ作りたいなーと思ってほげほげしてます。メモ書き。 最近の流行りでは、system pe... 続きを読む
Source program: use v5; use strict; use feature 'say'; package Main; my $where = 'print-result'; my $out = $Document->getElementById($where); $out->{'value'} = "Changing the '$where' box using the 'Document' object\n"; say "hello, World!"; sa... 続きを読む
A frequent pattern when writing database-backed applications with the DBI is to connect to the database and cache the database handle somewhere. A simplified example: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: package MyApp::DB; use... 続きを読む
こちら Yappo の日でございますが、 Yappo の執筆ペースが芳しくないので、本日も社員のオオサワが代打で「DBI」や「ORM」について書かせて頂きたいと思います。 概要 同僚から良くネガティブだなで言われてる事で有名な私が、 ORM を使って複数人開発をする場... 続きを読む
はじめに 忘年会シーズンまっただ中で皆さんは毎日お酒を飲んでいることでしょうが、僕は友達が少ないため忘年会とか全然無いので財布はまだホットな状態なんですが、なぜ僕の妹は小鳩ちゃんじゃないんだっていうかそもそも妹いないしもう死ぬって感じの xaicro... 続きを読む
好きって言葉は最高さーー!!!!kamipoです!!今日はAKB48の紅白対抗歌合戦があるので急いでいきたいと思います!! DBIx::QueryLog で EXPLAIN の結果もロギングしたい xaicron さんの9日目のエントリ、http://perl-users.jp/articles/advent-calendar/2011... 続きを読む
Text::Xslate で HTML 吐くときに human readable に dump する dump 関数に decoded を吐かせると、、 テンプレに渡されるパラメータを、ダンプして確認する機会というのは多いと思うのです。Text::Xsalte にはもちろんビルトインで dump 関数が用意されていま... 続きを読む
はじまりはパクり 最近あんまりコード書いてません、lestrratです。テストを走らせる時にいろんな他のデーモンを立ち上げたり、そのテストのためだけの設定を先にしないといけなかったりとか色々ありますよね。結構長い間Makefile.PLはModule::Installで書いて... 続きを読む
こんにちは、最近 PSP1000 の電池が一瞬で切れてしまってまともにゲームができない xaicron です。さて、みなさんは DBI から吐かれた SQL をみたいなーと思うこともあるでしょう。そんな時は、$ENV{DBI_TRACE} = 2 とかしてみると、ドバーッといっぱいデバッグ... 続きを読む
師走にも関わらず風邪を引いてしましました。こんばんは、zigorou です。今日は DBI のお供になりそうな拙作モジュールたちをご紹介します。 Data::RuledFactory p5-data-ruledfactory で開発中のモジュールです。主要機能は大体出来てるんですが、後はテストを... 続きを読む
タイガー&バニーの、原稿が遅れがちな方、トミールです!今日は DBI へのシュガーシンタックスを追加するラッパー、DBIx::Simple の紹介です。 DBIx::Simple 実は DBI そのものって相当高機能である!、というのはこのアドベントカレンダーでもいろいろ紹介さ... 続きを読む
少し前に、Net::DBus::Skype::Liteというモジュールを書きました。PerlからSkype APIを叩けるのは便利なのですが、不満点がいくつかあります。 LinuxのSkypeにしか対応していない 全体で2200行くらいある(Liteなのに…) 無駄なコードが多すぎる そこで、Net::DB... 続きを読む
どうもkazeburoです。DBIx Trackなのに、DBIxを作らない話。myfinderさんがDBIxを作る第一歩としてDBIのサブクラスの作り方を紹介しましたが、実際にDBIxを作り出す前に、その機能がDBIの標準機能でできないか調べるのがオススメです。 Callbacksの基本 Callbac... 続きを読む
前置き こんにちは。gfx です。みなさん、意識は高まっていますか? 僕は上々です。今回は拙作の Alien::RRDtool というモジュールを紹介いたします。CloudForecastやGrowthForecastを使いたい!と思ったとき、RRDtoolのPerlバインディングであるRRDs.pmをイン... 続きを読む
こんにちは!今年はボクが作ってるDBIx::Handlerというものを紹介してみる。DBIx::HandlerはDBIのラッパーでありDBのコネクション周りの管理に重点を置いたモジュールである。ORMを使わずにDB周りの処理を行いたい場合はこのDBIx::Handlerを使うことをおすすめ... 続きを読む
前置き こんにちは。cho45 です。みなさん、意識は高まっていますか? 僕は上々です。今回は拙作の Config::ENV というモジュールを紹介させて頂きます。アプリケーション開発をするとき、開発用・テスト用・本番用で、設定を変えたいわけですよね。だいたいの... 続きを読む
perl, shell | 23:13 | プロジェクト用のモジュールを extlib とか専用のディレクトリを掘っていると、それを @INC に突っ込まなくてはいけないので、ブートストラップスクリプトで調整したり、開発用に .bashrc や .profile に書くと思いますが、モジュールが... 続きを読む
use 5.12.0; use Text::Xslate; my $xslate = Text::Xslate->new( module => ['Number::Format' => [':subs']], syntax => 'TTerse', ); say $xslate->render_string('[% 100000000 | format_number %]'); こうかな。あるいは my $xslate = Text::Xslate->new( ... 続きを読む
きょうびmakeやgitでも補完が効くなか、perlbrewでも補完が効いてほしいですよね。たとえば私はマシンによってperlbrewで入れたperlはけっこう違っているのですが、どのマシンにどのバージョンのperlを入れたか正確には覚えていません。なのでperlbrew use [tab... 続きを読む
Yokohama.pm #8 行って LT してきた HTTP::UADetector Yokohama.pm #8 に行ってきました。最近、この 日記+Wikiアプリとか paste.la のログ集計などやっているのですが、User-Agent の判別でちょっと困っていたので、その辺をプロジェクト化したく、LTしました... 続きを読む
操作方法 l キー: 次のページへ h キー: 前のページへ j キー: 目次ページへ k キー: 目次ページから戻る 目次ページでは j k キーで一覧を移動し、クリックで選択します 続きを読む
bulknews.typepad.com Tatsuhiko Miyagawa's blog to discuss mostly tech and nerdy stuff. At London Perl Workshop 2011 there were many talks about CPAN modules and dependencies. When people talk about "CPAN dependencies", it usually used to com... 続きを読む
ISUCONのサンプルアプリケーションのフレームワークだったKossyを単独ディストリビューションにして、いくつか機能追加した。ただしテストはないのでアルファクオリティ。 https://github.com/kazeburo/Kossy Plack、Router::Simple、Text::Xslateがベースで、... 続きを読む