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

CakePHP、ちょこっと使ってみるだけのつもりだったんだけど、結構深くつきあってしまった。三つほどCakePHPでサイトつくりました。一つは社内用のウェブアプリケーションで、一つはまだ正式リリース前のものだけど、最後の一個はページビュー5000/日くらいあるサイトで実際に動いてます。ついこの前まで無職だったのに。スゲー。

PHPで素人がつくったサイトは危ないみたいな記事がこの前(というか定期的に)はてブでホッテントリに入ってた(る)けど、セキュリティのこととか分からない初心者こそCakePHPとかでサイトつくった方が楽だし安全だと思った。難しいことはフレームワークがやってくれるので。Bakeすればものの数分でウェブアプリケーションが出来てしまう。もちろんどんなフレームワークにも脆弱性がないわけじゃないだろうから100%安心というわけじゃないけど、少なくとも素人が自分でなんかやるよりも安全だと感じる。

とはいえ、フレームワークで万事オッケーなわけでもなかったりする。ちょこちょこっとカスタマイズするみたいのがフレームワークは難しい。特にCakePHPは規約がすごく重視されるから、データベースへのクエリでちょっと変わったことしようとすると結構難しくなる。というかはまる。サイト内検索をつくろうとして結構苦労した。土台が出来上がるまでは速いんだけど、そこからブラッシュアップさせていくときに結構停滞してしまう。それでも自分で一からつくるよりはかなり迅速に作れるんだけど、規約に縛られるのが窮屈に感じることもないではないですね。

で、タイトルの件なんだけど、真面目にエロサイトを作ってみた【プログラマ編】|ASTRODEO という記事がおもしろかった。はてブで1200以上ブックマークされますが1ゲットは僕です。すごいでしょ。いや僕は全然すごくないですね。書いてある内容がすごい。

確かにエロとかスクレイピングとかまぁきわどい内容ではありますが、僕はCakePHPでこんだけのことをやったということに素直に驚いた。

例えばCakePHPには hasAndBelongsToMany というのがある。ブログ記事があったとして、これが一つのカテゴリーを持つ場合は、 Post テーブルと Category テーブルを結びつけてやるだけでOKなんだけど( Post は一つの Category に所属し、 Category は複数の Post を持つ)、 Tag のような複数持てるし複数に所属する概念のモデルが存在する場合、 hasAndBelongsToMany じゃないとデータの整合性というか組み合わせをきちんと保つことが出来ない。

で、自分はこういうのの組み合わせは手が空いてる人に頼んで人力でやってもらったんだけど、このエロサイトの場合は、動画と動画の関連性の判定をプログラムにやらせてる。150件そこそこのデータの整合性を保つのも大変なのに、10000件とかそれ以上のデータを、しかも自動処理で関連づけるってまじすげーと思った次第です。

エロコンテンツなのに年齢確認がないとか著作権がらみの問題とかスクレイピングでよそのサイトに負荷かけるとかいろいろあるけど、僕は率直にこういうサイトをつくったのはスゲーなと思いました。こんなことまで出来るんだー、っていう素直な驚き。読んでて楽しかったしわくわくした。

今後もCakePHPを使い続ける分からんけど、自分もなんかおもしろいもんつくってみたいなーってすごく触発されました。

蛇足

はてブのコメント欄に「技術的には大したことない」みたいなコメント書いてる人が何人かいるけど、ほんとに大したことないんですかね。データベースを保存用と参照用で分けたり、スクレイピングしてきたデータの保存処理とか結構難しいと思うんだけど。これをすごいって感じるのはピヨピヨプログラマーだけなのかな?

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

劔岳 点の記

評価 : ★★★☆☆

お台場アクアシティ・シネマメディアージュで鑑賞。JCBカード提示で1500円だった。

明治時代、日本陸軍は日本地図を完成させようと、前人未踏と言われる立山の剱岳への登頂を目指していた。そこに三角点を設置して測量を行うのだ。しかし設立されたばかりの民間組織である日本山岳会も剱岳登頂を目指していた。豊富な資金力でヨーロッパ製の近代的な登山装備を誇る山岳会に対して、柴崎芳太郎(浅野忠信)の率いる陸軍測量隊は旧式の装備しか持たない。しかし地元の村で雇った宇治長治郎(香川照之)のガイドで何とか目的を達する。

ネットのレビューでは評判良かったけど、そんなに良い映画だとは思えなかった。確かに映像は素晴らしい。なんか日本を代表するカメラマンの人が監督したらしい。立山から見える富士山の映像とか、夕焼けを雲の上から見るシーンとか、NHKの山ドキュメンタリーにも勝てそうなくらいのハイクオリティ。でも浅野忠信と宮崎あおいのいちゃつきシーンとか必要ないと思うし、そもそも浅野忠信の嫁役は宮崎あおいよりも檀れいの方が良いと思うし、ストーリーの展開がどったんばったんな感じだった。

とにかく生意気な松田龍平がムカついた。浅野忠信は公務員系の役ってどうなのかなって思ってたけど、これからそっち方面の堅めの実直な人物も演じられるようになっていくかも知れない。そこそこマッチしてた。特に人夫の香川照之を立てようとするところとか好印象だった。浅野忠信には戦争映画とかやってもらって、真面目な日本兵役とか演じてもらいたいな。

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

