Category: 03 コンピュータ

Google Deskbar をのっとれ! (その2)

昨日紹介したとおり Google Deskbar (グーグル デスクバー) は英数字以外の文字をUTF-8でエンコーディングして送ってくる。 一方、 Yahoo! Japan などの日本のサイトの多くはEUCやShift-JISエンコーディングをインプットとして期待しているため、UTF-8エンコーディングの文字が来ると文字化けがおこり思ったとおり検索ができない。 これはバグというより、サーバの仕様の違いによって起こる問題のため、おそらく Google Deskbar の最終版でも直ってはこないだろう。

そこで、Google Deskbar が送ってくるUTF-8エンコードされた文字をShift-JISへ変換するサービスを作ってみた。 使いかたとしては Google Deskbar の Cutomize Search に登録する URL の前に

http://google.andore.com/?url=

を付けるだけ。 Yahoo! Japan の場合

http://search.yahoo.co.jp/bin/search?p={1}

と設定すると下のように文字化けしてしまうのが、

Garbled.jpg

http://google.andore.com/?url=http://search.yahoo.co.jp/bin/search?p={1}
とすることで、このように文字化けせずに表示されるようになる。

Ok.jpg

この機能は無条件にUTF-8エンコーディングを Shift-JIS エンコーディングへ変更するので、以下のサイトのような、既にUTF-8をサポートしているサイト、(半角)数字だけの入力が必要なサイトの場合はこのサービスを通す必要はない。

  • Amazon.co.jp (Amazon.co.jp は UTF-8 を受けつけるためリダイレクトサービスを使う必要はない)
    http://www.amazon.co.jp/exec/obidos/external-search?tag=amegan-22&mode=blended&keyword={1}
  • マピオン (郵便番号を入力した地図検索, 郵便番号を数字とハイフンだけで入力するのでこれもリダイレクトサービスを使う必要はない)
    http://www.mapion.co.jp/c/f?uc=11&grp=all&zip={1}

まず、本来のURLを試して、文字化けが起こった場合にリダイレクトサービスを使うことをおすすめする。 個人的に試した限りでは以下のようなサイトの検索はリダイレクトサービスが有効だ。

  • Yahoo! Japan
    http://google.andore.com/?url=http://search.yahoo.co.jp/bin/search?p={1}
  • Yahoo! オークション
    http://google.andore.com/?url=http://search.auctions.yahoo.co.jp/jp/search/auc?p={1}
  • Yahoo! 辞書
    http://google.andore.com/?url=http://dic.yahoo.co.jp/bin/dsearch?p={1}&d=all&t=f
  • FreshEye
    http://google.andore.com/?url=http://search.fresheye.com/?ord=s&rt=&query=&kw={1}
  • 楽天
    http://google.andore.com/?url=http://esearch.rakuten.co.jp/rms/sd/esearch/vc?sv=2&sitem={1}

このサービスを介すことで、ほとんどのサイトでGoogle Deskbar から日本語検索することができるようになると思う(enc=euc-jp&url= と url=の前に enc=euc-jpを付けることで euc-jp への変換も可能だが、大抵は Shift-JIS で大丈夫だろう)。 自分の好きな検索サイトを追加して、Google Deskbar を有効に使おう。

リダイレクトサービスの問題点、改善点、他にも有用そうな検索 URL を見つけたらコメントに追加していって欲しい。


Google Deskbar をのっとれ! (その1)

Google が先日発表した Google Deskbar (グーグル デスクバー) というツール。

Windows のタスクバーに検索窓を付けることでブラウザを介さずに検索をすることができる。 まだベータ版で英語版のみだが結構評価は高いようだ。

この Google Deskbar には Customized Searches (カスタム検索) として、Google 以外の他のサイトを使っての検索ができるしくみが用意されている。 Google が自社の検索エンジンだけでなく、他のものにも応用できるようなしくみを提供してくれているところがとっても気にいっている。

標準では Stock Quotes(株価検索), Thesaurus(シソーラス、類語検索), Movie Reviews (映画レビュー検索), Software Downloads(ソフトウェア検索) といったものが用意されているが、個人的に他に便利そうなものを調べてみた 。 下にあるURLを Cutomized Search に登録するだけで Google Deskbar から検索できるようになる。 Yahoo! や MSN など、別の検索エンジンを使っても検索できてしまうなんて、Google の余裕の現れか?

