から始まった、Row クラスをちょっと変わった方法で拡張するお話。 すごく特異なケースだと思いますが。。。 JSON に書き出すときに、できれば Row クラスから直接 my $itr = $model->search('table_name1'); while (my $row = $itr->next) { my $json = $ro…
Skinny のベンチマークを筆頭に、役立つ話題g とにかく、すごく楽しかったです。 懇親会は空前のやきみそぶーむ。 id:acotie さんには「人生の山を2つ3つ越えてそう」っていわれました>< さてさて。 今回は縁あって遠路はるばると参加させていただきま…
つかい。。。たい? そもそも bigint が本当に必要なのかを先に考えるべきじゃ。。。 とか思いつつも 「移行元の DB が bigint なんだよ」 というわけで、bigint を使うことに。 あれ?ところで (Rails とかで)、ActiveRecord 使って migration するとき、bi…
ドキュメントまでコピーでほんとごめんなさい。PDOxSkinny を利用するための最小限の雛形は以下のようになります。 Schema Class は存在だけしていれば、スキーマの定義がなくてもある程度動きます。
前回、DBIx::Skinny::SQL を参考にまるコピして、PHP のデータ構造から SQL を生成する SkinnySQL というクラスを作成しましたが、そこから更にがんばってまるコピして DBIx::Skinny の機能をほぼそのまま PHP に移植したクラスを作成しています。 名づけて…
いきなり追記 すばらしいコメントをいただきましたので、そちらも参考にしていただければと思います。 具体的には git reflog で見失ったコミットさんを見つけるんだ!!! - 8時40分が超えられない - subtech http://subtech.g.hatena.ne.jp/secondlife/200…
まず最初に id:nekokak さん、ごめんなさい。 「DBIx::Skinny を使ってみました」 という日記を書くよりも先に「うわー。こんなモジュールが PHP でも使えたらステキだなぁ」と思ったので、勢いで、しかも勝手に (一部だけですが) 移植してみました。 ごめん…
そもそも「Casual Perler」のさらにその手前にいる気がしている magicalhat です。今回の記事は 「CUI アプリケーションを作るときには、App::Cmd というフレームワーク (?) をよく使っています。」 というお話と 「MouseX::App::Cmd が欲しかったので挑戦…
Mouse (0.3? - 0.40) を使っていて 「Moose でできるし、できるんじゃないかなぁ?」 と思ってやってみたけれど、できなかったことを忘れないように書いておこぅ。 なんか、他にもいろいろあった (あるだろう) けれど、随時書き足せたらいいなー。 あ、あと…
「アナタに Mixin されたい」とかタイトル書こうとしたけれど、なんか変な連想されそうだったので却下。 PHP って Ruby と同じで多重継承ができないけれど、Ruby とは違って Mixin の機能がないので、適当に繕ってみようかなー。 という動機で作ってみました…
すぐ忘れるのでメモ。DBD::Pg などをインストールする際に、pg_config がないよといわれたら # aptitude install libpq-dev するといいみたい。
ということで、AppRegistry というクラスを書いてみました。 といっても、これまた Perl の Pixis から拝借しただけ。 Pixis -- Pixis-Registry http://github.com/lestrrat/pixis/blob/master/lib/Pixis/Registry.pm あと、作ってみて?作る前から?分かっ…
久しぶりですが生きています。 gist が貼り付けられるかテストを兼ねて。 内容はすっごく簡単で、Perl の Hash::Rename を PHP にして、実現できないことを切り捨てただけです。 Hash-Rename http://search.cpan.org/~marcel/Hash-Rename-0.01/ これで 'bar…
ソース
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 でしか動…
今回が YAPC 初参加でしたが、参加にあたってはいくつか不安がありました。 もっとも単純な不安は、何の収穫もなく終わること。 そもそも仕事では Perl を使わない、というか「Perl 禁止」のため有休を使うという強行手段にでました。 なので、何としてでも…
弾さんのセッション。 さすがは弾さんってこともあって、超満員でした。 Modern Perl Perl 4 (PHP) は忘れましょう。さすがにまだ使っている人はいないですね。 Perl 5.6 は Encode サポートがないのであまりオススメできない。 それでもメンテナンスはまだ…
Perl は 3D プログラミングの夢をみるか 3D グラフィックスモジュールはあるの? CPAN にある。 Perl から OpenGL を利用するためのモジュール POGL OpenGL クロスプラットフォームな3DグラフィックスAPI対象OS: Mac OS X Leopard でしか確認してないないcpa…
tokuhirom さんのセッション。 これまた大人気のセッションでした。 RDBMS に並行にアクセスしたい。 Webアプリケーションでは、DB へクエリを投げて整形して〜 ということが多い。 何回かクエリを投げる場合、直列の場合は各クエリでブロッキングするのでレ…
エンド ワークス ではなくて エン「デ」ワークスです。 ENgineer DEsign works エンジニア募集中です。 事前に 特別なことをやっているわけではない。 あぁ、標準サイズなんだなぁと実感してもらえれば幸いです。 endeworks での開発 開発サーバは特に用意し…
vkgtaro さんのセッション。 講演者がいない!?というハプニングもありましたが、無事にスタート。 lazy-people 面白そうですね。 lazy-people のプロジェクト lazy は遅延 って意味ではなくて 怠けられる って意味 Form Validateor は CPAN にもたくさん上…
Q4M の開発者でもある kazuho さんのセッション。 RDB の Sharding について。 Sharding するときに問題になるのは非正規化。 Twitter とかで発言があった場合に、全員のとこに発言があったことを書き込む必要がある。 既存手法 eventual consistency 複数の…
yusukebe さんが LT 全部に共通するすばらしいお言葉をおっしゃっていたので、それを借りて。 LT 全部総括してまとめ Yes, we can.
Apache 運用についてのノウハウ。 まとめる側の集中力に問題がでてきた。。。 前提 Linux 2.6.29.x Apacche 2.2X mod_perl 2.0.4 ありがたいお言葉 推測するな。計測すべし。 ざっくり調べる ps top fork は書き込みがあるまで親プロセスと同じページなので…
なんてゆーか PHP に移植してみたい。 むりそうだけど。 PHP って、これ!っていった ORM が本当にない。。。よね? DBIx::Class DBIC 重い DBIC の SQL って微妙 DBIC パフォーマンスを考慮した SQL を投げてくれるわけじゃない 複雑な Perl のデータ構造か…
Angelos ネタ。 以前 WAF を作ったときにすごくお世話になったソースコード。 モダンな WAF の要素 Plagger のような拡張性 WSGI のようなサーバ抽象化 テスタビリティ Rails のようなフルスタック ユーザビリティ 最小構成要素 Engine -> Dispatcher -> Com…
メモメモ。 依存関係などを解決しつつ自動で rpm / deb をつくるツール。 モジュールのインストールに1日かかっちゃったよ! cpan でいれてたら違うバージョンではいっちゃったよ! を解消したい。 既存ツールの問題点 既存ツールは依存関係を完全には解決し…
AnyEvent 面白そう。 というわけで、聞き入っていた。 # ってゆーいいわけ。 EventLoop なモジュールはたくさんある。 でも API はどれも違う。書き方が違い過ぎて、ある EventLoop なプログラムを、他の EventLoop へ移植できない。POE::Compornent には 25…