Perl
デフォルトで SQLite が利用できるし、たぶん得する人はいないと思うけれど、いろいろな理由で PostgreSQL しか選択肢がなかったので、PostgreSQL でも動くようにちょっと手を加えてみました。 といっても、CREATE TABLE しているところを PostgreSQL に対応…
ちょっとした理由から Google などで使われている 2段階認証を実装してみることに。 Google の 2段階認証の場合はワンタイムパスワードを生成に、以下のスマホアプリを利用することができますので、今回はこのアプリに相乗りする形での実装を目指しました。 …
当然だけれど、定数の畳み込みが発生するのは constant モジュールを利用して宣言した場合のみですね。
ただし 32bit 環境で。
と思ったので、昔つくった Text::Markdown::GFM::Lite というのをちょっと手直ししてみると同時に Minilla を使ってみました。 Text-Markdown-GFM-Lite https://github.com/hatyuki/p5-Text-Markdown-GFM-Lite
たとえば以下のようなプログラムを書いて #!/usr/bin/env perl use strict; use warnings; use feature qw/ say /; use Parallel::ForkManager; use Time::HiRes ( ); my $process = 10; my $pm = Parallel::ForkManager->new($process); for (1..$process) …
Web サイトのレイアウトを考えるときに、placehold.it や placehold.jp とかを使うと こうやって HTML を書くだけで、手軽に指定したサイズの画像が手に入ってすごく便利。 だけど、頻繁にアクセスが必要な場合や、社内のネットワークから出れない、出たくな…
サンプルが見つからないってことは、普通はやらないことをやろうとしているんだと思う。 ということで、以下のようなことをしてみたかったので、試してみました。 Client (JavaScript) 側で RSA 鍵 (秘密鍵・公開鍵) を生成 公開鍵を Server (Perl) に POST …
仕事をしている時、ちょっと QR コードが欲しくなったけれど、手軽に生成できるサイトが見つけられなかったので、HTML5 の練習も含めて作ってみることにしました。 作ったのはこんな感じ。 Zebra http://qr.magicalhat.jp/ github https://github.com/hatyuk…
何をいまさらな話題ですが、文字コードが EUC-JP が主流だった時代に作られた jperl と jcode.pl に依存しているレガシーなシステムをモダンな Perl に書き換える場合には、Encode に加えて Encode::EUCJPMS を使うと簡単でした。 というメモ。 Encode-EUCJP…
ずいぶん前ですが Amon2 が WebSocket に対応したということで、今更感のあるチャットプログラムを書いてみることに。 今更とは言いつつも社内では IRC を使うことができないので、ちょっとしたメッセージがやりとりできるものを作ってみようかなと思い、そ…
OS って 1回セットアップすると、あまり触らなくなるから、すぐ忘れちゃうんだよね。。。 cpanm などで Net::SSLeay をインストールしようとして "openssl/err.h" がないよ!と怒られたとき*1は # aptitude install libssl-dev *1:SSLeay.xs:153:25: fatal e…
なんかすごくグラフを作成したい要件があったので、id:kazeburo さんが開発している GrowthForecast をつかってみました。 GrowthForecast https://github.com/kazeburo/GrowthForecast いつも通りメモだよん。 GrowthForecast を Clone する App::gh *1 を…
すっごい久しぶりに日記を書こうかと。 Apache Killer が騒がれてから、ずいぶん時間も経ったのでちょっと前のネタを投稿。 「うちのサーバも Apache Killer に対処しなきゃね。」 と騒いでいた頃に、検証用のために Apache Killer をダウンロードしてみたん…
節電対応で休日が日・月になった hatyuki です。ということで、明日がおやすみ!「DB から引っ張ってきた 5,000 件くらいの URL が、全部 HTTP Status Code 200 を返してくるか調べたいんだけど。」 という、なさそうでやっぱない依頼をうけたのでささっと書…
どうしても Perl *1 から Subversion を操作する必要があったので、どうやら一般的なモジュールのようなので、以下のモジュールを使ってみることに。 Alien-SVN http://search.cpan.org/~mschwern/Alien-SVN/ と思ったら perlbrew 環境下ではすんなり cpanm …
というわけで、だいぶ前につくってみたものですが、恥ずかしながらアップロードしてみたり。 いろんな機能を使うために、いろいろと遠回りしてたりもします。 Ark-Paste http://github.com/magicalhat/p5-ark-paste Catalyst + DBIC (+ Template-Toolkit) に…
今回のテーマは「IPAとJPAは違う団体です」ということで、IPA と JPA の両者が参加。 ということで、いつも通りてきとうなまとめ。 Perl 6 Language Update (dankogai さん) 大まかには Perl6 も Perl5 もあんまり変わらないよ 構文とかだいぶ違うようにみえ…
最近はもっぱら PHP を書いている magicalhat です。 それでもやっぱり Perl が好き。というわけで、id:gfx さんの新作 Xslate という新しいテンプレートエンジンが登場したとか、それがすごく速いとか、そんなウワサを耳にしたので入門してみることに。 つ…
Twitter では訳あって hatyuki に改名した magicalhat です。 懲りずにまた遠方から参加させていただきましたので、超簡単にメモ。 てゆーか殴り書きれべるだけど。 オープニング Perl いいよね。CPAN いいよね。 Author のキャラクタを垣間見れるのがいい A…
ができたらいいなー。 と思ったので、作ってみました。 DBIx-Skinny-Mixin-UpdateOrCreate http://github.com/magicalhat/p5-dbix-skinny-update_or_create DBIx::Class だと、利用することも多いので Skinny でもあれば便利かな?と思ってみたり。 オマケと…
ほぼ↓のつづき。 DBIx-Skinny-Row の値を JSON で出力したい! http://d.hatena.ne.jp/magicalhat/20100118/1263745674 今度は Iterator クラスを奪ってみました。 結局同じようなやり方でごり押ししました。。。これで以下のようにかくだけで、JSON データ…
otsune さんに ☆ をつけられるたびに泣きそうな magicalhat です。 小さなことですが、大きな励みだったりします。 ありがとうございます><って、なんか気づいたら1月なんですけど。 今年も底辺からがんばっていきたいと思います。よろしくおねがいします…
から始まった、Row クラスをちょっと変わった方法で拡張するお話。 すごく特異なケースだと思いますが。。。 JSON に書き出すときに、できれば Row クラスから直接 my $itr = $model->search('table_name1'); while (my $row = $itr->next) { my $json = $ro…
まず最初に id:nekokak さん、ごめんなさい。 「DBIx::Skinny を使ってみました」 という日記を書くよりも先に「うわー。こんなモジュールが PHP でも使えたらステキだなぁ」と思ったので、勢いで、しかも勝手に (一部だけですが) 移植してみました。 ごめん…
そもそも「Casual Perler」のさらにその手前にいる気がしている magicalhat です。今回の記事は 「CUI アプリケーションを作るときには、App::Cmd というフレームワーク (?) をよく使っています。」 というお話と 「MouseX::App::Cmd が欲しかったので挑戦…
Mouse (0.3? - 0.40) を使っていて 「Moose でできるし、できるんじゃないかなぁ?」 と思ってやってみたけれど、できなかったことを忘れないように書いておこぅ。 なんか、他にもいろいろあった (あるだろう) けれど、随時書き足せたらいいなー。 あ、あと…
Perl で Excel を Parse するときのお約束といえば Spreadsheet-ParseExcel http://search.cpan.org/~jmcnamara/Spreadsheet-ParseExcel-0.54/lib/Spreadsheet/ParseExcel.pm ですよね! というわけで、今回の話題は Perl で Excel を Parse する方法につい…
mala さんのセッション。 今話題の AnyEvent + Coro というだけあって、これまた大盛況でした。はやすぎて & はいれべるすぎて めもしきれなかった。ノンブロッキングにプログラミングしましょう。 ブロッキングする場所があるとそこでブロッキングしてしま…
miyagawa さんによる Remedie セッション。 別の部屋で行われていた naoya さんのセッションも気になったー。 ローカルで動くソフトを作りたい 何を使って書く? 候補はたくさんある VC / C++ / C#。 マルチプラットフォームで動く wxWidgets。 Mac でしか動…