Virtual化する社会(Short ver.)

年が明けてから3ヶ月近く経って、新年の抱負も今年の予測も何もないが、今年は Virtual化(Virtualization)がますます進むと考えている。ここでいう「Virtual化」とは、SecondlifeのようなMetaverseだけを意味するのではなくて、もっと広義のVirtualizationのことである。具体的には、Web上の「ID」や「ハンドルネーム」でidentifyされた個人が、現実世界とは別個にWeb世界で活発に行動する傾向が進むということである。

「ハンドルネームでBlogを書く」というこの行為自体、ここで言うVirtualizationの具体例と言えるし、「Amazonで本を買う」「ヤフオクでレア品を競り落とす」という行為もVirtualizationの実例である。各々、AmazonのログインIDやYahoo!のIDで特定される「Web上の個人」が「Web上で商行為を行っている」と言えるからだ。ビジネスにおいて、こうしたWeb上の活動を捉える場合、現実世界のリアルな個人と紐付けて考える必要はない。現実世界における性別・年齢・職業と言った属性情報はWeb上では何の意味もなさず、あくまで「Web上のナニモノか」というidentificationさえできればよいからである。Web上での個人活動は、現実世界と深くリンクしている場合もあれば、全く異なっている場合もある。いずれの場合であっても、Webビジネスに深く関係するのはWeb上の行動でしかなく、それを捉えることが最も大事なのである。私自身を例にとれば、Web上であたかも技術者のように振舞っているTEDDY-Gを、現実世界の商社マンの振る舞いと紐付けて考えることは全く意味がない。寧ろ、「Web上での私」を捉える意味ではDecisionをmisleadする可能性すらあるのだ。

というわけで、既に3ヶ月が経過してしまっているが、今年はこの「Web上の人格」「Identification」に注目している。昨年盛り上がったMetaverseのような直接的なVirtualizationより、もっと深いところでVirtualizeされたサービスとかシステムとか、そういうものをビジネスにしたいというか作りたいというか、そんな妄想に耽る今日この頃である。

| | Comments (4405) | TrackBack (0)

U2Bplayer、改修+ややupdate

YouTube APIGoogle Data APIに統合されて新しくなったので、U2B playerも更新。…って、とっくの昔に出来てたネタを、サーバにUPするのに1ヵ月半もかかってしまうというこの事実。以下、簡単に。

改修したところ
・「お気に入り」「投稿ビデオ」の表示数上限を25個に戻した。
Updateしたところ
・「Today's Top Rated Video」以外に、「Today's Most Viewed Video」「Recently Featured Video」を追加。
Option Toolsで設定できます)

いずれもYouTube APIの変更により可能となったもの。サポートチームが「将来直すかも」と言ってたのはこのことだったのか。

| | Comments (1060) | TrackBack (0)

日本に帰ります

何かバタバタとアメリカに来て早一年、またバタバタと帰ることになりました。
アメリカについて思うところとか、近況とか、お役立ち情報とか、色々書きたいことはあれど、何せ時間がありません。
日本に帰ってから、回想録として諸々記させていただくことに致します。

| | Comments (423) | TrackBack (0)

USBメモリ活用法:ポータブルWebサーバ+ブラウザ+エディタ

ひとつ前のエントリで少し触れたが、USBメモリにソフトをインストールして持ち歩くというのは結構Coolなアイデアである。私自身、1年ほど前から愛用しているのが「USBメモリで開発環境を持ち歩く」というもの。本業が開発者でも何でもない私としては、自宅以外でも、通勤時間とか、次のアポまでの待ち時間とか、そういう空き時間をうまく活用してモノづくりに励みたいところ。しかし、家のPCと会社のPCの両方に同じテスト環境を構築して、常にファイルを同期させておくのは大変だし、そもそも仕事用のPCに余計なソフトは入れたくない。そこで、USBメモリに必要なアプリケーションをインストールして持ち歩くというわけである。インストールといっても、レジストリをいじくるようなソフトでなければ、ただUSBメモリのドライブ上に実行ファイル(exeファイル)を入れておくだけのこと。特に難しいことは何もないのだ。

