ハングマンならぬセップクマン(切腹マン)


千葉県八千代市の私立秀明八千代中学・高校で、英語担当の教師が、授業中に生徒が解答ミスを重ねると、人が首をつっている姿を連想させる絵を黒板に描いていたことが、複数の生徒や卒業生の証言で分かった。同校では08年に校内で生徒が首つり自殺しているが、その後も続いていたという。亡くなった生徒の両親は「こうした指導は問題だ」と憤っている。 (毎日.jp)

外国人教師が授業で使った英単語を当てるゲームHangmanが、人の首を吊るゲームだということで、生徒の自殺と絡めて過剰に反応されていますね。

これはさすがに訴えがナンセンスだと思います。けどアメリカ人やイギリス人にも「文化の違い」だけで片付けてほしくはないな。止める必要はないけど、子供に遊ばせるゲームのテーマとしては、趣味は良くないよね。違う文化では気に障る人もいるかも、という想像力ぐらいは持ってもらってもいいんじゃないかと思います。

さて、同じ発想で英単語じゃなくて日本語の単語を覚えるゲームというのがAndroidアプリにあるようです。「英語で首吊りなら、日本語はこれだ!」と考えたんでしょう。その名も「切腹マン」(Japanese Hangman)

首吊り完成の代わりに、腹を切っていくわけですね。なんという…

メニューは英語・ドイツ語・フランス語に対応し、Androidバージョン1.5以上で動作。無料でAndroid Marketからダウンロードできます。

ビートルズの歌詞等を解析できるツール – ビートルズではGoodといえばMorning


IBMのビジュアライゼーション(可視化)に関する実験サイトmany eyesが公開している、Phrase Netというブラウザツールがあります。

そのツールにビートルズの歌詞を放り込んで解析させた人の結果が以下のようなもの。

beatles-lyrics-visualization

「ビートルズの曲の歌詞では」、ストロベリーといえばフィールズだし、ヘイといえばバンガローでビルだし、ロンリーなのはピープルな傾向にある、というのがわかるわけです。

“yellow submarine”のようにスペースでつながっている単語を解析すると上記のようになりますし、”rock and roll”のようなandでつながれた関係、”pepper’s lonely”, “top of slide”, “sees the sun”などいくつかの英語での単語のつながり方に応じて、どんなフレーズが多用されているのかを見ることができます。(その場で操作しながら見られるバージョンはリンク先で。ブラウザのJava利用がonになっている必要があります) あらかじめ用意されたパターン以外にも、自分でパターンを指定して解析させることも可能です。

Phrase Netの本サイトでは、サンプルデータとして、ジェーン・オースティンの「プライドと偏見」全文を解析しています。

[symfony] プラグインを簡単に作るためのプラグインsfTaskExtraPlugin


symfonyのプラグインはPEARのパッケージシステムを使っているのですけど、PEARのパッケージングって結構面倒で、僕はあまり好きではありません。PEARにもパッケージを作るためのツールがあるのですが、PHPのスクリプトを書くことになります。

symfony1.2には、symfonyのパッケージを作ることに特化したタスクがsfTaskExtraPluginという名前で提供されています

まだalpha版なので、alphaを明に指定してインストールします


$ symfony plugin:install -s alpha sfTaskExtraPlugin

このプラグインの中のパッケージ作成コマンドを呼ぶと、plugins/ディレクトリの下にある特定のプラグインを、PEARパッケージにしてそこに作ってくれます。


$ symfony plugin:package sfFaqPlugin

これだけで、plugins/sfFaqPlugin/sfFaqPlugin-1.1.0.tgz ができます。(プラグイン名やバージョン番号はサンプル)

プラグインになっていれば、symfonyコマンドでinstall/uninstallを管理できます。


$ symfony plugin:install /sandbox12/plugins/sfFaqPlugin/sfFaqPlugin-1.1.0.tgz

