昨日、チャリでコケて前輪が曲がった。

なるしま2号店に見せにいくと「応急処置はできるけど結局交換することになる」と言われたので交換することに。

2時間ぐらいかかるというのでそこら辺で時間潰してくるって言ったらチャリ(GIANTのMR-4)を貸してくれました。

MR4

ぐぁカッコいい…。

まて、これは欲しくさせていろいろ買わせる敵の罠だ! いや、しかし…。

PHP: 日付・時刻関数 – Manual

定義済み定数

以下の定数は PHP 5.1.1 以降で定義されており、標準的な日付の書式を表します。 日付フォーマット関数(date() など)で使用します。

DATE_ATOM (string) Atom (例: 2005-08-15T15:52:01 00:00)

DATE_COOKIE (string) HTTP クッキー (例: Mon, 15 Aug 2005 15:52:01 UTC)

DATE_ISO8601 (string) ISO-8601 (例: 2005-08-15T15:52:01 0000)

DATE_RFC822 (string) RSS (Mon, 15 Aug 2005 15:52:01 UTC)

DATE_W3C (string) World Wide Web コンソーシアム (例: 2005-08-15T15:52:01 00:00)

PHP5.1.1から時間マニアにはたまらない定数がたくさん追加されてる。

おかげで、

echo date(DATE_RFC822)

みたいに仕様名で書けて後から見てもわかりやすいコードがPEAR Dateを使わなくても出せるのが嬉しいです。 おれ的にはフィード関係を見てることもあって、DATE_ATOM, DATE_W3C辺りがこたえられません。(異常者)

しかし、PHP4の出番もまだまだ多いのでがっかり…と見せかけてPEAR PHP_CompatのCVSにはしっかり/Constant/DATE.phpが!!!

flickrss

ちょっとFlickrのRSSをユーザー名から取る必要があったのでいちいち作りました。

p0t::Flickrss

そんなんありそうだけどちょっと探して無かったので頭に来て作りました。 最初、切なくなる程遅かったんだけどphpFilckrはファイルにキャッシュできるそうなのでそれ使ったら速くなった。(時間+9されてないのは後で直す!)

ついでに以前作ったjsのFeed Parerもデモった。 (Descriptionが[Object]になってるのはごかんべんを!)

もっとアプリをカッとなってすぐ作ってしまえるように訓練したい。(結構時間がかかった)

% php -r '::';
Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in Command line code on line 1

ってやると出るエラー。

PAAMAYIM_NEKUDOTAYIMってなに???

ぱあまいむねくどたいむ?ってなんだよっっ!

通るかっ!そんなもんっ!(カイジ)

…しかしっ、おれにはわかるぞ!偶然だが知っているぞ!

PHP: スコープ定義演算子 (::) – Manual

スコープ定義演算子 (Paamayim Nekudotayimとも呼ばれます)または より簡潔にダブルコロンはトークンで、 static, 定数および オーバーライドされたクラスのメンバやメソッドにアクセスすることができます。

これらの要素をクラス定義の外から参照する際には、 クラスの名前を使用してください。

Paamayim Nekudotayim は、まず、ダブルコロンの名前としては、奇妙に 思えるでしょう。しかし、Zend Engine 0.5 (PHP 3のエンジン)を 書いている時に、Zendチームはこう呼ぶと決めたのです。 これは、実際には、ヘブライ語でダブルコロンのことなのです!

「ふ・・・・・・ふざけるなっ・・・・・・!てめえっ・・・・・・・!」

「んなこと通るかっ・・・・・・・!変更するなら・・・・・・すぐ変更しろっ・・・・・・・!汚ねえぞ・・・・・・っ!」

「許せるかっ・・・・・!許せるかよっ・・・・・!そんなペテンっ・・・・・!」

safari-google

Safariでデザイン確認…はいいんだけどJSのデバッグはMac持ってないと無理…?

みんなどうしてんの?

mojavijapan