WebサーバとSQLサーバに関しては、XAMPPを利用。XAMPPには標準でApacheとMySQLとPHP、phpMyAdminがついていて、アドオンとしてPerlやTomcatも用意されている。ファイルの展開はインストーラを使ってもいいし、zipファイルを直接USBドライブの上に解凍してもよい。但し、展開後のファイルサイズがかなりあるので、USBメモリは容量の大きいものを準備する必要がある。以前、XAMPPとMovable Typeを入れたときは、それだけで512MB以上あったので、最低1GBがないときついだろう。USBメモリは差し込むPCによって違うドライブ名で認識されることがあるが、その度にsetup_xampp.batを走らせればApacheのドキュメントルート設定などを自動で変更してくれる。

ブラウザに関しては、Firefox Portableをメインに使用。Tab Mix Plusを使えばセッションを保存できるので、調べものなどの作業途中にブラウザを閉じてしまっても、次回起動時に作業を続けることができる。はてなブックマークdel.icio.usに「あとで読む」とタグを付けて保存しておくより簡単だし、効率的だと個人的には思っている。開発環境としては、やはりFirebugは必須。開発中のスクリプトのテストをするときも、他のサイトのデザインを参考にするときも、欠かせない存在だ。Firefoxはこうして様々なアドオンをお好みで追加してカスタマイズできるのが最大の魅力だが、複数のPCで使うときには全く同じアドオンを揃えるのは面倒。USBメモリで持ち歩けば、常に同じFirefoxを使うことになるから、この問題も解決してくれるのだ。

エディタは、PHP用にはPHP Editor、JavascriptとHTML用にはTerapadを利用。いずれも実行ファイルをUSBメモリ上に置いておくだけで使用できる軽いソフト。これと一緒にPHPマニュアルとほほのWWW入門のWindowsヘルプ版も入れておけば、オフライン環境でもPHPとJavaScriptとHTMLに関する基本的な事項は調べることができる。まあ、鞄の中のスペースに余裕があれば、JavaScriptビジュアル・リファレンスは常に持ち歩いた方がいいんだけど。JavaScript用のエディタは色々探してみたがいいのがなかったので、結局シンプルなTerapadに落ち着いた。文字コードの指定と画面分割ができればそれで十分な気もしている。

Firefox Portableを提供しているPortableApps.comでは、他にもUSBメモリにインストールできる様々なアプリケーションを見つけることができる(今見てみたら、XAMPPも提供されているようだ)。アプリケーションだけでなく、Mac OS Classic 7も提供されているし、LinuxもComing Soonになっている。こういうのを色々組み込んで、USBメモリを差すだけでいつものPCが全く別のマシンに化けるとか、自動的に作業を行ってくれるとか、そういうのもいいかもしれない。


Powered by ScribeFire.

| | Comments (640) | TrackBack (0)

SanDisk CruzerMicro 4GB

stars 衝動買いなんだけどさ

今日、昼ご飯のついでに近くのBestBuyにふらっと立ち寄ってみた。立ち寄ってみた、というか、愛用してたBuffaloの1GB USBメモリの接続部分が歪んでしまったので、大容量USBメモリをチェックするつもりで行ったのだが、そこで発見したのがコレ。4GBの大容量ながら、価格はなんと$40(Amazon.co.jpの価格は1万円近くするんだな…)。本体真ん中のつまみをスライドさせて接続部分を出し入れするのもちょっぴりオシャレ。USBメモリにオシャレさなんて誰も期待しないと思うが、キャップ不要という合理性と、このちょっとしたギミックにやられてしまった。

SanDiskのCruzerシリーズには前からセキュリティ機能がついているが、このシリーズには、それに加えてSkypeをはじめとするソフトウェアがいくつかプレインストールされている。PC本体にインストールせずとも、USBメモリを差すだけでソフトが使えるというのは実は結構便利である。ついでに、この製品が対応しているU3プラットフォームでは、自動起動する付属のソフトでアプリケーションを簡単に追加することも可能。まあ、そんなのなくてもUSBメモリにアプリケーションはインストールできるんだけど、U3対応のアプリケーションが充実していけば便利かもしれない。

ホントはUSBメモリを使ったアプリケーション活用方法についてもうちょっと書こうと思ったけど、今日は眠いのでこの辺で。