そこにあるpackage.xmlを使ってパッキングしてくれるので、xmlを開いて適度に編集することでバージョンや含むファイルを変えることができます。package.xmlが無い場合は、対話形式でpluginの説明や開発者の名前などが尋ねられるので、順番に入れていくとpackage.xmlも作成してくれます。

なので、たとえば、symfony1.0でしか動かないとpackage.xmlに書いてあるせい「だけで」symfony1.2にインストールできないpluginがあったとしたら、それをtarでplugins以下に展開して、package.xmlのrequire versionだけ1.3未満までオッケーにし、このタスクでパックすれば、1.2対応のpluginができるということです。

もしそういう風に1.2非対応のプラグインを1.2で使って、実績もあるなら、前のエントリで書いたように開発者になって公式サイトにアップするのもいいでしょう。

sfTaskExtraPluginには他に、pluginsの下に一からプラグインを作るためのgenerate:plugin、pluginの中にmoduleを追加するgenerate:plugin-moduleがあります。これらで生成したスケルトンには、テストコードの枠組みも最初からついてきます。

Mr Uptime エラーで落ちてるサイトが復旧したら教えてくれるFirefoxアドオン


del.icio.usのトップに載ってたので紹介しようと思ったら、pop*popで昔紹介されていました。詳しくはそちらを。

エラーに限らず、メンテナンスとかもだけど、復旧したらすぐにでも使いたい、というような状況ではこういうプラグインでいち早く知るのもいいのかもしれないですね。みんなが使ったら復活した瞬間にアクセス過多でまた落ちたりしそうですけど。

via del.icio.us/popular

Cuzillion ブラウザのページ読込描画パフォーマンス測定ツール


これは面白い!

Cuzillionでは、サンプルモデルを使ってブラウザのレンダリング速度をシミュレートするというツールサービスです。

HTMLのヘッダやボディの中に、スクリプトファイルやスタイルシート、画像やiframeなどを配置して、それらがどの手法で配置されるか、どう読み込まれるか、どれぐらい遅れて読み込まれるかというのをページ上でいろいろと設定し、それを実行することで、要素をどのように、どんなドメインに配置し、どう読み込ませることでページの読み込みが速くなるのか、というのを実験することができます。

個人的には、ちょうどいまハイパフォーマンスWebサイトを読んでいるところで、その中ではこのような遅延の実験をした結果の現状のベストプラクティス、というのが解説されていたところです。

ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール
著者/訳者: Steve Souders
出版社: オライリージャパン( 2008-04-11 )
定価: ¥ 1,890

この本の中でもわざと遅延を入れたりドメインを別にした外部スクリプトの読み込みなどをページに挟んだ実験ページを作って公開しています。何がページの描画をせき止めるのかとか、ドメイン分散による並列度アップは全体の読込完了にどう影響するのか、とかいったような話です。

この本を書いたYahoo!の人、Steve Soundersさん、今はGoogleにいるらしいんですけど、このCuzillionの作者なんですね。

via Ajaxian

PHP Speedyとかの問題点


PHP Sppedyという、入れただけでPHPスクリプトが高速化されるというライブラリがdel.icio.us/popularに出ていました。

PHP Speedyを読むことは勉強になると思うけど、すべてを解決できる魔法のソリューションがあったら、最初からPHPなりPHPアプリケーションに内蔵されてますって。

一番の問題点は、何か簡単なことをしたらいろんな問題がいっぺんに解決する、という話をたくさんの初心者が信じてしまうことなのかなあ。

Smartyやフレームワークを使っていれば、キャッシュや圧縮についてはまずそちらの同等機能を使うのが筋だと思います。それらを知らずにいきなりこういうのを投入するのは筋が悪い。知ってたらこの手のAll-in-oneツールは気持ち悪くて使えないはず。

# それとは別に、javascriptやcssや画像(CSS spritesとかで)やHTMLを書き換えまくるとこまでやったり、実行しながら自己測定して最適化手法を選択するようなWeb専用スクリプト言語、という進化もありかもとは思うけど