Mojavi本家がトンでるからよく考えたらソース自体が入手不能なんですよね。 ちょっとメール(というかmixiのメッセージ)頂いたのでMojaviJapanの方に分かり易く、2系・3系・4系のソースを置いておきました。

PEAR :: PEPr :: Details :: CAPTCHA

Description This package generates audio CAPTCHAs.

A CAPTCHA (see http://en.wikipedia.org/wiki/CAPTCHA) is a turing test to decide if a real person is accessing some resource and is typically a distorted image of some text. This package creates audio CAPTCHAS to help those who have difficulty reading this distorted text.

This package joins up multiple wav file recordings of individual letters/numbers being spoken, optionally adding distortion, creating an audio CAPTCHA.

proposalにAudio::CAPTCHAだって。へぇー。 たしかにTextのCAPTCHAってコンピューターと一緒に視覚障害者もブロックしちゃってたわけだ。

元気、OKEのオンライン公開機能を搭載した新作、PSP「カルネージハート ポータブル」

 元気株式会社は、PSP用思考設計型ロボット対戦シミュレーション「カルネージハート ポータブル (Carnage Heart Portable)」を2006年夏発売する。価格は5,040円。CEROレーティングは「A(全年齢対象)」。

 PSP用「カルネージハート ポータブル」は、’95年に株式会社アートディンクが発売した「カルネージハート」シリーズの最新作。’98年に「ゼウス – カルネージハートセカンド」が発売されて以来、7年ぶりの新作登場となる。制作はアートディンクで、「カルネージハート」のスタッフが手がける。戦闘用ロボット「OKE (Over Kill Engine)」のデザインは、今作も横山宏氏が担当している。

な、なんだってーーー!!!(こればっかり)

carnage_heart1

なんのことだかわからないペケボーイどもに説明すると、カルネージハートシリーズとは大戦略風ロボットシミュレーションと見せかけてゲーム時間の大半はロボットの動作プログラム作成に費されるというハリウッド映画のようなカタルシスとは程遠い室内系男子のマストゲームだ。

carnage_heart2

「↑」(前に進む)とか「>>」(右にジャンプ)とかが書いてある四角いチップを配置していくことでロボットの動作をプログラムしていくんだけど、すごくよくできてる。単純な動作に加えて、if(のようなもの)が使えるのと、チップを円を書くように配置してループを作ったり、数は限られるがユーザー定義関数が使えたり言語として一通りそろってる。何より、プログラムの結果がこれだけ分かり易く派手に動いてくれると楽しい。

うぉおお、ひさしぶりにやりてぇーけど、PSPねえええええええ

% sudo pear install PHPDocumentor
Password:
downloading PhpDocumentor-1.2.3.tgz ...
Starting to download PhpDocumentor-1.2.3.tgz (2,656,621 bytes)
......................................................................................done: 2,656,621 bytes

Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 8192 bytes) in /usr/share/php/PEAR/Installer.php on line 316

Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 35 bytes) in /usr/share/php/System.php on line 133

PHPDocumentorがインストールに標準の8M以上のメモリを必要するのは何とかした方が良いと思った。

Debian/Ubuntuの場合は/etc/php5/cli/php.iniを変える。

;memory_limit = 8M      ; Maximum amount of memory a script may consume (8MB)
memory_limit = 16M
GPLv3 2nd draft & LGPLv3 1st draft are out – mhatta (18) のジャーナル

ちなみに、私自身は、正式版はともかくdraftの段階では訳すつもりがないと言い続けてきたのですが、諸般の事情により(rationaleも含めて)全部訳すことになりました(他の方がやるのはもちろんご自由に)。各国語訳の法的な地位というか扱いをもう少しきちんとしようという動きもあります。ちょっと待っててね。

GPLv3どうなるのかやっぱり気になる

でもブラウザがプラットフォームになると、Webサービスの利用規約とWeb APIの利用規約がGPL、LGPLの変わりになってどうでもよくなっちゃうのかな。

それぞれ標準のライセンスがあれば簡単なのに。ちょっとググったけど出てこなかった。