hReview by TEDDY-G , 2007/07/06

photo
SanDisk U3対応USBフラッシュメモリ CruzerMicro 4GB
サンディスク 2006-12-08
おすすめ平均 star
starU3ボリュームが邪魔

| | Comments (273) | TrackBack (0)

PEAR::Services_Lingrで日本語を扱うときの注意

Cometを使ったホントの非同期ブラウザチャットのLingr、使ってみるとかなりCool。ブラウザベースだからソフトをインストールする必要もないし、軽くチャットするだけならアカウントを取る必要すらない。まさにインスタントなメッセンジャー。でもってこのLingr、APIまで公開してあり、様々なサービスに展開する可能性を秘めている。実にCool。Lingrの仕組みについては江島健太郎氏のこのエントリを読んでいただくとして、APIを使って何かしたい人には、既に様々なライブラリDeveloper Wiki上で公開されている。いやあ、実に2.0、2.0。

でもって、ライブラリの一つ、Lingr APIをPHPで簡単にいじくることのできるパッケージのPEAR::Services_Lingrを使ってみたんだけど、Room.observeメソッドとかでメッセージを取り出すときに日本語のメッセージがうまく取れない。調べてみたら、Lingr APIが返してくるXML中の日本語が数値文字参照で、そのままだとXML_Unserializerが読んでくれないことがわかった。ので、Services_Lingrパッケージの中のLingr.phpの中でXML_UnserializerにXMLを投げるところの前(94行目あたり)に下記のようなコードを挿入して問題解決。

...
$result = $http->getResponseBody();
$map = array(0x0080, 0xffff, 0, 0xffff);
$result = mb_decode_numericentity($result, $map, "UTF-8" );

$xml =& new XML_Unserializer();
...


UTF-8じゃなくてEUC-JPにするときは、$map=array(0, 0x10FFFF, 0, 0xFFFFFF); とすればよい。これでXML_Unserializerで処理して返ってきた配列がちゃんと日本語で返ってくる。mb_decode_numericentityの使い方については、ここここを参考にした。有難うございます。
ひょっとしたら最新版のXML_Unserializer使えば問題なく動くのかもしれないけど、一応メモ代わりに。…って、Lingr APIをPHPで使いたい人、しかもXML_Unserializerdが何かちゃんと日本語処理してくれない人、ってえらい限定された人向けのエントリだな。

Powered by ScribeFire.

| | Comments (139) | TrackBack (0)

今見ているページにGoogle Mapsを追加するBookmarklet

こないだのG2Gmapの応用。
今見ているページ上で住所部分を選択し、下記のBookmarkletを実行するとページ内にGoogle Mapsを表示する。
地図を表示

Bookmarkletの登録方法は、IEならば上記リンクの上で右クリックをして「お気に入りに追加」を選択。「追加しようとしているお気に入りは、安全でない可能性があります。続行しますか?」と聞かれるので黙って「はい」を選ぶと登録完了。追加先を「リンク」フォルダにするとリンクツールバーに表示できる。
Firefoxの場合も同様に右クリック→「このリンクをブックマーク」で登録可能。このとき、「個人用ツールバーフォルダ」を指定すると、ブックマークツールバー上に表示できる。Operaの場合も同じようにして登録できる。

前のエントリでもちらっと書いたが、知らない土地でレストランやお店の情報を得るときに、ブログや個人のウェブサイトが役に立つことが結構多い。で、そういう草の根情報が地図情報と一緒になってると助かるんだけど、個人サイトでそこまでサポートしてくれていることはあんまりない。そんなとき、このBookmarkletでひょいっとページ上に地図を表示したら便利じゃないかなと。こういう、「ウェブページをお好みでカスタマイズして使う」というのは、Greasemonkey然り、Widget然り、結構当たり前の方法になるような気がする。

Powered by ScribeFire.

| | Comments (312) | TrackBack (0)

"G2Gmap"で超簡単にブログにGoogle Mapsを貼ってみる

