| @ブログ

昨年末から今年の正月にかけてXREAで借りてたサーバーが障害に見舞われてデータがぶっ飛んだけど、なんと今週、DreamHostでも障害が発生してサーバー(budapest)が落ち、データがぶっ飛んだ。

Jekyllでやってるパソコンブログの方はGitとJekyllの組み合わせのデプロイ環境が最強すぎて一瞬で再開できたんだけど、 www.portalshit.net は正直結構大変だろうなぁと思ってた。ところがサーバーが復旧した翌日くらいにはちゃんとDreamHost側でとってたバックアップがコピーされ、自分では何もすることなくサイトが復旧してた。しかも、サーバー復旧後、一旦ユーザーディレクトリは空になってたので自分でドットファイルと tech.portalshit.net だけ再アップロードしといたんだけど、そちらはこちらでアップロードしたものが残され、 www.portalshit.net と cinema.portalshit.net の内容だけがバックアップからコピーされてた。DreamHost、やるやないけ。障害報告ページでいきなり「こちらにデータの復旧義務はない」とか高らかに宣言してるXREAとは大違い。

まじでDreamHostはSSHできるしPassenger使えるし、今回みたいな障害のときも頑張って復旧してくれるし、Railsっ子にも安心してご利用いただけます。商売には向かないと思うけどね。オヌヌメ。

| @映画/ドラマ/テレビ

ザ・ウォーカー

評価 : ★★★★☆

あらすじ

核戦争後の未来の話。世界は荒廃し、荒くれ者が容赦なく弱者から奪うまるで北斗の拳のよう。水が圧倒的に枯渇しているため、水のありかを知るものが権力を握る。

主人公のウォーカーは廃墟と化したアメリカ大陸をひたすら西へと歩いていた。水を独占するやくざカーネギーの支配する街に立ち寄ったウォーカーは、バーでカーネギーの部下と乱闘騒ぎを起こし、あっという間にやっつけてしまう。その強さと物怖じしない性格を気に入ったカーネギーはウォーカーを部下にしようとするが、ウォーカーはそれを拒む。しかしウォーカーがカーネギーが長年探し求めていた物を持っていることを知ると、カーネギーは力尽くでそれを手に入れようとする。

感想

見たい映画の時間に間に合わなくてしょうがなく見た映画でしたが、大変楽しかったです。

まず冒頭からして楽しい。いきなりナウシカ的な死の灰の様なものが降り積もる森で、ウォーカーが猫が突然変異したような変ちくりんな外観の動物を弓で狩る。そんでその後廃屋に入っていって寝床を確保し、孤独かあるいは空腹に耐えかねて自殺した前の住民の首つり死体から靴をはぎとって履く。このシーンのデンゼル・ワシントンの表情がいい。新しい靴の履き心地をえらく気に入り、とてもいい笑顔を見せる。夜になってたき火をたき、解体した猫を焼く。核戦争の猛火をくぐり抜けたケンタッキーのお手ふきで体をふき、猫の肉を食べ、タッチホイール式の第三世代iPodでやたら渋いソウルを聴く。なんかこれだけで涙出てきそうになる。

とにかくこの映画は最初の30分くらいが面白くて、その後も路上で助けを求める女がいたが実はそれは罠で、チェーンソーを持った危ない男達が出てきてバトルになる。デンゼル・ワシントンは新しい靴を得たことで喜んでいたときとはまったく別人となり、恐ろしく切れ味の鋭いナイフで盗賊の腕を切り落としたりする。超バイオレンス。僕はあんまり暴力物とかアクション映画は見ないのですが、たまに見ると楽しめますね。

全体的には極限状況での人間の行いと聖書がこの映画のテーマです。男達は隙あらば女をレイプしようとする存在として描かれている。カーネギーの部下達は旅行者の夫婦を見つけるやいきなり夫の方を殺して妻をレイプし、所持品を奪って妻も殺す。非常にすさんだ世界なわけです。その世界を正すのが聖書だという筋書き。しかし聖書のために戦争が起こったと考えた人類は片っ端から現存する聖書を燃やしてしまった。ウォーカーはその聖書の最後の一冊を持っていて、それを西へ届けようとするわけです。またカーネギーは聖書さえあれば人々の人心を掌握することができると信じており、字も読めない部下達に血眼になって聖書を探させる。

聖書に書かれている内容は人類愛とか平和的なものなはずなのに、ウォーカーは聖書を守るためとはいえ、襲いかかる盗賊達を無慈悲に殺していく。腕をナイフでちょんぎったりとかね。またカーネギーも世界を完全に制覇するために暴力を駆使して聖書を手に入れようとする。バカで欲望丸出しな民衆を聖書の力で大人しくさせようと考えている。どっちもどっちだなという面もなくはないかなと思いました。

蛇足だけど、金物屋の親父役で出てくるトム・ウェイツが良い味出してました。ケンタッキーフライドチキンのおしぼりと交換でバッテリーを充電してあげたりするの。シネコンで上映された派手なアクション映画だけど、細部に小細工が聞いていて映画好きの人にも楽しめる佳作だと思いました。

