2008年03月07日

以前書いたように、ブログをWordPressに引っ越しました。新しいURLは

http://www.perfectsky.net/blog/

です。少し短くなりました(笑)。RSSやAtomのFeedのURLは

http://www.perfectsky.net/blog/?feed=rss2 (RSS 2.0)
http://www.perfectsky.net/blog/?feed=rss (RSS 0.92)
http://www.perfectsky.net/blog/?feed=atom (Atom)

になりましたので、RSSリーダなどに登録して下さってた方は、変更よろしくお願いします。

Movable Typeでは、200弱のエントリーを書きました(どうでもいいような内容ばかりですが・・・(笑))。何年かかるか分かりませんが、WordPressでも同じぐらいの数書けるほど、続けて行けたらなと思っています。

Movable Typeでの最後のエントリーでした。


[追記]
「変更よろしくお願いします」じゃない! こっちがリダイレクトしなければ!!(笑) ほんとすみません。やっておきました。

2008年03月01日

Firefox3ではJavascriptの処理速度がかなり速くなるようです。

Firefox 3 Performance Gets a Boost
http://cybernetnews.com/2008/02/25/firefox-3-performance-gets-a-boost/

ベンチ結果を引用します。

1. Firefox 3 Nightly (PGO Optimized): 7263.8ms
2. Firefox 3 Nightly (02/25/2008 build): 8219.4ms
3. Opera 9.5.9807 Beta: 10824.0ms
4. Firefox 3 Beta 3: 16080.6ms
5. Safari 3.0.4 Beta: 18012.6ms
6. Firefox 2.0.0.12: 29376.4ms
7. Internet Explorer 7: 72375.0ms

Firefox 3 Beta 3のリリースよりも後に、さらに速くなったということみたいですね。PGO Optimizedとはこれのことらしいです(なにかはよく知りません・・・(笑))。

例によって「SunSpider JavaScript Benchmark」ってのがどれくらい妥当なベンチなのか私には分かりませんが、最近はJavascriptバリバリなウェブサイトがかなり増えているように思いますので、これでウェブを見るのがさらに快適になるかもしれません。と言っても最近のPCは十分速いですが・・・

2008年02月21日

「canvas」というHTML要素があるんだそうです。詳しい解説はこちらにあります。

Canvas tutorial - MDC
http://developer.mozilla.org/ja/docs/Canvas_tutorial

グラフを書いたりするのにめちゃくちゃ便利そうですが、アニメーションもできるということなので、ためしにライフゲームを作ってみました。

http://www.perfectsky.net/misc/gameoflife.html (IEではきちんと表示されません)

ぜひソースも見てもらいたいのですが、画像ファイルも、Javascriptの外部ライブラリも、Flashも使わず、たったこれだけの記述量でこんなのが動くのはすごくないですか? 残念ながらIEがまだ未対応のようですが、IEでも同じように動作させることができる、こんなライブラリもあります。

ExplorerCanvas
http://excanvas.sourceforge.net/

canvas要素を使ったもっと高度な例としては、こんなのがあります。

Canvascape - 3D walker
http://www.abrahamjoffe.com.au/ben/canvascape/

すごすぎます!(笑)


* * * * * * *


うーん、ここまで書いてから気がついたのですが、もうすでに同じものを作っている人がいました・・・ GIGAZINEのこちらの記事、もう少し下までちゃんと見ればよかった(笑)。

2008年02月19日

遠くの街に出かけた時に、見たことのないスーパーがたくさんあって違和感を感じることってありませんか? 毎日のように買い物している、地元でメジャーなあのスーパーも、全国的には超マイナーだったりします。なーんてことを考えている時に思いついた、こんなものを作ってしまいました。

supermarketer
http://www.perfectsky.net/cgi/supermarketer.cgi
http://www.perfectsky.net/cgi/ms.cgi (携帯用ページ)

はっきり言って、かなりくだらないです(笑)。でも、作るのはけっこう大変だったんですよ。全部で約6000店分のデータを持っているのですが、スーパーのウェブサイトなどを見て、全部自分で調べたんですから! スーパーを運営している会社の方、できればウェブサイトはもう少し見やすく作っておいてください。これはないだろってのが、いくつかございました・・・(笑) でも、ウェブで広告ちらしが見れるのはすごく便利です。新聞取ってない人などは、ぜひ活用しましょう。

Google マップのAPIも初めて使ってみましたが、スキルがない私でも簡単に使えてGoodです。今回のようなケースでも、地図が表示されるのとされないのとでは、面白さがだいぶ違います。視覚に訴えかけるのは重要だと、改めて思いました。

ということで、ぜひあなたも一度supermarketされてみてください。

2008年02月05日

私の持っている携帯は、待ち受け画面を好きな色のベタ塗りにすることができません。待ち受け画像を「なし」にすることはできるのですが、その時は縦のストライプが表示されるんですよね・・・(それって「なし」ではないような気が・・・(笑)) PCでは当たり前のこの機能、携帯では需要がないのでしょうか? それとも、私の携帯が変わっているんでしょうか? それほどリソース食うようにも思えないのですが・・・