そういえばこのブログはビジネス系の話を中心に書くつもりだったんだなあ、と思いつつ、また新しい作りモノ。
”G2Gmap”という名前で、ホントにもう、超簡単にブログやWeb Siteに地図(Google Maps)が貼れる。表示される地図は元のページにオーバーレイ表示されて、マウスでドラッグすることも可能。住所を元に地図を自動表示するから、昔書いたエントリに地図を追加するなんてことも容易に実現できる。

使い方は下記。

1. ブログのどこかに下記のスクリプトタグを埋め込む。テンプレートの中でも、エントリの中でもよい。
  <script type="text/javascript" src="http://www.got2do.com/api/G2gmap.js" charset="utf-8"></script>
2. 地図を表示させたい住所部分の前後に、下記のようなタグを入れる。
  <span class="G2gmap">1600 Amphitheatre Parkway, Mountain View, CA</span>

これだけで、ページ読み込み完了後に、上記2のspanタグで囲まれた部分に"Click To View Map"という表示が追加され、リンクが貼られる。リンクをクリックすると、その部分に地図が表示される仕組み。class指定を"G2gmap"にさえすれば、HTMLタグは別に何でもよい。

実際に設定してみるとこんな感じ。

- Google本社
 1600 Amphitheatre Parkway, Mountain View, CA
- エンパイアステートビル
 350 5th Ave, New York, NY
- 東京タワー
 東京都港区芝公園4-2-8

2年くらい前に「Google Mapsをブログに貼ってみる」(Google Maps->Blog)というネタをやったのだが、未だに「Google Map ブログ」で本ブログを訪れる方が結構いる。つまり、それくらい「ブログに地図」というニーズがある。然しながら、レイアウトを考慮するとブログに地図がイマイチ馴染まないのと、Google Mapsのコードを書かなくてもいいとはいえ、やっぱり手順が面倒だということで、「Google Maps->Blog」は自分でもほとんど使っていなかった。その一方、折角アメリカに住んでるんだから、使えるお店の紹介くらいはブログでしてみたいなという希望もあって、ものすごく久しぶりにGoogle Maps APIをいじって作ってみた(でもないや、MashUp Freak!のときにいじったな)。

そもそも、ブログで地図が必要な場合って、お店とかの場所を紹介するときなんだから、場所(住所)からリンクしとけばいいのである。だからと言って、手作業はやりたくないし、やったとしてもブログから地図サイトに飛んでしまうのは望ましくない。検索エンジンとかで探して辿りついてくれた読者は、お店の場所だけでなく、閉店時刻だとか、オススメのメニューだとか、そういう情報も一緒に手にしたいはずなのだ。でもって、そうした「生の声」を調べる為の情報源としては、草の根なブログしかなかったりするのである。特に、「アメリカのお店に関する日本語の情報」なんて、ロングテールの端っこの方だから、そうそう得られるものではない。

というわけで、次回より本ブログは「Bay Areaのお店紹介ブログ」としてリニューアル致します!


Powered by ScribeFire.

| | Comments (463) | TrackBack (2)

U2B Playerに新機能「Link2B」追加

久々にU2B Playerに新機能を追加しました。その名も「Link2B」(リンクチューブ)。最早名称にYouTubeの名残も何も残ってなくて訳が分かりませんが、U2B Playerを設置してあるページ内にYouTubeへのリンクがあると、YouTubeに飛ばずに、ページ内で大画面再生するようにリンクを変更します。
そんなことしなくても、YouTubeに飛ばしたくなかったらページ内に動画そのものを貼り付ければいいんじゃないの、と思ったりもするのですが、動画紹介よりも文章に重きを置きたい場合とか、多数の動画をひとつのブログエントリ内で紹介したい場合など、動画を貼りたくないケースも生じます。そういう場合には、ごく普通にYouTubeへのリンクを張っておくだけでページ内でポップアップ再生できるので、読者をYouTubeに飛ばしてしまうことなく(逃がすことなく)、動画を紹介できるのでよいのではないでしょうか。例えば次のような感じです(ページ読み込み完了後、リンクをクリックしてみて下さい)。