Mozilla系のブラウザの人はワードラップが行われずURLの後ろの方が切れるかもしれない。 そんなときはウインドウのサイズを大きくして見て欲しい。

  • eBay
    http://search.ebay.com/search/search.dll?ht=1&sosortproperty=1&from=R10&BasicSearch=&query={1}
  • Amazon.com (さりげなく、Amazon Associates とからめておいて…)
    http://www.amazon.com/exec/obidos/external-search?tag=americadeganb-21&mode=blended&keyword={1}
  • Weather.com (Zip Code を入れると天気予報を表示してくれる)
    http://www.weather.com/weather/local/{1}?lswe={1}&lwsa=WeatherLocalUndeclared
  • IMDb (映画データベース)
    http://www.imdb.com/find?q={1}
  • Ticketmaster
    http://www.ticketmaster.com/search?&x=0&y=0&keyword={1}
  • MSN Search
    http://search.msn.com/results.asp?RS=CHECKED&FORM=MSNH&v=1&q={1}
  • Yahoo! Search
    http://search.yahoo.com/search?ei=UTF-8&fr=fp-pull-web-t&n=20&fl=0&x=wrt&p={1}

この機能、日本人なら日本のサイトにも使ってみたいと思うだろう。 ところが Google は UTF-8 を文字エンコーディングに使用しているため同じしくみを日本のサイトに適用しても文字化けしてしまうことが多い。 そこで、フィルタをかけて文字コードを変換するサービスを作ってみた。 が、今日は長くなってしまったので詳しくは明日。


プレイリスティズム

たとえば大学のキャンパスでは、「プレイリスティズム」(playlistism)とよばれる新しい形の差別が生まれている。

プレイリストというのは曲リストのこと。 iTunes ではアルバムの曲順をそのまま自動的にプレイリストに変換するのに加え、自分のもっている曲の中から自分の好みに応じて曲を選択して独自のプレイリストを作ることができる。 昔でいえば、◯◯のときに聴きたい曲を集めてテープやCDを作っていたものが手軽になったという感じ。

iTunes の Windows 版が出てから、会社で音楽を聞くのに iTunes を使うようになった。 このときプレイリスト共有機能を始めてセットし、同僚のひとりから “君のプレイリストが聴けたよ” と言われたときはちょっと嬉しくなった 。 自分のプレイリストの趣味がいい、悪いは別にして見てもらえたのはうれしいし、自分も人のリストは気になる。

Apple も人々がプレイリストに興味があることを知っているようで、 iTunes Music Store では Celebrity Playlists (芸能人のプレイリスト) という、有名人がオススメする曲で構成されたプレイリストが掲載されている。 そのプレイリスト単位で曲を買うことも可能だ。

プレイリストとその共有というしくみは、iTunes Music Store に加えて、これも iTunes がもたらした新しい音楽体験だろう。


Linux デスクトップに必要なもの

Linux分野の3つの有力な組織がデスクトップに本腰を入れることで、MicrosoftにとってこのオープンソースOSが一層重大な脅威になりそうだ。MicrosoftはLinuxが脅威であることを認めながらも、開発中のWindowsの新バージョンで同社の優位を維持できるとしている。

最近、Lindows の報道などに見るように Linux をデスクトップの代わりとして使おうとする動きが目立ってきた。

オレは数ヶ月前から、試しに会社でメールやWebを使うためのマシンに Linux(デスクトップLinux として定評のある SuSE) をインストールして使っているが、Windows と比べると違和感を感じるところが多い。 一番の理由は GUI の標準が決まっていないことだろう。

現在のLinux の GUI は KDE と Gnome という2種類のウインドウシステムが主流だが、各ディストリビューションによって採用度合はバラバラで、多くのディストリビューションは両方とも動くとしているものが多い。 この場合、あるアプリケーションは Gnome の流儀で動き、別のアプリケーションは KDE の流儀で動いたりする。 こういった自由度の高さはKIOSK端末といった特定用途向けのデバイスには有利だが、いろんなアプリケーションを使うデスクトップ用のOSとしては混乱を招くだけだ。

共存するKDE と Gnome のファイルブラウザとターミナル(クリックで拡大)

Mac OS X は BSD をOSの基礎に採用したが、GUI まわりに X11 のシステムを採用しなかった。 豊富なUnixアプリケーションが使えないという苦言も聞こえたが、ユーザが真っ先に触れる部分を 自社のコントロール下に置くことでどのマシンでも同じ体験ができることを保証したことはデスクトップ OSを作っているメーカとしては正しい選択だろう。

