rack-legacyを試してみようとしてMacではダメだった件

Ruby, RubyGemsの制限

  • rack-legacy 0.3.0 は本当は RubyGems 1.8 以降対応
    • bin/rack_legacy が Gem::Specification.find_by_name を使っているから
  • rack_legacy コマンドを使えば内部の rack_legacy.ru を使ってくれるので、require とか use とか run とか自分で書く必要なし。アプリのある場所でいきなり叩けば ok
  • Ruby 1.8 でも 1.9 でも動く

PHPの制限

`php-cgi` を呼んでいるので

  • PHP 5 以降1
  • Mac 標準の PHP では動かない(入ってないから)

※ php-cli と php-cgi とバカ正直にバイナリを分けなきゃいけないもんなんだろうか。php-cgi という名前で呼び出されたら CGI 用のモードで動く、とかできそうなもんだけど。

使ってみようとしたんだけど

実は Mac では Apache + mod_php の環境はすぐに動かせるんだけど、

  1. システム全体で Web サーバが動いてる必要は全然ない
  2. PHP のコードを書くときだけ軽く動かせればよい
  3. いちいち VirtualHost の設定とかしたくない
    • 本来そんなもの必要ないはずなんだけど、しておかないと PATH が変わってしまう
  4. システム全体にライブラリを突っ込んでいって汚すのもイヤ

と思ってる。

そこで rack-legacy を使えないかなと思ったんだけど、上の php-cgi で躓いてしまった。他のバージョンは知らないけど少なくとも OSX 10.5 標準の PHP には CGI バイナリは入っていない。それだけをインストールする方法もない。MacPorts などで PHP を丸ごと一式入れ直す方法もなくはないけど、それだったら MAMP 入れたり VM で Linux 入れてしまっても手間的には大して変わらない気がするというか、Linux 入れてしまう方が構成的に最も素直だと思う。どうせ本番環境は Linux なんだから、それに近い方がトラブルは少ない。

実際、入れてあった CentOS 上には php-cgi はあったので、こっちでやった方が楽そうだ。問題は VM を動かすのは「少しも手軽じゃない」ってことだけ。

ということで見送りになってしまった。うーん残念。本格的に受け入れテスト用の環境として使うなら rack-legacy + RSpec よりは Cucumber になるんじゃないかなと思うし、面白いんだけどちょっと使いどころが難しい。

  1. 本物のレガシーをなめちゃいけない 

NIGHT ZOO 行ってきた

NIGHT ZOO で見たキリンとシマウマ

いしかわ動物園で NIGHT ZOO という企画をやっていたので行ってきた。

今回は三脚という新たな武器を手に入れたので喜び勇んで使ってみた。しかしまともに撮れた写真は案外少なかった。そもそもこのデジカメは暗い写真をあまりまともに撮れないんだよなー。

冷静になって考えると、夜行性の動物ってどれだけいるんだろうか。やたら人はいたが、夜ならではの醍醐味はどこにあったのかなぁ。まぁそんなに暑くないっていうのはメリットだし、なんとなくお祭り気分で子どもたちはテンション上がってたけど。

甘く見ていた

実家に帰ったら機械が変わっていた。しかも爆熱Athlonミドルタワー。なんだこの一昔前の漢な構成。っと思ったらどうも仕事で使っていた機械のお下がりらしい。なんだかとてもいやな予感がする。

