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

PHPでTest::MoreするならLimeを使おう

「自分のメイン言語はPerlだけど、会社ではPHP使ってる。PHPでもTest::Moreみたいにテストしたい」という人は結構いるんじゃないかと思います。「php test::more」でググると出てくるのはここ。 Test::MoreのPHP版 : cotalog 紹介されているtest-more.phpは…

AdobeCS4をHDDから直接インストールする方法

Studio8からアップデートは最後のチャンスということでAdobe CS4 Web Premiumアップグレード版を買ってきました。Photoshop7, Illustrator10, studio8から一気に5世代もバージョンアップですよ。最初の頃の情報だと、CS3より古いバージョンからのアップグレ…

CentOS5.0+Xenで4GB以上のメモリを認識しない時の対処法

皆大好きHPの激安サーバML115にUMAXのDDR2-800 2GB 2枚組を2セットぶち込んで、合計8GBにしてみました。アキバのソフマップで1セット3,980円。何気に価格.comの最安値よりも安いじゃない。BIOSではあっさり8GB認識したけど、OSが起動したら3.5GBしか認識して…

PEAR::Pagerを使うとautoloadが走ってしまう件

php

最近のよく訓練されたPHPerはフレームワークに組み込みの機能を使ったりするんだろうけど、そういう波に乗れていない僕は未だにPEAR::Pager使ったりします。今日はそんなPEAR::Pagerの小ネタ。PEAR::Pagerを使う時は、 'Sliding' ) ); みたいにmodeで表示タ…

CSS Niteの「Shift2」に行ってきた

というわけで、行ってきました。CSS Niteのイベントに参加するのは2年ぶり、2回目。 http://cssnite.jp/shift/shift2009/ 会場は御茶ノ水にあるデジハリ。まさかデジハリの敷居をまたぐ日が来るとは思わんかった。会場はこんな感じ。準備中にBGMが流れてると…

CSS Niteの「Shift2」に行ってきます

普段とちょっと違う毛色のコミュティもいいよね、というわけで明日はCSS Nite主催のイベントに行くことにしました。 http://cssnite.jp/shift/shift2009/ CSSの情報を積極的に追わなくなったのは、IE7が発表された頃かな。あまりの中途半端さと、普及にかか…

楽天テクノロジーカンファレンスに行ってきた

一週間も経ってすっかり時期を逃した感があるけど、書かないよりはいいだろうということでエントリ。当日のタイムスケジュールとかが公式にアナウンスされてなかった(はず)なので、よしおかさんのところを参照。 ユメのチカラ: 楽天テクノロジーカンファレ…

Yokohama.pm #3 に行ってきた

去る11月28日、Perl系のイベントでは初参加となるYokohama.pmにお邪魔してきました。最初は「京都→自宅→横浜」のルートを考えてたけど、移動が無駄になるので「京都→横浜」と直行することに。荷物は気合いで。18時開始で会場までJRの駅から5分と書いてあった…

Shibuya.pm京都サテライトとYokohama.pmと楽天テクノロジーカンファレンスに行ってきた

普段ずっと家にいる引きこもりには、体力的にハードな週でした。 26日 京都出張 27日 出張2日目 → Shibuya.pm #10 京都サテライト 28日 京都発 → Yokohama.pm #3 29日 楽天テクノロジーカンファレンス まとめて書こうかと思ったけど、長くなるのでやっぱり分…

新はてブAPIが返すJSONをJavaScriptで文字化けせずに読む方法

※11/29追記:どうやら直ったようなので、この対策はもう必要ありません。鳴り物入りでリリースされた新はてなブックマーク。当初はJSON取得APIが「HASH (0x〜〜)」を返すという斬新な仕様変更がありましたが、現在は一応JSONが返ってくるようになりました。…

Shibuya.pm#10 京都サテライト in はてな 行きます

Shibuya Perl Mongersテクニカルトーク#10 京都サテライト開場のご案内 - antipop 明日・明後日と京都に仕事で行くので、帰宅を1日伸ばしてはてなオフィスにお邪魔することにしました。東京に戻るのを早めて現地参加しようと思ったら、あり得ない速さで申し…

Template::Plugin::Hatenaがメモリリークしてる件

FastCGIプロセスがえらくメモリを食ってるのでおかしいなと思ったら、だんだん育ってる。ペロ… これはメモリリーク!怪しい部分は最初から察しがついていたので、ところどころコメントアウトしてabで大量のリクエストを送り込んで、メモリ消費量を見るという…

PHPの思想と言語表現