良い悪いは別にして Linux デスクトップといえばコレというようなインターフェイスデザインを含めた枠組みを早急に作り、今後作成するアプリケーションも全てそれに従って作るようにしない限り、 Linux デスクトップがWindowsを置き変えるようなことにはならないと思う。

あとは日本語環境としては自由に使える MS ゴシック/明朝 (Mac OS X のヒラギノ ゴシック/明朝) 並のクオリティの高いフォントも欲しいところだ。


パソコンで動画を見たいですか?

同氏は、Media Centerのコンセプトにはいくつかの問題があるとし、特にコンピュータの使い方と比べて、TVの見方には大きな違いがある点を指摘している。「通常、人々がTVで見たがるのは、気軽に見られるようなものだ」

ジョブズの考えかたは少し偏ってないか?

TVパソコンに期待されているのはTVとしてだらだら見るという方法より、TV番組を録画をする機能。 記事の途中にも書いてあるように現在の PC/Mac のアーキテクチャでは安定性を求めるのには無理があるのはわかるが、テレビ番組を記録しておきたいと思う需要は確実にあると思う。

ただ、録画したデータをパソコンで見るかどうかは別だ。

オレはパソコンで動画を見るのは好きじゃない。 理由はきっとパソコンが置いてある環境だろう。 うちのパソコンの置いてあるところではとにかく見ていて疲れる。 Video CD や DVD に焼いてテレビで見るのも手だがいちいち面倒だ。 なので…

AVeL LinkPlayerは、Ethernetを装備したDVDプレーヤー。通常のDVDプレーヤーとして利用できるほか、ネットワーク上のパソコンに保存されている映像/音楽/写真データなどのデジタルコンテンツを、テレビなどに出力できる。

こういったデバイスには期待してしまう。

アメリカでも Gateway の Connected DVD が同じような機能を持っているし、 異色なところではネットワークに繋ったプレステ2 で動画を再生するという Game Shark Media Player というのもある。(残念ながらリージョンコードの関係で日本のプレステ2では動かないらしい)

夏に日本で発売された MediaWiz といい、最近こういった機能をもったデバイスが増えてきている。 自分がPCで動画を見ることに抵抗を感じていることからも、録画はPC、再生はネットワークに繋った専用デバイスで、というのが今後の主流になっていくような気がする。


Nvu に期待

LindowsのWebサイトに掲載された告知文で、マイケル・ロバートソンCEOはNvuプロジェクトについて、MicrosoftのFrontPageおよびMacromediaのDreamweaverに匹敵するWebツールのコレクションを作り出すことが目的だと説明している。
 ロバートソン氏によれば、NvuはオープンソースブラウザMozillaのオーサリングエレメントであるMozilla Composerの一部コードを利用する。完成は来年の見通しだという。

Lindows の開発元が中心となって進めていることだけに当初は Linux でしか動かないかもしれないが、ベースが Mozilla Composer で、元Mozilla Composerの開発者が多数参加しているプロジェクト、そしてオープンソースなだけにこの成果は他のプラットホームへも移植されるだろう。

Dreamweaver も3.0までは使っていたけど、その後のリリースがプロ用のツールとして進化してしまった(そして高くなった)ためもう使っていない。 他のツールもそうだったけど、どうも進む先がプロ向けのツールと化すのはアップグレード、多機能化の弊害か? もっと初心者やちょっとだけ使いたい人向けのツールとして、もしくはApple の .Mac サービスで作成できるような機能限定でも簡単にWebページを作るツールがもっとあってもいいような気がする。 とりあえず、Nvu の成果に期待したい。

補足トリビア: FAQ によると Nvu は New View の意味でN-view (エヌ ビュー, 英語的にはエン ビュー(笑)) と読むのが正しいとのこと。


QuickCam SDK の復活を願う

このLogitech QuickCam Orbit webcamの撮影部は左右128度・上下54度の動作角度を持っており、左右180度・上下90度をカバーできる。手でカメラの角度を調整することももちろん可能だが、添付されているソフトウェアをPCにインストールすることによって、自動的に人の顔を追尾し、常に画面内へ映し出すことができる。

Logitech のカメラは小技が効いていたりして結構面白い。 以前は、モーションディテクタと呼ばれるカメラに写ったものが動いたことを知らせてくれる機能なんてのもあった。

ただ、これらの機能が買ったときに添付されているソフトでしか使えないというのが残念。 こういったソフトは使える機能が全部突っ込まれていたりするから一見いろいろできそうと思うが使っているとうざい。ちょっと画面の隅にでも出て欲しいという場合には使えない。