YouTubeは、Social Serviceの流れ上、必然的に誕生したサービスである。ブックマークの共有(Del.icio.us)、写真の共有(Flickr)、次は動画の共有、というアイデア自体は寧ろシンプルすぎるほどである。然しながら、シンプルさゆえに分かりやすいアイデアと、動画というインパクトの強いコンテンツのお陰で、今やYouTubeはTVに匹敵するほどの影響力を持つ存在となった。例えば、Back Street Boysの口パクをするだけのBack Dormitory Boysは、モトローラのCMに出るほどの有名人になったし、逆に、Lonelygirl15=Bree=Jessica Roseのように、YouTubeをバイラルマーケティングの場として活用する例も登場している。今や、BeatlesでさえもYouTubeをプロモーションの場に選ぶ時代なのだ。また、カノンを弾くギタリストスーパーマリオを弾くピアニストなど、YouTubeがなければその存在を広く知られることのなかった才能かもしれない。その他にも、3DガンダムOTOKO HAZARDMega64-Metal Gear Solidなど、「内輪ウケ」的コンテンツが陽の目を浴びることができたのも、YouTubeあってこそだろう。…


U2B Playerを貼っているサイト上のYouTubeへのリンクは、ページ読み込み完了次第、全部書き換えられてしまうので、この機能が不要な方は、Option Tools上でLink2BをOffに設定して、貼り直してください。ちなみに、小粋空間さんのLiteBox1.0の解説エントリで、U2B Playerと同時に設置できない旨注釈がありましたが、今回の修正でこの不具合も直してあります。たぶん、他のブログパーツ類との相互干渉も解消されているはずです(色々とご確認下さったkatsumipapaさん、有難う御座いました)。原因は前VersionでjQuery.jsを動的に読み込んでいたことだったので、今回のVersionからは利用しないようにしてあります。色んなサイトで簡単に使ってもらうことを前提にしているブログパーツで、あちこちに影響を与えてしまうライブラリに依存するのはダメということですね。


今回のLink2Bについては、U2B Playerと切り離してもいいかなあとか、もっと高機能化してもいいかなあとか思うのですが、その辺はユーザーの皆様のご要望にお任せ致します(ノーリアクションだったらなかったことにする)。

| | Comments (162) | TrackBack (0)

ALL YOUR WEBSITE ARE BELONG TO US

U2B Playerにエイプリルフールのネタを仕込んでおきました。びっくりさせた方、すいませんです。
最初は米国西海岸時間4月1日午前零時にネタバレしようかと思ったが、本ブログを読んでいる方はほとんど日本からのアクセスだと思うので、日本時間4月1日午前零時にネタバレ。
一応、「びっくり画面」は一回しか表示されないようになっているはずですが、もし何か不都合が生じていればコメント欄にて御連絡下さい。早急に対応させて頂きます。ちなみに、元ネタはZERO WINGの「ALL YOUR BASE ARE BELONG TO US」。懐かしいなあ。当時日本人の自分には、これが何であんなにバカウケなのか分からなくて、ネイティブスピーカーのollirodge兄さんに聞いてみたら、「ボビーオロゴンの日本語みたいなもんだよ」と言われて納得。
U2B Playerをはじめ、無償のブログパーツが色々と出ており、皆さん自由にそれを楽しんでいらっしゃるわけですが、無償だけにもしかしたら悪意のあるやつがいるかもしれません。私が善意でツールを無償提供している変人である可能性より、悪意でウイルスを仕込むクラッカーの可能性のほうが高いかもしれないわけで。というわけで今回のネタは、そのような危険性を皆様にリマインドすべく…とか何とかもっともらしいことを言ってみる。
ひそかにjQuery.jsを使わないようになっていたり、他にも近々U2B Playerの機能をUpgradeする予定です。色々書きたいことはあれど、詳細はまた今度。

追記:コメント欄にも書いておりますが、一度びっくり画面が表示されたら、Cookieに情報を保存して、二度目以降が表示されないようにしております。なので、ブラウザのセキュリティ設定でCookieがOffになっていると、4月1日の間中、びっくり画面が表示され続けることになります。但し、CookieのOnについてはセキュリティ上問題が生じることもありますので、Onにすることをお勧めするものではないことを一言申し添えます。

| | Comments (211) | TrackBack (0)

«MashUp Freak!でサービス名をタグクラウド風表示