人がせっかくちょこちょこデジカメで撮り貯めた写真を保存できるように DVD ドライブ買ってやったっつーのに要らねーじゃん。(まぁ目の前の機械はコンボドライブだから CD しか焼けないので交換のメリットはあるのだが。)

  • どうも話が見えないが前の機械から完全に引っ越しが終わってないらしい。
    • ということでいやな予感がしていた前日のうちに LAN ケーブルを買いに電気屋へ1。さすが田舎。10, 15, 30m しかない。1m があったと思ったら無駄に Cat6e のスーパーフラットorz
  • 前の機械に火を入れると起きない。えー。
  • しょうがないので PowerBook で knoppix を作り始める。
  • knoppix 起動失敗。むー。
  • run level 2 で起動。やはり失敗。なんだこれ。なんかビデオのモードが切り替わるタイミングで止まっちゃうみたい。
  • ultimate boot cd も一応落とし始めたのだが、頭にきて古い機械の HDD を引っこ抜いて新しい方へ(ミドルタワーなのでスペースはある)
  • マウントできた。もうこんでいいや。マウンタないけど、動かさなきゃ壊れないだろ。壊れてもどうせ要らない方のディスクだ。
  • 見るとデータは全部あるっぽい。
  • つかアンチウィルスソフトすら入ってねぇ。なんだこの機械。なめんな。

つーことで残りの作業は

  • 例によって Windows Update しまくり(またか)
  • 自動更新ON(ADSL になったので)
  • 明らかに要らないアプリをアンインストール
  • 最近話題になってた AVG 日本語版をインストール
  • IE -> Firefox, OE -> Thunderbird の移行2
  • 筆王のインストール
    • ユーザーが一瞬で分かる「終わっていない」要素は結局これだけだった。誰だ、こんな中途半端な作業しやがったやつは。このド素人が!

以前 sesna というマイナーなメールソフトを使わせていたときのデータをコンバートしてやろうと思ったら Subject をもとに保存してあるメールのファイル名を for i in * で拾うと結構こぼれる。うーん。変換用の Ruby スクリプトそのものは完成したが、ファイルを正しく認識して変換スクリプトに投げることができなければ意味がない。

昼飯。

あーもういい。それは諦める。アドレス帳だけコピペしときゃいいだろ。どうせ過去のメールの大半は削除しながら使ってんだ。(メールの検索がまともに機能してないと溜めても使いにくいだけだしね。)

……。

AdjustPC 入れてくるの忘れたな。つか帰省するのに Windows 2000 セットアップ手順書など持ち歩きゃしませんよ。そら忘れるわ! しかも面倒になったのでせっかく買った DVD ドライブは放置して帰ってきた。もうなんだ。なんだこれ。

  1. 自分の機械をインターネットに繋げながら作業を行うため。また、当然のことだがパソコンショップなんてない。 

  2. あくまでオレ様の目の届く範囲の機械に IE や OE をメインで使わせることはしない。 

正式に出たのね < Apache on Win2k

Windows 2000/XP Professional 上で Apache を稼動させる際のライセンス解釈」(システム管理な雑記)経由

[ 643279 ] Windows XP Professional および Windows 2000 Professional 上で Web サーバーや DNS、ファイアウォールなどのインターネットサーバーサービスを利用することはできますか。

リンクしてる文字列が長すぎて気持ち悪いけどまーそれは置いといて。

とりあえず 2000/XP Pro で Apache を動かす場合は同時10接続までですよ、と。で、DNS や firewall をこれらで構築するのはダメです、と。いうことですな。

とりあえず sage とくってやつですか?

/.-j PHPカンファレンスネタ経由「アンニュイレビュアーの恐怖

なんでこんなとこにたどり着いてたんだという気はするけど。

正直言って「熱くならないのがかっこいい」なんて価値観はかなり古いと思うんだな。なんとなくな田中くんだって今は知事になってすげー熱く DoCoMo に文句言ったりする時代ですよ。

軸がずれてますかそうですか。

で、PHP ですが、少なくともぐちゃぐちゃな Perl にくらべれば他人と共有するものを作るときには敷居の低さもあっていいと思います。Perl よりはきらいじゃないです。正規表現のエンジンが3種類もあってややこしいなぁとか、文字列処理を全部関数の形で書くのはたるいなぁとか、そういう不満はありますがね。

しかし /.-j のコメントは本当に面白くなくなったなぁ。面白いことを書ける人たちはみんな日記や blog でまったりしてるのか。

About

例によって個人のなんちゃらです