Logitech は QuickCam を使ったソフトウェアを自分で作れのるようにするためのSDKを配布(英語)しているのだが、しばらくアップデートもされておらず 今回のQuickCam Orbitを含む最近のQuickCam の機種は対象外、SDKの動作環境に Windows XP が入っていないというのが現状だ。

自分でも昔、このSDKの存在を知ったとき QuickCam Web というカメラを手に入れ、職場にセットし、モーションディテクトの機能を利用して誰かが近づいたときだけ画面にカメラからの絵が表われるというソフトを作って使ったりしていた。 ところが環境をXPに移行したら使えなくなってしまったという悲しい過去もある。

この自動追尾機能も、一般に公開してもらえたらいろいろできそうなのに残念。
これは他のハードウェアベンダーにも言えるのけど、せっかく魅力的なハードウェアを作ってくるのなら、もっといろいろな使い方ができるようにSDKにも力を入れて欲しいものだ。


HotSpot に期待すること

この500円プラン、なかなか使い勝手が良さそうだ。従来もNTTコム「HOTSPOT」のプリペイドカードなど、1日あたり500円前後で公衆無線LANを提供するサービスはあった(2002年12月の記事参照)。しかしHOTSPOTのプリペイドカードの場合、店舗でカードを購入し、カードに記入されているID、パスワードをその都度入力しなくてはいけないなどの手間がかかる(ISP経由ならば利用ごとの課金も可能)。
 Mzoneでは、事前に申し込みをしておけば、利用したときだけ課金が行われ、月額料金は必要ない。逆にいえば、特に使う予定がなくても、申し込みだけしておいて損はない。

うーん。 できればプリペイド方式も併用して欲しかった。

というのも、この前日本に帰ったときに泊まったホテルの一つにこのMzoneのサービスをしているところがあった。 最初はてっきりフリーホットスポットだと思ってノートPCを繋げてみたけどパスワードを要求されて有料、しかも登録制だとわかってがっかりした体験をしていたからだ。

ホットスポットは見つけたらラッキーという程度なのであらかじめ登録しないと使えないというより、その場限りで使える方式の方が嬉しい人の方が多いのではないだろうか。ホットスポットが喫茶店のようなところであれば、カードを買って使えるような仕組み、もしくはその場で登録できるような仕組みが欲しいところだ。 (自分のPCからも登録ページだけは無料でアクセスできるような穴を開けるとか…。)
ただ、使ったときだけ1日500円で、登録しておくだけならお金はかからないという料金設定は良心的に感じる。

アメリカでホットスポットサービスと言えばスターバックスが有名だが、このサービスはT-Mobile という会社が提供している。 T-Mobile は 年間、月間、1日、従量制とプランと分けているが1日パスは $9.99 で、購入してから120日以内しか有効じゃないというものだ。 従量制にしても $0.1/分だが 最低60分のチャージがかかってしまうので1時間$6.00の計算だ。 他にお金がかからないにしてもちょっと高すぎる。

HotSpotなんて普通の人はそんなに頻繁に使うわけじゃないので、使いたいとき、もしくは使えるとわかったときに、安い値段で使える。 これが HotSpot に期待するところだろう。


Topcoder.com

昨日書いた Google Code Jam 2003 は topcoder.com というところのエンジンを使って行われていた。

この、 topcoder.com が結構面白そうだ。

ここでは毎週のようにプログラミングコンテストを開いて、世界中から参加者が集まってきている。 topcoder.com はそれをうまく発展させて、Google Code Jam のような冠コンテストの開催(Google Code Jam は人材採用のため)、転職情報の提供、アルバイト的なソフトウェアコンポーネントの開発といったように企業との連携もしている。

プログラマ(というより Coder: コーダー)からすれば職務で必要な自分のスキルが数値化されることで企業に対しアピールできるし、企業からすれば限られた時間内の面接だけでなく、実績を知った上で職に合った有能なプログラマを雇うことができる。

それに、Google Code Jam のように問題とテストケースを用意して、それを通るプログラムを開発してもらうというスタイルは、コーディング仕事を外注へ発注するときにお互いの責任範囲も明確になり、有効ではないだろうか。 発注する側の負担は増えるけど、このプロジェクトを何人月でといったどんぶり勘定でいくより確実だし、テストファーストといった手法があることからもありえない話ではない。 (現実はそうはいかないこともわかるが…。)  そして発注先にこういったコミュニティを利用することで下手な外注よりクオリティの高いコードがローコストで手にいれることができる。