はてなダイアリーとかはカテゴリーごとにフィードを生成してて便利だと思ったので真似してみました。たとえば category.php?k=映画 にアクセスしたら、映画のフィードだけにアクセスできる。もう金輪際、僕のチラシの裏的雑記で精神的苦痛を被ることはありません! =-o 読みたいカテゴリーのフィードを選択して時間を有効活用してください。

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

P_BLOGをわさわさいじって、Tagを付けられるようにしました。いや正確には前からTag付けられるようになってたんだけど、P_BLOGのTagは「CategoryをTagっぽく使う」っていうコンセプトなので、WordPressとか他のブログツールのTagの概念とちょっと違った。もともとP_BLOGにはTagはなくて、SafariStandのhetimaさんのハックを取り入れてCategoryをTag代わりに使えるようになっていたわけでした。

Tagはいっぱい付けといた方がいいとは思うんだけど、いままでTagをいっぱい付けまくったので数が260個ちかくになってしまって、こうなると逆に目当ての情報にたどり着くのが難しくなった。そういうわけでTagとは別にCategoryによって記事を大まかに分類しておくと便利だなーと思って、ちょちょっといじってみました。

データベースの `p_blog_log` テーブルのこれまでTagとして使っていた `category` フィールドを `tag` という名前にしてしまい、新たに `category` フィールドを作ってphpMyAdminでテキトーに記事にカテゴリーを割り振りました。その後P_BLOG本体のカテゴリーにまつわる部分をごにょごにょと改造して、TagとCategoryの機能を明確に分けました。要するにコピペして変数名や関数名を書き換えただけなんですけどね。

P_BLOGの後継プロジェクトのLoggix含め世の中には優れたブログツールが沢山ありますが、「自分で欲しい機能をどんどん拡張できる」のはオレオレ仕様のこのP_BLOGだけなわけでして、もう開発は終了していますがオレオレ仕様でどんどん進化して行っております :-) なんかもう主客転倒で、P_BLOGをいじる片手間でブログ書いてるような感じです :-P

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

最近JavaScriptで遊んでます。まだ初歩的なことしかできないんだけど、IE6でアクセスがあった場合、初回と10回目にアラートを出すことにしました。IE6ユーザーのみなさん、うざいでしょう 8-) はやくあんな前近代的ブラウザは捨ててFirefoxをインストールしましょう。

で、今回やったのがjQueryを使って「もっと読む」をかっこよくするっての。P_BLOGでは記事中に <!-- more --> というタグを挿入すると、以後の部分は index.php や category.php では省略され、パーマリンクをクリックしなければ表示されません。長い記事を書くときはトップページが冗長にならないようにこのタグを挿入してたんですけど、AutoPagerizeで閲覧しているときに「もっと読む」をクリックしていちいちパーマリンクを開くのはかったるい。そういうわけであらかじめ全文読み込んで非表示にしておき、jQueryのshowToggleを使ってかっちょいい効果を付けながら展開したり折りたたんだりできるようにしてみました。

今後はしばらくJavaScriptを勉強してブログをもっとうざい感じにしていこうと思います ;-)

追記

うーん、AutoPagerizeで読み込んだ2ページ目以降ではきちんと動いていないっぽい! :-!

| @散財

 Nokiaの携帯にいろいろアプリケーションをインストールしてて気がつくんですけど、Symbian OS向けのシェアウェアはどれも高いです。平気で$29とかします。iPhoneのApp Storeに慣れてるとぼったくりな感じがする。

お小遣い管理ソフト in App Store

 たとえばお小遣い管理ソフト。App Storeでは無料のものもあるし、中心価格帯も230円から450円ほど。一方で、Nokiaの携帯向けのアプリを紹介しているHandangoを見てみると、安いもので5ドルから。中心価格帯は10ドルから20ドルな感じです。PC/Mac用のシェアウェアの値段を考えてみても、2,000円から4,000円程度が主流でしょうから、App Storeのアプリケーションの値段はかなりお買い得だといえます。

 これは多分、Nokiaやコンピューター向けのシェアウェアは、ダウンロードして2週間くらいお試しできるからでしょう。App Storeではお試しが出来ないので、いきなり2,000円とか3,000円とか強気な価格設定にしてもなかなかダウンロードしてもらえない。それでソフトウェアの価格が安くなってるんじゃないかと思います。

 アプリの値段は安い方がユーザーとしてはうれしいのでiPhoneのApp Storeの方が利用しやすいとは感じますが、果たしてApp Storeの作者の皆さんは採算取れてるんでしょうか。

 TUAWにもこの手の話が載ってて、iPhoneアプリケーションを9.99ドルで売りたいんだったら、お試し用のフリーバージョンを用意した方がいい、って書いてありました。

 経済学で言うところのレモンの市場の原理が働いて、粗悪ソフトしかApp Storeに出回らなくなったら嫌ですね。

| @音楽

 たびたびブログでぼやいている通り、僕の耳は抗がん剤治療の副作用のせいでクソ耳なのですが、iTunesで何とか気持ちよく音楽を聞く方法はないものかとイコライザをいじってみました。↓の画像が僕のイコライザのプリセットをキャプチャしたもの。

クソ耳用イコライザ

 4KHzから16KHzまでをマックスにして、あとはフラットw プリセット設定名は「クソ耳」w

 いや、まさかとは思いましたけど、これで随分音の聞こえ方が変わりました。耳が良かった頃とまでは行かないけど、音がこもった感じのモコモコ感がなくなり、クリアな音質に。高音難聴で苦しんでいる方にオススメです。