| @WWW

ちょっと前の本だけど、『Webを支える技術』をいま読んでます。

HTTPの話とか、毎日使ってる技術のことを知らなくて、いちいち感動しながら読んでるんですけど、中でも興味深かったのがURIの話。56ページの、「URIはリソースの名前だから名詞であるべき」というくだり。バージョン 2.0以前のRailsでは、

http://example.jp/sample/people/show/123

みたいなURIがデフォだったそう。しかしRails 2.0以降は

http://example.jp/sample/people/123

となって、動詞 show が省かれるようになった。HTTP通信で動詞を表すのはHTTPメソッドだから、URI自体が動詞を含むのはおかしいということらしい。ちなみにこのとき、名詞であるURIにアクセスするためのHTTPメソッドは GET ですね。

確かに自分が作っているサイトでもRailsで動かしてるものは、動詞を含まない名詞だけで表現されたURIを表示する。しかしながらCakePHPは

http://example.jp/sample/people/view/123

みたいなのがデフォだ。クールじゃない。というわけでURIから view を省くようにルーティングの処理を書き換え、各クラスのコントローラーも書き換えといた。

この『Webを支える技術』、プログラミングの話とかは載ってないから読んでいきなり何かの役に立つというタイプの本ではないけど、Web制作者なら職種にかかわらず読んどいた方が良さそうな本だなーと思いました。

| @技術/プログラミング

シャレオツプログラマーはみんなMacPortsからHomebrewに移行しつつあるっぽいので、真似してみることにした。

なんでHomebrew?

そもそもなんでみんな移行するのか? なんかMacPortsはバッドノウハウの塊らしい。

MacPortsの何がバッドノウハウなのかちょっとよく分からなかったんだけど、でもよく考えてみたらMacPortsは .bash_profile とか .zshrc とかにへんてこりんなパスを埋め込まないといけないし、PerlとかRubyは一行目に

#!/usr/bin/perl

とか

#!/usr/bin/env ruby

とか書くのに使ってるバイナリ本体は /opt/local/bin/ にあるとかは気持ち悪いっちゃ気持ち悪い。

HomebrewはLinuxのパッケージ管理ソフトみたいに /usr/local/bin/ とかに何でもインストールするので精神衛生上ベターだ。

Homebrewのインストール自体はとても簡単。パッケージ管理スクリプトをRubyで書くってのも、UNIXのことよく分かってない僕にはなかなかよいかもしれない。詳しいことは公式Wikiとかを見て下さい。

Vimのインストールではまった

Homebrew自体は簡単に入った。試しにVimをAppleがコンパイルしたVersion 7.2のものから新しめの7.3に上げて、ついでにRubyオプション入りでコンパイルしたかったので

$ brew install vim

してみた。しかしながら

Error: No available formula for vim

と出た。GUI版のMacVimはFormulaパッケージがあるらしいけど、フツーのVimはないらしい。「えー、自分でFormulaファイルを書かなきゃいけないの〜?」って感じだったんだけど、GitHubでテケトーに検索したらいろいろ出てきたので、 /usr/local/Library/Formula/vim.rb を作ってコピペした。

そんで今度は意気揚々と

$ brew install vim

してみたんだけど、なんとmakeに失敗する。Python.frameworkを参照してるときにエラーが出てるっぽい。

ld: warning: in /Library/Frameworks//Python.framework/Python, missing required architecture x86\_64 in file

Appleが配布したのではないPythonを使ってるとこういうエラーが出るとかなんとか外人が言ってる。

要するに64bit版のPython.frameworkを入れれば良さそうだった。何も考えずにHomebrewで brew install Python とかやって /usr/local/bin/python に新しいPythonを入れてみたりしたんだけど、これは意味なかったっぽい。大人しくPython公式サイトからPython 2.7のインストーラーパッケージをダウンロードしてきてGUIでインストールした。

その後、もう一度 brew install vim をしてみたところ、無事make完了。vim --version |grep ruby

+ruby

となった。

まだApacheとかRubyGemsとかはMacPorts版を使っているけど、割と早い段階でHomebrewに移行して、シャレオツプログラマーの仲間入りをしようと思います。

| @雑談

最近車の調子が悪く、お金は全然持ってないけど「新しいPOLOいいよなー」とか思ってYouTubeでPOLOの動画見てたらこんなの発見した。

</param></param></param></embed>

1950年代のアメリカにPOLOがタイムスリップしたら、というストーリー。勝手に翻訳してみます。


不良連中行きつけの喫茶店の前に赤色のニューPOLOが駐まってる。

男A: 「ダセェ」

男B: 「レッド!」

店内に入るとカウンターに現代からタイムスリップしてきたとおぼしきなよっとした男が座ってる。

男A: 「おいお前、外に駐まってる赤いブツは何だ?」

ナヨ男: 「あたらしいPOLOだよ。」

男A: 「POLOォ?」

ナヨ男: 「かっこいいだろ?」

男A: 「かっこいいィ?」