ということで作ってしまいました(笑)、単色ベタ塗りの待ち受け画像を作成するCGIです。

plain wallpaper generator
http://www.perfectsky.net/cgi/plainwallpapergenerator.cgi
http://www.perfectsky.net/cgi/mpwg.cgi (携帯用ページ)

携帯用のサービスなので、携帯用ページも用意し、さらにモバイル版AdSenseも貼ってみました。普段、携帯では電話かメールしかしないので、こんなにまじまじと携帯でAdSenseを見たのは初めてですが、これはなんというか、ものすごく誤クリックが多そうです(笑)。モバイル版AdSenseは始まって間もないですが、広告主の方はコンバージョンをしっかり把握していないとちょっと危なそうですね。さすがにこればかりはGoogleも対策を取りづらいような気がしますが、広告主がそのあたりをちゃんと考慮にいれた入札金額を設定するような市場原理が働いて、このままでも大きな問題にならないかもしれません。

作成した待ち受け画像のURLはQRコードでも表示するようにしたのですが、GD::Barcode::QRcode便利です。っていうかこんなのが無かったら動的にQRコードを表示することなんて私にはできません・・・ しかも、自分でインストールしないといけないかなと思っていたら、このサイトで使っているさくらのサーバには、最初から入っていました。需要があるんでしょうね。

こんなCGI作っていると、docomoの携帯の、「480×854」とか「480×864」とかの凄さを痛感します。あんな小さな画面にですよ! スゴスギー

2008年01月14日

Google Trendsっていいですよね! 特にライバル関係にある複数のものを比較するのが面白いです。

Blu-ray vs HD DVD
http://www.google.co.jp/trends?q=blu-ray%2Chd+dvd

これだけ見ると、まだまだ勝負は分からなさそうです。

Movable Type vs WordPress
http://www.google.co.jp/trends?q=movable+type%2Cwordpress

Movable Typeって、日本以外ではほとんど使われていないんですかね?

Google vs MSN vs Yahoo
http://www.google.co.jp/trends?q=google%2Cmsn%2Cyahoo

激しい戦いが続いてますが、次のようにしてみるとまるで違うグラフに・・・

http://www.google.co.jp/trends?q=google%2Cmsn%2Cyahoo&geo=JP

うーん、日本ってちょっと変わってる?

Google TrendsのAPIも将来公開されるかもしれないそうです。

Google、「Google Trends」のAPIを公開へ - ITmedia News
http://www.itmedia.co.jp/news/articles/0712/06/news045.html

こんなのがあったら、またいろんな人が面白いものを作ってくれそうですね。

2007年12月02日

このブログを始めてから3年ほど経つのですが、こんどからこのブログを構築するのに使うソフトを、Movable TypeからWordPressへ移行することにしました。

WordPress
http://wordpress.org/

たぶんこのブログを始めた頃は、WordPressの情報ってまだ今ほど無かったように思うのですが、最近は使っているブログもたくさん見かけますし、評判もすごくいいようなので、そっちに移ろうと決めました。Movable Typeの4系について行きたくない、というのもひとつの理由です。

WordPressでブログを始めたら、ブログのURLは新しくするつもりです。今までのエントリーをWordPressに流し込んだりもしません。新しいブログと古いブログは、完全に分けてしまおうと思っています。

古いブログは、当面の間は完全に静的なページとして残しておくつもりです。コメント、トラックバック、ブログ内検索はもうすでに止めました。その上で、もしかしたらしばらく時間を置いた後、古いエントリーから順に消していくかもしれません。やはりどうしても、古いエントリーには今となってはどうでもいい内容が多いですし、今でも少しは価値があるものは、どうせだったらもう一度まとめ直して、新しいエントリーにしたほうがいいですしね。何もわざわざ消さなくてもと言われそうですが、「シグナルを出す」のと同じぐらい「ノイズを出さない」ことは大事だと、いつも思っています(こんどは、それって今時の考え方じゃないと言われそうですが・・・)。

ただ、WordPressに移ると言ってもすぐにはできそうもないので、たぶん来年の話です。それまではここを使い続けます。

2007年11月16日

たまたまこのウェブサイトのアクセスログを見ていたら、いわゆるクローラらしいのが、存在しないrobots.txtを探して、404が返った後、そのまま何もしないで帰ってしまうことがあるのに気づきました。まあこれはおそらく、しばらくしてからまた来るとか、次は違うIPアドレス/ユーザーエージェントで見に来てるとか、そういうおちだと思いますが、もしもクローラがrobots.txtがないことを理由に、クロールしていかない場合があったりするんだったら(大手検索サイトのクローラは絶対そんなことはないですが)、それはなんだか少し勿体無い気がしたので、今度からこのサイトにもrobots.txtを置いておくことにしました。