コンテストのシステムは特許をとっているようだし、他にも改良の余地はあるだろうが、topcoder.com のような仕組みを日本でうまく立ちあげられたら日本のソフトウェア産業に一石投じられるのでは? とマジで考えてしまった。


Google Code Jam 2003

Do you have exceptional programming skills? Can you make computers perform like silicon puppets with just a few well-expressed commands? Are you at ease when faced with a hard stop and a group of peers evaluating every line of your code? Here’s your opportunity to display the grace of the true professional in a reward-rich environment.
(優れたプログラミングスキルを持ってる? ちょっとしたコマンドだけでコンピュータを人形のように操ることができる? プログラムを強制停止させて、自分のコードを1行づつまわりのみんなに診断されても平気でいられる? これはあなたの真のプロ技術を発揮する賞金付きのコンテストだ。)

先週末にかけて行われた Google Code Jam 2003、いわゆるプログラミングコンテストに参加してみた。

概要はこんな感じ。

参加者は登録をすませたあと、決められた期間の間にArena と呼ばれる Applet/Java Web Start のツールを使い開発を行なう。 Arena では開発者どうしのチャットや、コンテンスト問題の表示とコーディング、限られた時間でテストまで済ませるのでそのためのカウントダウンといった機能が実装されている。

使える言語は Java, C++, C#, VB.NET 。 どの言語を使用しても得点には影響なく、問題ごとに使う言語を変えてもいい。

テストエリアへ入室直後にカウントダウンが始まり、問題を見てArena備えつけのエディタにプログラムを書き、Compileボタンを押すと自分のコードがサーバへ送られてコンパイルされたあと結果が表示される。

コンパイルが終わったコードはテスト問題に書いてあるテストケースや自分でテストケースを作ることで結果が正しく返ってきているか試すことができる。 ラインデバッガのようなものは付いていない。 テスト結果などからこれでOKだと思ったところで Submit し、自分の解答を提出する。 1度Submitするとその後はコードの変更はできない。

問題のウインドウを開いたときから(だと思うが違っているかも)Submitするまでにかかった時間によって点数が付けられる。 プログラムの実行スピードや、メモリ効率といったところは評価対象にならない。 目的のことをやりとげるコードをいかにして早く書くかというところに重点がおかれたものだ。 最後に、用意されたシステムテストをパスすることで実際の得点になる。 そのため、適当なコードを早く書いてSubmitしても0点になってしまうだけだ。 (Qualification Round ではなかったが、Challenge Phase という段階では、参加者がライバルのコードをチェックし、うまくいかなさそうなテストケースを試すことでライバルのコードを潰す時間も用意されている。 ここでもシステム出した答えと違う結果が返ってくると 0点になってしまう。 うまく相手のコードを潰すと自分に 50点もらえるが, 失敗すると逆に 50点減点になる。)

予戦問題は全部で2問、250点満点の問題と1000点満点の問題だ。 もちろん1000点の方が問題は難しくなっている。 この2問を1時間の間に解かなければならない。
と、こんな感じだったのだが、結果は玉砕。

250点の問題を25分ほどかけてSubmitし、134.33点。 1000点の問題はコーディング途中で制限時間がきてしまったため 0点。 250点の問題はシステムテストを通ったため、最終得点も134.33点。 残念ながら上位500人に入らなかったため次のラウンドに進めなかった。 どういう基準かわからないが Rating は 1347 とのこと。 (0-2200+ という分けかたがあるので参加者のうち半分よりは上ということだろうか)
ここでかっこよく、「余裕でした」なんて軽ーく予選突破できていればよかったけど、まぁシリコンバレーのエンジニアでもこんな程度です(笑)。

負けおしみを言わせてもらうなら、普段時間に追われながらコーディングなんてしないから一度詰まると焦ってしまい必要以上に時間がかかってしまった。 あと250点の問題終わったあと、1000点の問題をオープンするまでクロックが止まってると勘違いしたので5分ぐらいロスしたのも痛いところか。 上を見ると1250点中1100点以上とってる人もいるんですが、マジ? 問題読んでタイプするだけでそれぐらい時間かかりそうな気がしそうなんだけど…。 上には上がいるもんだ。 とにかく、自分もまだまだと実感させられたコンテストだった。 もっとがんばりましょう。

ちなみに、問題の概要は…

Continue reading