Ideas - O'Reilly Media modperlite PHPのようにファイルを置くだけで実行されてCGIより速くてmod_perlより簡単なapache moduleだそうです。去年からのCGI frameworkブームを補完する上でも試してみるっきゃないということでまずはソースの取得 svn co http:…
追記 (2009/01/14): id:asannouさんが直してくださったようで、当方でも正常に動作したのを確認いたしました。あざーっす!初めにお断りさせていただきますが、OpenIDはよくわかってないので勘違いだったらごめんなさい><Net::OpenID::Consumerを使ってmix…
最近これを叩くのが日課になってます。 use strict; use warnings; use Web::Scraper; use WWW::Mechanize; use URI; my $type = 'ponum'; my $cnum = '******'; my $lnum = '******'; my $url = 'https://jpapp1.jp.dell.com/orderstatus/multiple.asp'; my…
というわけで、Text::Hatenaに渡したらHTMLエスケープした上で整形するように継承してみた。 #!/usr/bin/perl use strict; use warnings; { package Text::Hatena::Escaped; use base qw(Text::Hatena); sub text_line { my $class = shift; my $text = shif…
NanoWikiを作ってて思ったんだけど、Wiki SyntaxとHTMLの関係って難しいすな。そもそもフォーム入力 → HTMLエスケープ → HTML変換→HTML出力って感じに処理させるのが全うな考え方だと思うわけです。Text::Markdownの場合、特殊文字(&とかとか)の実態参照変換…
そのまま使っても簡単にCGIが書けるNanoAですが、プラグインを書くとアプリケーションのコード全体的が見通しよくなります。単純なプラグインの例を見ていきます。app/plugin/hello.pm package plugin::hello; use strict; use warnings; use utf8; use base…
http://hidek.sakura.ne.jp/wiki/nanoa.cgi/wiki/mixiで認証してmarkdown syntaxなwikiっぽいもの作った。TODO: ページ削除 validation(え パスワードプロテクト マイミク限定公開 ファイル添付 追記: githubに置きました GitHub - hidek/nanowiki: Wiki pow…
JPerl Advend Calendarで無名スカラーリファレンスネタをやったんだけどさくらとかでFreeBSD6.1で bless \do{""}, "class"; とかやるとModification of a read-only value attemptedとか言って怒られる。 CentOSとかだとだいじょぶなんだけどなー なんでだ?…
最近GitHubを使っているのですが、pushのたびにパスワード入力めんどうだからこのへん見てssh-agentを使ってパスワード入力を省くようにしてました。が、keychainを使えばさらにログイン間で共有できるようになることを今さら知りました。CentOSではrpmforge…
http://d.hatena.ne.jp/yappo/20081209/1228790133id:yappoさんに送ろうと思ったけどマイミクじゃないので送れなかったよ><
事後報告。http://perl-users.jp/articles/advent-calendar/2008/04.html書きました。 さらっと書いたら、あらゆる方面から色んなご指摘が入って大幅加筆させていただきました。 ありがとうございました。で、すでにupされてるけど次はid:hirose31さんで。
Connection => [invoke] method:connect id:1 args:{"pageUrl":"http://hidek.dyndns.tv/red5/publisher.html","audioCodecs":3191,"app":"oflaDemo","videoCodecs":252,"tcUrl":"rtmp:/oflaDemo","swfUrl":"http://hidek.dyndns.tv/red5/publisher.swf","vi…
世間ではShikaとかMouseとかが叫ばれている中、久々にMooseを触ったボクです。 で、すごい勢いでMoose忘れてるのでこんなのさえわかんなくなってました。 { package Base; use Moose; sub foo { warn 'Base'; } } { package RoleA; use Moose::Role; before …
typester氏謹製のPerlのRTMPサーバーKamaitachiに首ったけです。 もともとネットでDJをやるのにShoutcastやらWindows Media Serverやらを渡り歩いて来たので趣味と実益ならぬ、趣味と趣味を兼ねたすばらしい世界です。Kamaitachi-0.05 - perl flash media se…
mod_perlでどのくらいメモリー使われてるかとか調べたかったのでApache2::Statusを使ってみた。 Shibuya.pmのLTにも含めようと思ったけど5分に押し込めるのは無理なのでここで公開。テスト対象としてCGI::Applicationで package HelloWorld; use strict; use…
気が付いたらCentOSについてくるFTPクライアントがncftpからlftpになって、ぶーぶー文句を言いながらも使っていたのですが、今日とある作業でrsyncの使えないレンタルサーバーへのミラーリングで便利な機能を知りました。lftpは-fオプションを渡すとバッチを…
とりあえず、うちの環境でMakefile.PLに書いてなくて必要だったモジュール XML::Atom Log::Dispatch XML::Feed HTML::Scrubber Image::Info Text::Tags::Parser
先週id:kazuhookuさんとかid:yappoさんとかと飲みながら話してた中で出てた話題をおぼろげな記憶の中から掘り起こすてみた。 Perl Web Applicationを簡単に配布したい 極力Pure Perlにすることが求められる mod_perlに頼らないでそこそこのスピードが求めら…
http://soozy.org/index.cgi?HEcon1とってもニッチだけどスピーカーと参加者募集中。
前代未聞のPerl軽量ウェブアプリケーションフレームワーク祭りの中、いかがお過ごしでしょうか?紆余曲折があってこんなことを言ってたわりに何もしてないでぼーっとしている間に、腕に覚えのある兵達が我も我もと手を動かしてくれたので、申し訳なさ半分で…
Mojoの遅さはたいした問題じゃありません - Charsbar::Note現状では全面的におっしゃるとおり。反論する場所はどこにもありません。そもそも、あそこまでの結論だと遅いからダメじゃん的に見えてしまったのは我ながらまずかったと思います。 一応mod_perl or…
仕事の都合上、素のCGIとCGI::ApplicationとCatalystと今話題のMojoでmod_perlなどを使わない素のcgiでベンチとった。結論から言うとCGI下では - Requests per second: バージョン 素のCGI 60.54 [#/sec] (mean) - CGI.pm 19.56 [#/sec] (mean) 3.42 CGI::Ap…
SVKを新しくしたら今まで見たことないエラーが。 $ svk sync //mirror/coderepos Syncing http://svn.coderepos.org/share Retrieving log information from 22645 to 22796 Incomplete data: Delta source ended unexpectedlyそんなときは $ svk sync --ski…
Mojoを使ってみた - Charsbar::Noteを読んで、興味が沸いた。今の会社も結構レガシーな仕組みを使ってるわけで、新しく一からサーバーを立てるようなサービスじゃないと、なかなかCatalystとか使わせてもらえないわけです。そんな場合、どうするかというと素…
QRCode大好きclouderさんがText::QRcodeを作ったのをみたnipotanさんが早速terminal化した物をgyazoにうpしてたので、gazoのコードを見ながら脳内コピペして10分くらいでTerm::QRCodeを作ったので、かっとなってCSSと戦いながらHTML::QRCode作りました。http…
Passenger(mod_passenger)をCentOSにインストールした時のメモ。 apache, apache-devel, ruby, ruby-rdoc, etcなパッケージとrubygemsはインストールしとくこと。Passengerをgemでインストール $ sudo gem install passenger $ sudo passenger-install-apach…
Module::Setup::Flavor::PBPを作るとか言ったばっかりにDamian先生のModule::Starterを久々に見たんだけど、先生ひどいよ! use version; $VERSION = qv('0.0.3'); 当然 use version; our $VERSION = qv('0.0.1'); ですよね。RT何回も上がってるのに二年以上…
下のやつをModule::Setup::Flavor::CatalystStarterとしてcodereposにコミットしました。 module-setup --init --flavor-class=CatalystStarter catalystすると~/.module-setup/flavors/catalystにflavorがインストールされます。 module-setup MyApp cataly…
とりあえずcatalyst.plをまるきりそのままflavor化してみた。http://nopaste.com/p/adxy68cd9インストールはMyCatalyst.pmとかで保存して module-setup --init --flavor-class=+MyCatalyst catalystこれからいらないの削ったり、Schema対応したりする。ちな…
after_setup_template_varsで渡されるtempalte_vars 例えばモジュール名がFoo::Barだったら [% dist %] -> Foo-Bar [% module_path %] -> Foo/Bar [% module %] -> Foo::Bar になる。 いっつもわかんなくなるのでメモ。