そこで、robots.txtの書式を調べていて初めて知ったのですが、robots.txtにサイトマップファイルへのパスを記述してクローラにサイトマップ(いわゆるこっちの意味でのサイトマップです)を用意していることを知らせることができるんだそうです。確かにrobots.txtとサイトマップは、クローラだけに見てほしい物なので、これはうまい仕組みですね。しかも現在、Google、Yahoo、MSN、Askなどの大手検索エンジンはすでに対応済みだとのこと。今までもこのサイトでは、「Google ウェブマスター ツール」を利用して、Googleにだけはサイトマップを通知していましたが、今度からは他のクローラにも、この方法を使って簡単にサイトマップの存在を知らせることができます。詳しい内容はこちらに書かれています。

sitemaps.org - プロトコル
http://www.sitemaps.org/ja/protocol.php#submit_robots

少し引用します。

サイトマップの場所を指定するには、robots.txt ファイルを使用します。 次の行を追加してください。

サイトマップ: <sitemap_location>

<sitemap_location> には、下記のようにサイトマップへの完全な URL を指定します。 http://www.example.co.jp/sitemap.xml

このコマンドは user-agent の行には依存しないため、ファイル内の任意の場所に置くことができます。 サイトマップ インデックスファイルをご利用の場合は、そのファイルの場所だけを含めることができます。 インデックスファイルでリストされている個々のサイトマップをリストする必要はありません。

ということで、このサイトのrobots.txtはこんな感じになりました。

Sitemap: http://www.perfectsky.net/sitemap.xml

User-agent: *
Disallow:

シンプルです(笑)。ネットをいろいろ見ていると、User-agentの行とDisallowの行の間に、Sitemapの行を突っ込んでいる例が多々見られるのですが、先ほどの引用にもあるとおり、Sitemapの行は特定のユーザーエージェントに対する記述ではありませんので、問題はないにせよ、その書き方はちょっと不自然だと思います。

2007年11月06日

以前、MD5SummerというMD5やSHA-1のハッシュ値を調べることができるソフトを紹介しましたが、今回のbkhashesはもっとすごいです。なんと35種類ものアルゴリズムに対応している万能ソフトです。

bkhashes
http://www14.ocn.ne.jp/~bkclass/bkhashes.html

ちなみにその35種類とは

Adler-32, cksum, CRC16(CCITT), CRC24, CRC32, FCS16, HAVAL(128/160/192/224/256bits, 3/4/5passes), MD2, MD4, MD5, RIPEMD-128, RIPEMD-160, RIPEMD-256, RIPEMD-320, SHA-1, SHA-256, SHA-384, SHA-512, Tiger, WHIRLPOOL 2001, WHIRLPOOL 2003

とのこと。見たことないのもいっぱいあって、何がなんだかわかりません(笑)。見やすさ・使いやすさも申し分ないので、このソフト一つあれば、もう他は全く必要ないですね。

2007年11月04日

最近知ったのですが、将棋の思考エンジンとそれ以外のソフトとの通信プロトコルとしてUSI(Universal Shogi Interface)というのがあるんだそうです。これはUCIというチェスのプロトコルを元にしていて、現在はまだ草案の段階だとのこと。囲碁ソフトの、GMPやGTPに相当するものですね。で、今回紹介する「将棋所」というソフトは、そのUSIに対応したGUIのフロントエンドです。非常に良くできてます。すごいです。

将棋所
http://www.geocities.jp/shogidokoro/

将棋所は普通の棋譜再生ソフトとしても使えますので、一般の人にも十分利用価値がありますが(駒や盤もとても美しい!)、先ほどのUSIに対応していたり、連続自動対戦ができるなど、将棋ソフトを開発している人にとって便利な機能がたくさんあります。

ということで早速、かなり無理やりにですが、自分の将棋プログラムもUSIに対応させてみました。と言ってもまだごく一部のコマンドしか話せませんが、一応「将棋所」を通して対局だけはできるようになりました。実は、今まで一度も自分のプログラムと自分自身が対戦したことがなかったのですが、このソフトのおかげでそれが可能に! 結果は自分の圧勝。プログラム弱すぎです。でもちょっと感動しました。「将棋所」にもともと入っているLesserkaiという思考エンジンとも対戦させてみましたが、これとはいい勝負です。どっちも弱いというよりおかしい・・・(笑)

話もどって最初のUSIですが、歩をP(PAWN)と表すのってどうでしょうか? PAWNは歩ではないし、歩はPAWNではないと思うのですが・・・ こういうふうにしておけば過去の遺産を引き継げる、ってこともあまりないような気がします。後、形勢をcp(centipawn)という単位で表すのにも少し違和感があります。チェスは駒得が絶対なのかもしれませんが(よくは知りません)、将棋はけっしてそうではありませんので・・・ 思考エンジンを作っている人たちも、内部で使っている数字をどう変換したものか困ってしまうと思います。しかし一番の問題は、このようなプロトコルが今までなかったことですね。これは大きな進歩です。特に、私みたいに何でもかんでも自分で作れるわけではない人間には、かなりありがたいです。