不良一同爆笑

男A: 「思い知らせてやる必要がありそうだな」(ここの訳適当)


で、結末はご覧の通りです。

ちなみにPOLOはアメリカでは売ってないので、このCMはヨーロッパとかオセアニア向けということになりますね。1950年代のアメリカ人がアホっぽく描かれてて興味深いです。

| @映画/ドラマ/テレビ

ルドandクルシ

評価 : ★☆☆☆☆

あらすじ

ルド(ディエゴ・ルナ)とクルシ(ガエル・ガルシア・ベルナル)の兄弟はメキシコの田舎町のバナナ農園で働いているが、一緒に暮らしている母親の再婚相手の男はむかつくし、仕事はつまらないし、人生一発逆転してやりたいと思っていた。二人はアマチュアのサッカー選手で、たまたま街で車が立ち往生したスカウトのバトゥータの目にとまり、プロサッカー選手としてメキシコシティに出ていくことになった。果たして二人は一発逆転できるのか?

感想

アルフォンソ・キュアロンの弟カルロス・キュアロンが監督で、アルフォンソも制作に関与しており、さらにガエル・ガルシア・ベルナル、ディエゴ・ルナの組み合わせという、『天国の口、終りの楽園。』のキャストが再結成して制作された機動戦士ガンダム 逆襲のシャアのような作品。期待して見に行ったんだけど、「そんなのありなの?」ってくらいつまらなかった。メキシコのオールスターが集まって作られてる映画なのに、熊本のDenkikanでは一週間しか上映されなかったのが不思議だったけど、実際に見てみて「これはお客さん入らないわ」と思いました。

ルドとクルシはそれぞれ父親が異なり、母親はさらにその後離婚して別の男と暮らしている。複雑な家庭なのだ。しかしルドもクルシも、直接会ったことはないそれぞれの父親のことを誇りに思っている。ことあるごとに「俺の親父は…」と言う。このあたりがガキっぽい。

そもそもルドもクルシも年齢不相応に夢見がちな少年として登場する。ルドは妻子がいるのに人生一発逆転したい一心で家族に黙ってメキシコシティに出て行くし、クルシはサッカー選手はどうでもよくて、本当はミュージシャンになりたと思っていて、そのための足掛かり作りのためにサッカーをする。この辺の感覚がよくわからない。

そんな軟派なノリじゃサッカー選手として大成しないだろ、と思うんだけど、映画では二人とも大活躍して、クルシはメキシコ代表として招集されたりする。さすがにこれはやり過ぎだろ思った。

クルシは念願かなってレコードデビューを果たし、カウボーイの格好して歌をうたうのだが、このシーンはまるでインドの映画を見ているみたいで異様なテンションに正直引いてしまった。ひょっとするとメキシコ人は特殊な感性を持っている人たちなのかも知れない。

ただ、ルドの嫁さんがネットワークビジネスにはまったり、ルドがギャンブルと麻薬におぼれたり、クルシが悪い女に騙されたり、兄弟の妹がマフィアと結婚したりするところが、メキシコ社会の暗い部分を描いているのかなと感じた。なんでそうなるんだよ、みんなもうちょっとしっかりしろよ、と自分はしっかりしてないくせに思いました。

そういうわけでして、ガエル・ガルシア・ベルナルが出てるからと期待して見に行っても期待を裏切られることになりますのでご注意あれ。

| @技術/プログラミング

やってみた。以下を参考にした。

これもうむかし.macとかについてたiBlogとかわらんわ。GUIのクライアントはないけど、VimとかCodaとか好きなエディタ(TextMateで日本語がネイティブに扱えたらなー)で記事書いて、gitで git push するだけ。

で、やり方なんですけどちょっとgitに慣れてない人には複雑かもしれない。三つgitのリポジトリを用意する必要がある。

まず記事を作成するパソコンでgitとjekyllのセットアップをしたあと、リポジトリを作る(リポジトリ1)。その後Dreamhostの公開ディレクトリでないところに空のリポジトリを作る( git --bare init )。ここでは blog.git という名前にしましょう(リポジトリ2)。そんでそこにリポジトリ1をpushする。その後リポジトリ2の /blog.git/hooks/post-update というファイルを作り、以下のように書く。ファイルに実行可能なアクセス権を与えることを忘れずに。

#! /bin/sh
unset GIT_DIR && cd $HOME/tech.portalshit.net/ && git pull

そんでもって git clone blog.git <公開用のディレクトリ名> する(リポジトリ3)。リポジトリ1から公開用ディレクトリにリポジトリがコピーされるので、この中に含まれる _site というディレクトリを panel.dreamhost.com で公開ディレクトリとして設定すると、git push する度にhookが発動されて、めでたく記事が公開されるという次第です。

まとめ

まとめると、

  1. 記事を作成するローカルリポジトリ
  2. ローカルリポジトリをpushするリモートリポジトリ
  3. リモートリポジトリをcloneする公開用リポジトリ

の三つが必要なことを忘れないようにしてくだしあ。

これであなたもハイド博士だ!