先日の 第3回PHP懇親会に行ってきた で「PHPで書くとシンタックスが長ったらしくて嫌だ」ということを書いたら、いくつかフィードバックがあったので乗ってみる。Perlの「$hoge =~ s/^Hoge/Fuga/」という書き方に対して、PHPの「$hoge = preg_replace('/^Hog…

「セキュリティ対策」って言葉はおかしいよね

etc

ワンタイムトークンをハッシュ関数で処理する意味はある? | 水無月ばけらのえび日記 ※あと、どうでも良いのですが「セキュリティ対策」という言葉自体に違和感があります。セキュリティに対抗してそれを破るという話ではなく、セキュリティを高めるための話…

HHKの日本語配列版が出てた

etc

「かな入力だからHHKは使えない」と言い続けてきた僕には嬉しい知らせ。 Happy Hacking Keyboard | HHKB Professional JP | PFU いつの間にやらこんなものがラインナップに加わっていました。カーソルキーも付いてるから、id:cocoitiさんも安心してLiteから…

第3回PHP懇親会に行ってきた

第2回だと思ってたら、第3回だった! 前に参加したのは第1回? 第2回?というわけで、第3回PHP懇親会に行ってきました。会場はPHP懇親会と言えばここ。新宿の手造りダイニング「ファンデリ」さん。店の場所(特に入り口)がちょっと分かりにくいから、地図と…

PEAR::HTTP_Requestで「item=a&item=b&item=c」なURLを扱う

PHP

久々にPHP関連のエントリ。最近、フロントエンドのテンプレートをPHPで組んで、そこからバックエンドのPerl(Catalyst)の内部APIを叩く、みたいなことをしてます。複数選択可能なチェックボックスの扱いでつまづいたのでメモ。 ■結論 PEAR::HTTP_Requestで…

動画で知るClass::C3とNEXTの違い

CatalystとかDBICを理解しようとすると頻繁に出てくるClass::C3。継承ツリーをどうにかするものらしいけど、挙動を把握するのは難しそうだなーという印象でした。「CatalystもそのうちNEXTからClass::C3ベースに変わるし」なんて話題が出ても、そもそもどっ…

DBICにfindByほげほげ生やしたけどCatalystでコケた

先日の「Sub::AutoでDBICにfindByほげほげを生やしてみた」が予想外に大きな反響で嬉しい反面、若干のとまどいも感じる今日この頃です。で、そいつを喜び勇んでCatalystアプリに組み込んだら、 (in cleanup) Can't locate object method "DESTROY" via packa…

さくらの専用サーバはcrontabの時間をズラしてあるみたい

今、さくらで専用サーバの一番安いエントリープランを2台借りてます。OSはCentOS5.2。2台目は追加したばかりなんだけど、3時過ぎにlogwatchメールが飛んできてびっくり。それぞれの/etc/crontabを見ると、 SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/b…

daemontoolsとかdjbdnsをRPMで入れる

bindより設定が分かりやすいのが気に入ってdjbdnsを使ってます。毎度毎度ビルドするのも効率悪いし、かと言ってyumに入るようなことはないので、RPMを拾ってきて環境整えます。そのへんの設定メモ。もちろん環境によって設定値は異なるので、そのへんは読み…

Sub::AutoでDBICにfindByほげほげを生やしてみた

Sub::AutoでAUTOLOADを隠蔽 - dann@webdev - dann's portal が面白そうだったのでDBIC::ResultSetにfindBy〜を生やしてみた。perldoc見ても$selfがどこに入ってくるのか分からんかったけど、@_に関数名のマッチが入って、その次に来るみたい。 #!/usr/bin/pe…

別にGoogleは「静的URLに変換することはかえってマイナスになると、指針を180度転換」したわけじゃない

グーグル、動的URLはそのまま、静的URLへ書き換えすべきでない ≫ 海外SEO情報ブログ・メルマガ SEOとか普段はスルーするネタなんだけど、内容がわりと刺激的だったのでひっかかった。このエントリでは、 これまでのGoogle SEOを大きく覆すようなアナウンスが…

Dreamweaverのテンプレート 〜 3:「head」と名付けた編集可能領域の挙動が怪しい件 〜

Dreamweaver(以下DW)のテンプレートで、編集領域に「head」という名前を付けると何だか怪しい挙動をするみたいです。検証したのはDreamweaver8。テンプレートをネストさせると、特定の条件でアホになるみたい。なお、エントリのパーマリンクからお越しの皆…

Dreamweaverのテンプレート 〜 2:ネストしたテンプレート 〜

Dreamweaver(以下DW)では、テンプレートを基にさらにテンプレートを作る、といったネスト構造を持たせることが可能です。「基本テンプレート → ヘッダフッタを入れたテンプレート → 各ページ」のような作りにしておくと融通が利きそうですね。今回は、テン…

Dreamweaverのテンプレート 〜 1:テンプレートの基本構造 〜

仕事の都合でDreamweaver(以下DW)のテンプレートを用意することになりました。個人的には好きじゃないけど、その方が仕事がうまく回るなら使った方がいいに決まってる。どうせならテンプレートの仕様を覚えて自分でちゃんと制御した方がいいよね、というこ…

続・DBICが発行するSQLのテーブル名をクォートさせたい

DBICが発行するSQLのテーブル名をクォートさせたい を書いたら、hide-Kさんがトラバくれて解決策を提示してくれた。しかも、id:miyagawaさんからもブクマコメントで同様のアドバイスが。 Re:DBICが発行するSQLのテーブル名をクォートさせたい - はてな#hide-…

DBICが発行するSQLのテーブル名をクォートさせたい

※解決しました。フォローエントリ → 続・DBICが発行するSQLのテーブル名をクォートさせたいhoges, conditionsというテーブルがあって、hoges_conditionsを中間テーブルとしてmany_to_manyの関係を持たせた時にハマった。 create table `hoges_conditions` ( …

レンズ買った

D70購入から早4年。実は今までアナログ用の28-300mmとかいう「画質何それ食えるの?」というレンズを使ってる残念な子でした。当時はまだデジタル用に設計されたレンズなんて、手の届く範囲ではほとんどなくて、特に高倍率ズームなんて候補が無かった。で、…

「パネラー」と「パネリスト」

etc

どっちが正しいのか、よく分からなかったのでググってみた。 パネラー - Wikipedia パネラー(和製英語:paneler) panelist,panellist(パネリスト)の誤用が定着したもの。 「パネラー」は和製英語だったのか。確かに耳当たりはいいように思うので、定着す…