self memo

号泣

今日のごきげん怒っている
LINE POPでハートが無くなりプレー出来なくなって号泣。

■  [PR]
# by aratafuji | 2013-04-21 10:32

号泣

今日のごきげん怒っている
半分個したパンを食べられて号泣。

■  [PR]
# by aratafuji | 2013-04-13 21:26

iPhoneからこんにちは

アプリから投稿してみる。
出向先からこんにちは。
■  [PR]
# by aratafuji | 2010-11-11 15:15 | つぶやき

Arata Fujimura(@aratafuji)/2009年11月19日 - Twilog


  • [B!] [ET2009]ブリリアントサービスがAndroid向けAR(拡張現実)アプリを開発 - ニューã.. http://bit.ly/2hacFD posted at 03:15:05

  • [exblog] Arata Fujimura(@aratafuji)/2009年11月18日 - Twilog: POST連動型広告ってあるんだろうか?ä. http://bit.ly/43jRK4 posted at 04:22:25

  • 昨日、今日とティモシェンコの露出が多いな。良い事だ。 posted at 12:46:29

  • @wdbear 寒さに負けず、頑張りましょう! posted at 12:47:27

  • [B!] 分割ブラウザ :: Firefox Add-ons: 分割ブラウザ :: Firefox Add-ons分割ブラウザ (Split Browser)... http://bit.ly/3VEdsX posted at 13:31:40

  • 今日は勉強&読書の日としたが、今一はかどらない。 posted at 15:26:06

  • [B!] あと一歩で遊戯王の世界、そらのさんの体験した拡張現実(動画) : Gizmodo Japan(ã. http://bit.ly/1mgcIS posted at 15:37:40




Tags:# 
■  [PR]
# by aratafuji | 2009-11-20 00:00 | つぶやき

Arata Fujimura(@aratafuji)/2009年11月18日 - Twilog


  • POST連動型広告ってあるんだろうか?今書いていた記事内容にマッチした広告を投稿完了画面に表示するイメージ。記事内容解析部分だけ頑張れば、後は検索連動型広告と同じ仕組みでいけるはず。 posted at 09:47:15

  • 投稿ターゲティング広告はどうだろう。過去の投稿内容を元に、投稿主のサイコグラフィックを予測し、投稿主に対してだけ広告を表示するイメージ。閲覧履歴を元にする行動ターゲティングと比較して、かなり精度が高くなると思うのだが。 posted at 09:58:31

  • ブログやミニブログを書いているユーザーが積極的に自分の興味をさらけ出しているのに、そのデータを広告に活かしきれていないのはもったいない。 posted at 10:12:49

  • [B!] Twitter API 仕様書 日本語訳 第三十七版 (2009年11月17日版): Twitter API 仕様書 日本語訳 ... http://bit.ly/3SKmeU posted at 11:27:12

  • [B!] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org: PHPを使って3分で作る... http://bit.ly/xWaAG posted at 11:27:13

  • [B!] まつもとゆきひろ、専大に来たる - スラッシュドット・ジャパン: 徒歩10分圏内なã. http://bit.ly/1hIHSi posted at 11:27:14

  • [B!] asahi.com(朝日新聞社):GPS携帯ゲームで千客万来? 驚く地方の土産店 - 社ä.. http://bit.ly/1YGVnY posted at 11:27:15

  • @wdbear それはwdbearさんの会社の話しですか!? posted at 11:44:02

  • [B!] Twitter、ようやく「友だちを検索」機能のAPIをサードパーティー向けに公開: Twitter... http://bit.ly/meB3w posted at 14:03:07

  • [B!] Excelっぽい機能も付いた検索&ソート&ページング機能付きテーブル実装JSライブã.. http://bit.ly/FBq2q posted at 14:03:08

  • [B!] MOONGIFT: » Web上でシステムログの閲覧、監視「Clarity」:オープンソースを毎日紹介: ... http://bit.ly/2au9TS posted at 14:03:09

  • Arata Fujimuraのよく使う単語は、広告、wordpress、google、落ち、ユーザーです。http://aa.baikaku.com/?name=aratafuji posted at 14:12:33

  • [B!] [Web 2.0 EXPO]「無益なクラウド間戦争は止めインターネットの原点に回帰せよ」--... http://bit.ly/2j0UOC posted at 14:34:56

  • [B!] livedoor Techブログ:アドオンした事がない人が15分間でFirefoxアドオン開発 - livedoor Blo... http://bit.ly/3M8uBj posted at 14:34:57

  • [B!] グーグル、iPhone向け「Google Earth」の新版をリリース--My Mapsに対応:モバイル - CNET Jap... http://bit.ly/5zpmr posted at 14:34:57

  • [exblog] Arata Fujimura(@aratafuji)/2009年11月17日 - Twilog: [B!] 【CakePHP】xhprofでCakePHPのパフォ... http://bit.ly/4toCHG posted at 15:32:46

  • [exblog] PR: 専用サーバーのレンタルサービスなら国内最大級のアイル: 高品質で低ä.. http://bit.ly/4GyelL posted at 15:32:46

  • [B!] PublicEarthはGoogle Mapsに詳細なローカル情報の層をかぶせる–犬がウンチできる公園ã. http://bit.ly/3ZOnf9 posted at 15:38:31

  • @champlasonic 塩酸らしいです。 posted at 19:22:46

  • [B!] 座標の取得(Lat, Lng): 座標の取得(Lat, Lng) aratafuji Google Maps, tool http://bit.ly/rwrnM posted at 19:27:13




Tags:# 
■  [PR]
# by aratafuji | 2009-11-19 00:00 | つぶやき

Arata Fujimura(@aratafuji)/2009年11月17日 - Twilog


  • [B!] 【CakePHP】xhprofでCakePHPのパフォーマンスを丸裸にする | ECWorks Blog: 【CakePHP】xhprofã. http://bit.ly/3ED6Oh posted at 00:45:15

  • [B!] Hadoopユーザー会: Hadoopユーザー会Hadoop, hadoopHadoop Conference Japan 2009まであと3日です。... http://bit.ly/FXzF6 posted at 00:45:16

  • "ウェブ学会シンポジウム受付完了のお知らせ"来たー! posted at 00:45:34

  • #adtechny FeedBack会に参加して考えた事1。モバイルのUIDの話しが特に出なかったが、クッキーなんかよりもはるかに高精度でユーザを一意に認識でき、アドネットワークをまたいで共通に使う事が出来るUIDを使った行動ターゲティングの流れとかは無いんだろうか。 posted at 01:14:26

  • #adtechny FeedBack会に参加して考えた事2。広告最適化(ad-optimize)を人手ではなく機械(アルゴリズム)で行う流れがあるとの事だったけど、この分野が進めば進むほど広告代理店の需要が減っていくようなジレンマが業界内にあったりはしないのだろうか。 posted at 01:19:50

  • #adtechny FeedBack会に参加して考えた事3。1ユーザの立場で考えると、自分のデータを自分自身がコントロール出来ない事に強い抵抗を感じるため、ブラウザを閉じるたびにクッキーを消してしまっている。ユーザにコントロール権を与えるべきではないだろうか。 posted at 01:57:53

  • #adtechny FeedBack会に参加して考えた事4。ターゲティングが進んで、本当にAudienceにとって有益な広告を提供出来るようになったとしたら、その広告の露出場所をAudienceが分からない事はAudienceにとっても広告主にとっても不利益なのではないか。 posted at 12:09:22

  • [B!] TwitterとFacebookで、誰もがアフィリエイトマーケターになる: TwitterとFacebookで、誰ã.. http://bit.ly/dx8mn posted at 12:51:27

  • [B!] Google、Chromeブラウザのエクステンション多数、明日にも発表か?(画像あり): G... http://bit.ly/16TdjP posted at 12:51:28

  • [B!] GeoAPI:モバイルアプリケーションに位置情報サービスを簡単に実装するプログラã.. http://bit.ly/1LUB58 posted at 12:51:28

  • #adtechny FeedBack会に参加して考えた事5。個人的なまとめ。行動履歴、広告露出場所、アルゴリズムに対するコントロール権をユーザに渡す方向に進むべきだと思った。Amazonのおすすめ商品が一番イメージに近い。バナーは決して押さないが、おすすめ商品は買ったことがある。 posted at 12:52:32

  • 思考を本業の方に戻さなければ…。 posted at 12:53:26

  • @zee8 もう動き出してるんですか!? posted at 12:53:53

  • @zee8 迅速に反応してしまいましたー。個人的に、zee8さんが興味持つもの、リスク取ってでもチャレンジするようなものに、とても興味があります。 posted at 13:42:15

  • アテンション・コントロールがうまく出来てない。いかんなー。 posted at 13:47:20

  • いまさらながらgithubに登録し、さらにいまさらながらGravatarを知った。メアドとアイコンを関連付けて、各サービスで共有するって便利だなー。 posted at 14:41:26

  • Cake PHPのMedia Pluginは便利なんだろうけど、お手軽に実装したかったのでImage ビヘイビアを使う事にした。 posted at 14:44:38

  • [B!] Gravatar - Globally Recognized Avatars (グローバルに認識されるアバター): Gravatar - Globally Re... http://bit.ly/2AjQAY posted at 14:55:20

  • [B!] 【CakePHP】「Media Plugin」の概要と構成 | ECWorks Blog: 【CakePHP】「Media Plugin」の概要ã.. http://bit.ly/2knFsn posted at 14:55:21

  • [B!] 海外オサイフケータイ事情 - PHS-MOBILE.COM: 海外オサイフケータイ事情 - PHS-M... http://bit.ly/NnlJG posted at 14:55:22

  • [B!] クリックするたびに画面を保存!ヘルプページ作成などに使える無料ソフト『クリ... http://bit.ly/hjlw1 posted at 15:31:24

  • ○○グループの~が運営するって書かなきゃ信頼されないほど知名度落ちちゃったか…。 RT @akhk: どこかと思ったらエキサイトでわろた。さすがフレンズな会社。○○グループの~が運営するって金融系広告みたいですね。ということで登録してみます(・∀・) RT @ayohata: な posted at 15:41:05

  • [B!] 模型ファクトリー | 新宿の模型・プラモデル・ジオラマのお店: 模型ファクトリー... http://bit.ly/1n8cv5 posted at 16:03:17

  • [B!] SeeSoo -20代限定のイベントコミュニティ-: 何故に20代限定? http://bit.ly/3v2ioW posted at 16:03:18

  • 個人的に面白い。 http://bit.ly/1Jy0bo http://bit.ly/1sTqQa posted at 19:34:22




Tags:# 
■  [PR]
# by aratafuji | 2009-11-18 00:00 | つぶやき

イベントへのタイムシフト参加を実現するために必要なもの

色々とお世話になっている方と、almost.atについてメールでお話しする機会があったので、その時に考えた事のメモ。

Almost.at: 各イベントの現場に実際にいる人からのTwitter発言だけに関心のある人には嬉しいサービス

このサービスを始めて見た時の印象は、2ch Viewerの実況モードを見ている感じに近い。
サービスのコンセプトはニコニコ動画と同様なのだろうが、テキストストリーミングという意味で。

イベント参加者の多くがTsudaり始めたら、人間の能力ではとてもじゃないけど処理しきれないだろうな。
けれどもそれは、リアルタイムと同じスピードでイベントに参加する場合に限っての事であって、イベントへのタイムシフト参加?する場合は特に同じスピードで参加する必要は無い。

時間的、物理的に参加不可能だったイベントに、好きな時間に好きな場所で自分にあったペースで参加できるようになる。これが実現できたら楽しそう!

それを実現するためには、やはりVRのような技術が不可欠なのだろうか。

試合の行われていない国立競技場とかに集まってオーロラビジョンの映像を見ながら熱狂的に応援するサポーターや、ZARDの追悼コンサートに集まるファンとかを見る限り、実際にイベントが行われている会場をとことん疑似体験させる必要は無いのかもしれない。
けれども、カンファレンスのムービー(ライブストリーミングでは無く、録画したムービー)を後から見るだけでは、イベントに参加してる感は全く得られない。

その違いは、参加者同士のインタラクティブ性だろう。
この際、イベントの主体とのインタラクティブ性はどうでもいい感じがする。
どうせ実際のイベントに参加していても、主体とのインタラクティブ性はあまり望めない。

では、イベントへのタイムシフト参加において、どうやったら参加者同士のインタラクティブ性を生み出すことが出来るだろうか。

時空を超えて、対話することは無理だ。
後からムービーを見たユーザーから話しかけられた時に、メールやメッセに転送するとかはどうだろう。
メッセならまだしも、メールの場合は著しくインタラクティブ性が低下する。

常にメッセ立ち上げたPCの前に、自分の分身を座らせておければなー。
お!、自分の分身ボットを作れば良いのか!

完全に人工知能を搭載したボットなんて必要無い。
メッセのログを与える事によって、この状況で、こう言われたら、こう返す、というような学習をさせ続けることは可能だろう。

ということで、イベントへのタイムシフト参加を実現するために必要なものは、自分のコピーボットという結論に達した。

早速IRCボット周りの勉強や、積読状態の集合知プログラミングを読み始めてみようと思う。

■  [PR]
# by aratafuji | 2009-06-03 12:54 | 記事メモ

セカンドライフ

Excite エキサイト : ITニュース

終わったものだと思ってた…。
■  [PR]
# by aratafuji | 2009-05-18 16:44 | つぶやき

IEのバグ?

以下の記事を読んだ。

Internet Explorerでページが真っ白になるバグ

パッと見した時点で、
title要素でマルチバイト使う前にchasetを指定しなきゃダメに決まってるじゃんか!
それをバグと言われたらIEかわいそう!
と思ったのだがちょっとだけ調べてみた。

まずはW3C勧告文書のHTML 4.01仕様書(日本語訳)を確認。

以下が該当部分かと思われる。
5.2.2 文字符号化方法の指定
以上を要約すると、本仕様に適合するユーザエージェントは、文書の文字符号化方法を決定する場合に次の 優先順位を守らねばならないということである。優先順位の高いものから低いもの順に以下の通り。

1. HTTPヘッダのContent-Typeフィールドの、charsetパラメータ。
2. META要素で、http-equiv属性値がContent-Typeかつvalue属性の値にcharset情報があるもの。
3. 外部リソースを指している要素に設定されているcharset属性値。

という事で試してみた。

環境は以下の通り。
ブラウザ:IE7
テスト用HTML
<html>
<head>
<title>Internet Explorerでページが真っ白になるバグ - IDEA*IDEA ~ 百式管理人のライフハックブログ ~</title>
</head>
<body>
test
</body>
</html>

※charsetはUTF8

最初にHTTPヘッダのContent-Typeフィールド未出力でアクセス。
確かに何も出力されない(ページが真っ白)。

次に、.htaccessに以下を追記。
AddType "text/html; charset=utf-8" .html

IEを再起動してアクセスしてみると、ページタイトルもコンテンツも正常に表示された。

IDEA*IDEAの人の環境(IEのバージョン、HTTPのレスポンスヘッダ、外部リソース内のcharset)が書いていないので何とも言えないが、自分が確認する限り、(今回の点に関しては)IE7はW3C勧告に準拠してると思う。

これについてちゃんと書いてる人がいた。
charsetに関する注意書き
というわけで、「HTML文書公開者に、META要素でcharsetを指定するように啓蒙する」のは正しくありません。HTTPサーバ管理者に、HTTPヘッダにcharsetを付けるように啓蒙しなければいけません。

気を付けます…。

Tags:# # # 
■  [PR]
# by aratafuji | 2009-04-02 12:39 | レポート

新規サービスリリース完了

前職であるエキサイトから発注してもらっていた新規サービス(キッチン)のリリースが無事完了。
一昨日リリースし、昨日引き継ぎを行い、今日から自社に復帰。

直近での業務が無かったため、今日は以下のような事をしてた。
- 作りたいiPhoneアプリがあるので、目指せ!iPhoneアプリ開発エキスパートを見ながらサンプル作成
- ついでにiPhone Dev Centerのドキュメントもパラパラと閲覧
- 次に作るサービスはぜひRailsで作りたかったので、RailsによるアジャイルWebアプリケーション開発Rubyレシピブックでお勉強
- Rails使うならAptanaだと前に聞いてたので、とりあえず自前のサービス(PHP)をsamba経由でプロジェクトとして読み込み、ちょいっと編集

自前のサービスにFlashを組み込みたいと思っていたが、AS3、Flexの勉強は放置中ー。
OpenID, OAuth, OpenSocial辺りも勉強したいとは思ってるけど、出来てないー。
うーん、学ぶべき事多すぎ…。
まあ、それが楽しいからWebアプリケーションエンジニアを続けていると信じたい。
■  [PR]
# by aratafuji | 2009-04-01 18:38 | つぶやき

年末年始に考えた

年末に以下のエントリーを読んで、とても同感した。
「はてな」がWeb制作を「ものづくり」と呼ぶことにかなり違和感を感じるのはなぜなんだろう?
※別にはてながどうこうというわけではなく、自分がやっているWebアプリケーション開発という事自体をとても「ものづくり」とは言えないなという意味で。

年始にテレ東で放送していた世界大工王決定戦という番組を見てて、拘り持って家を作っている職人さん達が、何だかとても羨ましく思えた。
※鳶やってた友達に話したら、人前で喧嘩するなんてあんなの職人じゃねーと言っていたが…。

この2つのインプットを通して(はまちちゃん同様)ぼくの中でなにかがハジけた。

よくシステム開発は建築に例えられるが、自社サービスに限った場合、自分がやっている事なんてどっかしらで無料で手に入るパーツを自分の家の庭で組み合わせて、ちょっと外観を飾り付け、少しだけ珍しい家具が置いてあるだけみたいなものだ。
こんなんでは、とても自分は「ものづくり」をしていますと胸を張って言えない。
受託は食いつなぐためにやらざるえないけど、いずれは自社サービスのみで食っていけるようになりたいなんて安易に言っていた自分が恥ずかしい。

当たり前の話しだが、クライアントが他人ならば受託開発であり、クライアントが自分(自社)ならば自(社)サービスになるわけで、システム開発部分でのやること自体は全く変わらないはずだ。

安直に、受託開発はつまらないし大変だから極力避けたい、自社サービスは作ってて面白いからやりたいなんて考えず、お金を払ってでもシステムを作ってほしいと考えているクライアントがいるのであればとことん拘ってシステムを構築し、自分がお金を払ってでも作りたいと思うサービスがあるのであれば、自分自身がクライアント兼請負業者になれば良いんだろうな。

そういう視点で考えると、今まで自社サービスとしてやりたいと思っていた(もしくは作った)サービスの中で、お金を払ってでも作りたいようなサービスがはたしてあったんだろうか…。

とても当たり前の事を書いている気がするが、そんな事も分かっていなかった。

- クライアントが他人ならば受託開発、クライアントが自分ならば自サービス
- どちらもやる事自体は同じであり、品質、モチベーションが変わる事自体が適切ではない
- 自サービスを考える上で、自分自身お金を払ってでも作りたいサービスかどうかという点を基準にする

こんな当たり前の事をしっかりと心に刻み、今年も頑張っていこうと思う。
■  [PR]
# by aratafuji | 2009-01-06 20:45 | つぶやき

「一日一選」というサービスを作ってみた

先週から今週にかけての間で、「一日一選」というサービスを作ってみた。
一日一選
モバイル向けのみだけど、何とか動くようになったかと。

このサービスの主な機能は、モバイルから画像をメール投稿出来るだけだ。
ただそれだけ。
しかも、1日に投稿できる画像は1枚のみっす。
※同日に再投稿すれば、上書きされる

元はといえば、このサービスは奥さんの企画だ。
珍しく奥さんと意見が一致した、記念すべきサービスなのである。
これぞ正しく、"初めての共同作業"。

私のように、携帯のカメラ機能を全く使えていないような人がもしいたら、お気軽に使ってみて頂けるとありがたいっす。

継続してみると、面白い物が出来るはず!と信じて、まずは自分だけでも使ってみようと思います。
■  [PR]
# by aratafuji | 2008-12-17 00:31 | つぶやき

日本人受けするWebサービスの要素

前職の上司だった方と、日本人受けするWebサービスの要素って何だろうと話した機会があったので、その時に考えた事のメモ。

個人的に、以下の3要素ではないかと考えた。
1.習慣化
2.匿名性
3.ゆるい繋がり

1.習慣化
個人的に、ここ1年ほどの間で習慣化した事として、"体重、体脂肪測定"、"家計簿"がある。
"体重、体脂肪測定"は毎回の結果をカレンダーに記述しており、一日でも忘れる(カレンダーに穴が開く)と、とても残念な気持ちになる。
"家計簿"はフリーのソフトウェアを使って付けているが、こちらは1日忘れると、翌日がかなり面倒になるので、極力その日の収支はその日中に入力するようにしている。
これらの作業は、始めた頃こそ意識しないと忘れてしまっていたが、頑張って続けていくうちに、夜風呂からあがったら"体重、体脂肪測定"⇒カレンダーに記述、寝る前⇒"家計簿"という行動が習慣化され、今では決して忘れる事は無くなった。
※覚えていても、面倒だからパスする日もあるが…

上記の例のように、一度習慣化させ、後は無意識に行動させる事が重要ではないだろうか。

自分が関わったWebサービスの中で、この習慣化がうまく働いたと思われる例が2つほどあった。
一つはモバイル向けの懸賞サイトである。
そのサービスはただ単に一日一回リンクが着いたメールが携帯宛に送信されるだけのものだ。
リンクを押すと、何のエフェクトも無しに、98%ぐらいの確率で"はずれ"とだけ表示されるのだが、そのサービスのCTRは70%近くあったと記憶している。
私自身、システム確認用に登録していたのだが、毎日大体決まった時間にメールが届き、リンクを押し、はずれを見て携帯を閉じるという行動が、習慣化されていた。
※時たま"当たり"が出ても、いつもの習慣で携帯を閉じてしまう

もう一つはレシピサイトだ。
こちらのサービスは、毎週月曜日に一週間分のレシピが更新されるのだが、他の日に比べて月曜日のアクセス数は群を抜いていた。
きっと、月曜日にそのレシピサイトにアクセスして、その週の献立を考えるという行動が習慣化されたユーザーの方々が多かったのではないだろうか。

ちなみに、この"習慣化"と"日本人向き"との関連性は不明…。


2.匿名性
個人的には"実名"のメリットを感じているのでとても残念なのだが、やはり日本では"匿名性"を前面に押し出していかないと流行らないのだろうと感じている。
犯罪予告でもしない限りは身元がばれないような安心感を出していった方が、やはりユーザーに受け入れられるのであろう。


3.ゆるい繋がり
多くの人がmixiのガッツリとした繋がりに疲れているのではないだろうか。
mixiで日記を書いているユーザーは、この日記を誰が読んでいて、それを読んだらどう思うかを、多少なりとも考えていると思う。
だからこそtwitterのように、基本は誰も見てないだろうというようなミニブログがある程度受け入れられたのではないだろうか。
2chでいうならば、"この速さなら言える!"というノリである。

twitterのような、自分の友人関係でグルーピングするようなミニブログは腐るほどあるからもう需要は無いかと思うが、他の切り口でグルーピングするようなミニブログはまだいけるのではないだろうか。
※スレッドという要素でグルーピングしたのが2ch、動画コンテンツという要素でグルーピングしたのがニコニコ動画というイメージ
そのグルーピング要素の一つとして位置情報があるかなと考えている。

結論として、上記3要素を満たす、最も日本人向きのWebサービスは、やっぱり2chだったか。


書いているうちに、何だかとっても当たり前の事を書いている事に気付いた。

しかしながら、何か新しいサービスを考える際に、とっても当たり前の事をすっ飛ばして、"こんなサービス面白いかも"、"こんなサービスがあれば便利かも"などと考えてしまう事が多々あるので、自分への戒めの意味で投稿しておく。


■  [PR]
# by aratafuji | 2008-12-09 05:37 | つぶやき

CakePHPでのサービス開発

今日からCakePHP(1.2)を使って、新しいサービスを作り始めてみた。

今日やった事のメモ。

Net_UserAgent_MobileをcakePHP1.2RC2で使う
[cakePHP1.2]モバイルサイトとPCの切り分け その2
CakePHP 1.2で携帯用ビューを表示する
CakePHP 携帯専用サイトを作成する
上記の記事を参考にして、以下のコンポーネントを作成。
app/controllers/components/mobile.php
App::import('Vendor', 'pear_ini');
App::import('Vendor', 'Net/UserAgent/Mobile',
array('file' => 'Net' . DS . 'UserAgent' . DS . 'Mobile.php'));

class MobileComponent extends Object {
function startup(&$controller) {
$this->controller = $controller;
$mobile = &Net_UserAgent_Mobile::factory();
// 非モバイル
if ($mobile->isNonMobile()) {
// PCからモバイル用のURLにアクセスがあった場合は、PCのURLにリダイレクト
if(preg_match("/^m\//", $this->controller->params['url']['url'])){
$url = '/'.preg_replace("/^m\//", "", $this->controller->params['url']['url']);
$this->controller->redirect($url);
}
// モバイル
}else{
// モバイルからPC用のURLにアクセスがあった場合は、モバイルのURLにリダイレクト
if(!preg_match("/^m\//", $this->controller->params['url']['url'])){
$url = '/m/'.$this->controller->params['url']['url'];
$this->controller->redirect($url);
}
// Docomoでguid=ONが付いていなかったら付ける
if ($mobile->isDoCoMo()) {
if(!isset($this->controller->params['url']['guid']) or
$this->controller->params['url']['guid'] != 'ON'){
$url = '/'.$this->controller->params['url']['url'].'?guid=ON';
$this->controller->redirect($url);
}
// 全てのリンクに、guid=ONを付ける処理
output_add_rewrite_var('guid', 'ON');
}
// UID取得
$this->controller->uid = $mobile->getUID();
// SoftBankは下15桁を使う
if ($mobile->isSoftBank()) {
$this->controller->uid = substr($this->controller->uid, 1, 15);
}
}
}
}
?>

このコンポーネントを、app/app_controller.phpで読み込むようにした。
app/app_controller.php
class AppController extends Controller {
// 共通コンポーネント
var $components = array('Mobile');

// 共通ヘルパー
var $helpers = array('Html', 'Xml');

// UID
var $uid;

function beforeFilter() {
}
function beforeRender() {
if (isset($this->params['prefix']) or isset($this->uid)){
// モバイル用レイアウト設定
$this->layout = 'mobile';
// モバイル用ヘルパー設定
array_push($this->helpers, 'Mobile');
}else{
// PC用レイアウト設定
$this->layout = 'pc';
}
}
}
?>

prefixの設定は、以下の通り。
app/config/routes.php
    Router::connect('/m/', array('controller' => 'pages', 
'action' => 'index', 'prefix' => 'mobile'));
Router::connect('/m/:controller', array('prefix' => 'mobile'));
Router::connect('/m/:controller/:action', array('prefix' => 'mobile'));
Router::connect('/', array('controller' => 'pages', 'action' => 'index'));

※本来は下2行だけで良いはずなのだが、それだとモバイルのTOP(/m/)にアクセスすると、うまく動かなかったため、暫定的に上2行も記述。こちらは引き続き調査する。

後は、各コントローラーにPC用のアクション(index)とモバイル用のアクション(mobile_index)を実装し、各ビューも、PC用のビュー(index.ctp)とモバイル用のビュー(mobile_index.ctp)を作成。

ここまでで、PC、モバイルのアクション、ビューの切り分け、モバイルの場合はUID取得まで出来るようになった。

一番はまったのは、エラー(404とか)用ビューの切り分け。
上記prefixの設定で、PCでの404はapp/views/errors/error404.ctp、モバイルでの404はapp/views/errors/mobile_error404.ctpが呼び出される事を期待したが、うまくいかず…。
携帯サイトの404ページの作成方法
こちらを参考にしてみても、
$this->viewVars['code']
には何もセットされない…。
[php][CakePHP]viewVarsって使っていいの?
これとか見ると、そもそもviewVarsは参照しちゃダメっぽかったので、結局はエラー用のビューを以下のようにして、PCとモバイルを切り分けた。
app/views/errors/error404.ctp
if(isset($this->params['prefix'])){
echo $this->renderElement("mobile_header");
}else{
echo $this->renderElement("header");
}
?>
ページが見つかりません
if(isset($this->params['prefix'])){
echo $this->renderElement("mobile_footer");
}else{
echo $this->renderElement("footer");
}
?>


今までCakePHPはチュートリアル見てサンプル程度しか書いた事無かったけど、いざ使い始めてみるとかなり楽しい!

明日からも没頭して、今週中にサービスを立ち上げたいと思う。

■  [PR]
# by aratafuji | 2008-12-09 02:38 | レポート

はてラボの新サービス

はてラボに新サービスが追加された。
はてラボに3つの新サービスを追加しました
サラっとしか見てないけど、かなりの脱力感を感じた。

・全く面白いと思えない。
・全く便利だと思えない。
・全く先が見えない。

これらのサービスをラボで試してみたフィードバックを、一体何に活かしていこうと考えているんだろう?
はてラボって、はてな社員の砂場なのか?
はてなカウンティングの受けが良かったら、ブログパーツでも量産するのか?
はてなニュースのターゲットは、bogusnewsなのか?

gooラボペパボカヤックEDGEえがちゃん.netなどの試みの方が全然面白いし、興味深い。

勝手にはてなを特別扱いしてたけど、サービスの企画力という面では全然大した事ないのかもしれないと思った。

■  [PR]
# by aratafuji | 2008-12-04 20:39 | つぶやき

コメントを頂いた

前回の記事でトラックバックさせて頂いた社長さん(と思われる方)からコメントを頂いた。

非公開コメントだったので内容は伏せておくが、とても真摯なメッセージだと感じた。

この社長さんのような著名な方と私のような一エンジニアが、数行のテキストとはいえ意見を交わす事が出来るなんて、やっぱりインターネットは素晴らしい!

ウメダモチオイズムのエバンジェリストとして、今後も頑張っていこうと改めて思えた。
Webエンジニアとして、今後も頑張っていこうと改めて思えた。
■  [PR]
# by aratafuji | 2008-11-14 19:03 | つぶやき

'梅田望夫の「はてブがバカすぎる」議論について'を読んで

梅田望夫さんのつぶやきが議論をよんでいるみたいだが、ウェブ進化論 本当の大変化はこれから始まるや、シリコンバレー精神 -グーグルを生むビジネス風土を読んで気分アゲアゲになった私は、梅田望夫さんの肩を持ちたいと思う。

色々と批判的な記事を読んだが、特に以下の記事が引っかかった。
梅田望夫の「はてブがバカすぎる」議論について:
実行する勇気もない犯罪予告がいっぱいあって、
海外に行ったこともないのに、韓国・中国の批判をして、
英語のニュースを読めないのに、反米主義を唱えて、
発売前の本やゲームの批評がアマゾンにいっぱいあって、
つきあったことないのに、女性をスイーツ(笑)呼ばわりして、
彼女いない暦=年齢なのに、結婚は無駄だと延々と議論していて...

このように、インターネットの現状を徒然に書いているが、そんな事は言われなくたって知っている。
問題はその現状を認識した上で、どのように行動を起こすかではないのだろうか。

この社長さんは、そんなインターネットの現状が理想とするインターネットの姿なのだろうか。
であれば、それでも良いだろう。

しかしながら、私は今のインターネットが決して理想の姿だとは思えない。

「買ったことのない本に対する書評の批判」が溢れるより、該当の記事を読んで興味を持ったのであれば、まずは対象の本を読み、自分自身で考え、その上で会った事も無い人達と熱く議論できるような世界にしたいと考えている。

不条理な現実に遭遇した際に、"そんなもんだよ"なんて冷静に受け流すような人間にはなりたくない。
少しでもその不条理な現実に立ち向かっていくような、熱い人間であり続けたいと思う。

この社長さんのプロフィールを見たら、
好きな言葉は「C言語は世界を救う」。

とあった。
社長さんの経歴を読む限り、この'世界'とはインターネットの事だけを指しているわけではないだろう。
しかしながら、このような熱い言葉を好きな言葉に掲げている方が、このような冷めたコメントをしてしまう事が残念でならない。

■  [PR]
# by aratafuji | 2008-11-10 13:31 | つぶやき

はてなブックマークリニューアル発表会レポートを読んで

はてなブックマークリニューアル発表会が行われたとの事で、以下のレポート等をざっと読んだ。

はてなブックマークのリニューアル発表会に潜入してきた
はてなブックマーク新バージョン速攻レビュー!
はてなブックマークリニューアル発表会見に行ってきた。検索すごかった。
はてなブックマーク2 ──「はてなブックマーク」リニューアル発表会

※増田にもまとまってた
はてなブックマークリニューアル発表会レポート一覧


検索が凄いとか、UIが便利になってるとか、「お気に入り」が強化されたとか書かれているけど、率直な感想としては、"ユーザーの能動的なアクションを期待しすぎ!!"という一言に尽きる。


私ははてなブックマークを2つの目的で使ってきた。

1つは個人的なブックマークとしての機能だ。
会社のPCでも家のPCでもネットサーフィンをするので、使っている環境(PC)を意識する事無く気になった記事をブックマークする事ができ、どの環境からでも過去にブックマークした記事を探す事ができるのはとても便利である。

2つ目は、今のネットのトレンドを追いかけるためだ。
人気エントリーと、注目エントリーのFeedをRSSリーダーで常に見ていれば、大体のトレンドをつかむ事ができると思っている。


前者に関しては、UIの向上、検索機能の強化はありがたいと言えばありがたいが、別に今のままでも特に困った事は無い。
私が今後のはてブに期待していたのは、後者のフィルタリングについてである。

人気エントリーと、注目エントリーを見ていても、タイトルで興味を持つのは5件に1件程度、実際にリンクをクリックして元記事を読むのは10件に1件程度だと思う。
興味が持てない残りの8割程度の記事を、自分専用にフィルタリングして表示しないようにしてくれたら、どんなにありがたい事だろう。

もちろん新機能どころか、今現在の機能を使う事でもある程度のフィルタリングを行う事は可能なのかもしれない。
しかしながら、ぶっちゃけそれらの能動的なアクションは、とても面倒でならない。

私がはてなに対して、何の情報も与えずに"フィルタリングしろ!"と言っているのであれば、それは無茶な話だ。
しかしながら、私ははてなに対して大量の情報を与えている。

- 私がWeb開発関連のTipsがあればリンクをクリックし、高い確率でブックマークしている事をはてなは知っているはずだ。
- 私が新しいWebサービスに関する記事があればリンクをクリックし、たまにブックマークしている事をはてなは知っているはずだ。
- 私が英語の勉強法に関する記事があればリンクをクリックし、たまにブックマークしている事をはてなは知っているはずだ。
- 私がネットで炎上しているような話題があればリンクをクリックし、滅多にブックマークしていない事をはてなは知っているはずだ。
- 私がアニメやゲーム等の記事があれば、全てスルーしている事をはてなは知っているはずだ。
- 私が3次元のエロネタがあれば、夜間、休日に限ってリンクをクリックし、決してブックマークしない事をはてなは知っているはずだ。

これほどの行動履歴情報をはてなに与えているにもかかわらず、それでもなおユーザーに対して能動的なアクションを期待するというのだろうか。

ベイジアンをカテゴリー分けに生かすのも良いけど、ぜひユーザー固有のフィルタリングとしても応用してもらえないものだろうか。

私が理想と考えている人気エントリー、注目エントリーのUIは、Gmailに近いものだ。
- 記事に対して、タグを付ける事ができる
- 特定の単語や、元記事のドメインを元に、記事に対して自動でタグを付ける事ができる
- 自分にとっての不要な記事は、spamと認定する事ができる
- システムによってspamと判断された記事は、spamフォルダに振り分けられる
- spamフォルダに振り分けられた記事に対して、spam認定を解除する事ができる

名づけて、"パーソナライズドホッテントリ"。

mailと違ってspam基準が個人によって全く異なるため、難易度は高いであろう。
しかしながら、技術力が売りのはてなが発表会まで開くぐらいならば、これぐらいの事をして欲しかった。
今後に期待したい。

■  [PR]
# by aratafuji | 2008-11-05 15:25 | つぶやき

BOOK OFF最高!

会社帰りにぷらっと立ち寄ったBOOK OFFで、以下の本を購入。

RESTful Webサービス
Leonard Richardson / / オライリー・ジャパン
ISBN : 4873113539


ネットワークセキュリティHacks 第2版 ―プロが使うテクニック & ツール 100+
Andrew Lockhart / / オライリー・ジャパン
ISBN : 487311327X


なんと、どちらも105円だったので、計210円で購入完了。

「せどり」なんていう小遣い稼ぎが成り立つわけだ。
■  [PR]
# by aratafuji | 2008-10-22 00:46 | つぶやき

PHPで文字列に絵文字が含まれているかを判別する方法

PHPで、変数内の文字列に絵文字が含まれているか否かをシンプルに判別する方法が無いかなーと、PHP×携帯サイト デベロッパーズバイブルを読んでいたら、以下の記述が目に止まった。
○PHPで絵文字を使う
絵文字を扱うためには、そのすべてにおいてCP932を利用できる環境を用意する必要があります。PHPでこのCP932を利用するには、Shift_JISの代わりに「SJIS-win」を使うことで利用することができるようになります。
[P.140]


てことは、こんな感じで判別出来ちゃうのかなーと、試しに以下のコードを書いてみた。
// $sourceに絵文字が含まれているか否かを判別
// 文字エンコードはSJIS
if(mb_convert_encoding($source, 'SJIS-win', 'SJIS') == $source){
print "絵文字なし";
}else{
print "絵文字あり";
}

意図したとおりに動いてる…。

うーん、こんなんで良いのか?
何か大きな事を見落としているような気がしてならない。

誰かツッコミを入れてもらえると、とてもありがたいっす。
■  [PR]
# by aratafuji | 2008-10-16 00:25 | つぶやき

Ezサービスイン&SoftBankキャリア試験合格

徹夜作業となってしまったが、何とか無事にEzでサービスインする事が出来た。
疲れた体に鞭打って、再度SoftBankのテスト環境を構築し、昼過ぎに帰宅。

ギネスビールで一人祝杯をあげながらメール受信すると、なんとSoftBankからキャリア試験の合格通知が!
良い事も続くもんだ。

今日はただただぐっすり眠りたい。

■  [PR]
# by aratafuji | 2008-08-21 16:03 | つぶやき

SoftBankキャリア試験(再度)不合格

昨日に引き続き、SoftBankキャリア試験に落ちた…。
胃に穴が開きそう。

今回の落第理由。

着うたフルファイルが「着うた・メロディ」フォルダにDLされます。着うたフルファイルは「ミュージック」フォルダにDLされるご対応をお願い致します。

納得できん。正直、全く納得できない。

SOFTBANKの仕様書には、確かに"保存フォルダの指定"方法が記載されている。
Separate Deliveryを利用して配信する場合、暗号化前のコンテンツのMIME型が"audio/mp4"であるファイルは、保存先のフォルダをCP様で指定して配信することも可能である。

可能である。
可能なのは分かった。

そして、ダウンロード方法の部分には、以下の記述が。
保存先フォルダ指定値(パラメータ名は、キャリア固有の名称なので、伏せておく)は省いても構わない。

省いても構わない。

「保存先を指定できるよ、省略も可能だよ。」というパラメータが未指定だったからと試験に落とすなんて、納得できん。

"コンテンツチェックのポイント"なるドキュメントも再度確認したが、着うたフルファイルを「ミュージック」フォルダにDLされるようにせよなんて記述は見当たらない。
※大量に存在するドキュメントのどこかにひっそりと書いてあるのかもしれないけど…。

サービスのリリース日に影響が出る可能性が高くなっちったー。
確かにシステムのせいなんだけど、、、。

めっちゃ憂鬱な気分どす。
■  [PR]
# by aratafuji | 2008-08-19 23:00 | つぶやき

SoftBankキャリア試験不合格

2つ目の山場だったSoftBankのキャリア試験で不合格になった。
こちらの試験は、直接サービスのリリーススケジュールには(今のところ)影響しないとはいえ、かなりショック…。

不合格の理由は、下記2点。

1.Separate Delivery方式を利用したコンテンツ・キー課金を行うと、端末に"無効なコンテンツのためダウンロードできません"と表示され、課金、ダウンロードとも行えない。

こちらに関しては、今朝の時点でCPさんからも指摘されていた。
不可解なのが、昨日までテスト用に使っていたSoftBankの920Pでは再現しない事だ。
CPさんは、923SH、824SHでも同様の現象が発生したとの事。
世代(C型、P型、W型、3GC型)で挙動が異なる事は覚悟(そして対応)していたが、同じ3GC型でも挙動が異なるとなると、かなり辛い。

コンテンツのダウンロード部分は、DRMをかけているとはいえ直接抜かれる事を避けたいため、phpで認証の上、レスポンスヘッダとともにバイナリを出力するようにしていた。
やはりこの部分が怪しいので、取り急ぎコンテンツ自体をドキュメントルート配下に移動し、コンテンツのダウンロード部分はApacheに任せるように変更。
CPさんに再度確認を依頼すると、やはりうまくいったとの事。
セキュリティ的な理由と、コンテンツのダウンロード履歴をダウンロードphp内で行っている理由から、なんとか現状の作りで対応したいと考え、とりあえずうまくいく時とうまくいかない時のレスポンスヘッダを比較する事に。
モバイルサイトをPCで見るためのツールやFirefoxアドオンを参考にして、Proxomitronと、SwitchProxy Tool(FFのアドオン)をインストール

●うまくいく時のレスポンスヘッダ
HTTP/1.1 200 OK
Date: Mon, 18 Aug 2008 04:16:49 GMT
Server: Apache/2.2.3 (Debian) PHP/5.2.0-8+etch11 mod_perl/2.0.2 Perl/v5.8.8
Last-Modified: Fri, 15 Aug 2008 02:52:36 GMT
ETag: "c038c-304dd-b6c3c500"
Accept-Ranges: bytes
Content-Length: 197853
Content-Type: application/vnd.oma.drm.message; boundary=boundary-1


●うまくいかない時のレスポンスヘッダ
HTTP/1.1 200 OK
Date: Mon, 18 Aug 2008 04:07:09 GMT
Server: Apache/2.2.3 (Debian) PHP/5.2.0-8+etch11 mod_perl/2.0.2 Perl/v5.8.8
X-Powered-By: PHP/5.2.0-8+etch11
Pragma: no-cache
Content-Length: 197853
Content-Type: application/vnd.oma.drm.message; boundary=boundary-1


まずは、
"Accept-Ranges: bytes"
がないということで、ダウンロードphpに
header('Accept-Ranges: bytes');
を追加。

次に、"Etag"出してないということで、313.PHP で Apache 風 ETag の生成を参考にして、
$stats = stat( $_SERVER['SCRIPT_FILENAME'] );
$etag = sprintf( '"%x-%x-%x"', $stats['ino'], $stats['size'], $stats['mtime'] );
header('ETag: '.$etag);
を追加。

次に、うまくいかない時の"X-Powered-By: PHP/5.2.0-8+etch11"が鬱陶しいので、php.iniの中でexpose_phpをOnからOffに変更し、Apacheリスタート。

こうする事で、レスポンスヘッダは以下のように変わった。
HTTP/1.1 200 OK
Date: Mon, 18 Aug 2008 05:27:12 GMT
Server: Apache/2.2.3 (Debian) PHP/5.2.0-8+etch11 mod_perl/2.0.2 Perl/v5.8.8
ETag: "c038c-304dd-b6c3c500"
Accept-Ranges: bytes
Pragma: no-cache
Content-Length: 197853
Content-Type: application/vnd.oma.drm.message; boundary=boundary-1

よし、"Pragma: no-cache"以外は同じになったという事で、再度CPさんに確認依頼。
すると、なんとまだ駄目だとの事…。
なぜだ!

ふとDRMかけたdm(drm.message)ファイルの中身を見ると、マルチバイト文字が含まれてる!
phpが出力時に変換している事が原因に違いないと考え、ダウンロードphpに、
mb_http_output("utf-8");
を追加し、再度CPさんに確認依頼。

すると、なんとまたもや駄目だとの事…。
なんだってんだ!!

やばい、時間が無い。
とりあえずdmファイルをドキュメントルート配下に配置する事によりダウンロードは出来るが、履歴が取れない。これも致命的。

ここで、ダウンロードphpでの対応を諦め、SoftBankからダウンロード完了通知を受け取るようにパラメータを追加し、受け口の履歴書き込み用phpを慌てて作成。

再々度CPさんに確認依頼すると、今度はOKとの事。
なんとか目的は達したが、かなりSoftBankに依存した作りになってしまった。
この対応を完了したのが今日の16時ぐらい。

後からログを見て分かったのだが、SoftBankが試験をしていたのは今朝の10時頃だったので、時既に遅し。


もう一つ試験に引っかかった点。

2.C型端末でアクセスすると、UIDを通知していても、"UIDを通知して下さい"とのエラーメッセージが表示される

あーーー、やっちまった。
そもそも今回のサービスの対応端末は、3GC型のみという仕様だったので、C型端末からUIDを取得する処理を入れていなかったのだが、エラーチェックする順番が、
1.UIDが取れるか?
2.対応端末(3GC型)か?
という順番にチェックしてたので、C型端末にて"対応端末ではありません"とのエラーを表示できていなかった。
これは、完全に俺のミスだ。
エラーチェックの順序を、
1.対応端末(3GC型)か?
2.UIDが取れるか?
に変更し、C型端末がUIDを通知してようがしてまいが、"対応端末ではありません"を表示するようにした。

何とか次の再試験で通ってくれー!

---------- 追記(2008/08/18 20:37) ----------
うまくいく時とうまくいかない時のレスポンスヘッダを改めて見てみたら、"Last-Modified"を出力してないじゃん!という事に気づいたので、
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
を追記。
そうする事により、レスポンスヘッダは以下のようになった。
HTTP/1.1 200 OK
Date: Mon, 18 Aug 2008 11:33:43 GMT
Server: Apache/2.2.3 (Debian) mod_perl/2.0.2 Perl/v5.8.8
Pragma: no-cache
Accept-Ranges: bytes
ETag: "bd04d-27b5-48a95dd1"
Last-Modified: Mon, 18 Aug 2008 11:33:43 GMT
Content-Length: 176819
Content-Type: application/vnd.oma.drm.message; boundary=boundary-1

希望を持って、再度テストするも、やはり駄目…。

お手上げっす。


■  [PR]
# by aratafuji | 2008-08-18 20:09 | つぶやき

本買った

元同僚の影響で、本を2冊購入。

[24時間365日] サーバ/インフラを支える技術 ~スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ) (WEB+DB PRESSプラスシリーズ)
今まではインフラ部任せにしていた部分も、今後は自力で何とかしなくてはならないと思い購入。



集合知プログラミング
今後作っていきたいサービスに生かせそうと思って購入。



ユーザーのデモグラフィー、サイコグラフィー、ジオグラフィーなどを元に、無数にあるWeb上の情報からユーザーに最適な情報をレコメンド出来たら面白そう。

問題は、どうやって情報を集めるかだなー。
ユーザーが自らの情報を与えれば与えるほど、本当に価値あるレスポンスを得られるようなサービスが作れれば、おのずと情報は集まると信じたい。

■  [PR]
# by aratafuji | 2008-08-10 15:58 | つぶやき

Ezキャリア試験合格

転職して3週間が経過。

最初の山場だった、auのキャリア試験に無事合格。
モバイルの公式サイト構築の経験が無かった事と、サービスリリース日の都合で試験に落ちる分けにはいかなかった事もあり、かなり緊張したが、無事通って本当に良かった。


試験前日になって動作確認済みだったデジタルコンテンツのダウンロード部分で急にエラーが多発し、泣きそうになった部分の対応メモ。

着うたと着ムービーのダウンロード時だけ、auからのリクエストに、"Range"というヘッダが含まれてくる。

Range: bytes=1-1023
のようなリクエストヘッダを受け取った時は、
HTTP/1.1 206 Partial Content
Content-Range: bytes 1-1023/200000
Content-Length: 1023
Accept-Ranges: bytes
のようなレスポンスヘッダを返すとともに、着うたや着ムービーのデータの1バイト目から1023バイト目までを出力する必要があるので、その対応を行っていた。
※値は適当

ダウンロードがうまくいくときは、上記のレスポンスを返すとすぐに、次のRangeのリクエストが来るのだが、ダウンロードエラーが発生しているときは、次のRangeのリクエストがauから来ない状況に…。
※うまくいくときは、"Range: bytes=1024-2047"のようなリクエストがすぐに来る

リクエスト来なきゃ、プログラム側じゃ対応できねーと思いつつ、無視されるからにはレスポンスに問題があるのだろうと、レスポンスヘッダに関して再度調査。
このページ見てたら、あれ?"Last-modified"返して無いじゃん!
という事で、レスポンスヘッダに"Last-modified"を追加したら、再現しなくなった…。

auさんのせいにしてて、ごめんなさい。

Tags:# # # 
■  [PR]
# by aratafuji | 2008-08-10 15:36 | つぶやき

今後のblogサービスの方向性を考えてみた

今後のblogサービスの方向性を考えてみた。

blogサービスという大きな括りで考えると、なぜか実現したところで自分では使わないだろうなと思うような機能しか浮かばない。

ここは一旦思考をクリアにし、技術的な実現可能性や、ビジネスモデルなどを全く無視して、どんな体験が得られれば自分はワクワクするだろうかという観点で考えてみた。
先日、とりあえずホットスポットおぼえがきで知った、紫陽花カフェへ、PCを持って出かけた。
店に着き、テラスに腰掛、ギネスビールを飲みながらPCを起動し、利用可能な無線LANアクセスポイントを調べたところ、なぜか見当たらない!あっれー、なんでー?
店員さんに聞いたところ、無線LANのサービスを止めたとの事!!!
ちょーショックー。おしゃれカフェのテラスでビール飲みながらネットサーフィンするのが夢だったのに…。
気を取り直し、"さつまいものハニーマスタード"と"ピリ辛エビマヨ"をオーダー。
うめー、ちょーうめー。
無線LANが使えなかったのは残念だったけど、ビールもうまいし、飯もうまいし、大満足。
こちらが、紫陽花咲く庭の写真です!
[紫陽花の写真]
ひとしきり店内にいる犬と戯れた後、紫陽花カフェを後にし、第2候補だったcafe Cherirに移動。
こちらの店は、電波良好!
コーヒーを味わいながら、思う存分新サービスの開発に没頭する事が出来ましたー。

例えばこんなクソエントリーがあったとする。
※こちらの内容はノンフィクションです

私がこのクソエントリーをPOSTした瞬間に、未来のblogシステムが起動する。

●POSTしたクソエントリーを、早速自分で確認してみると、[紫陽花の写真]の下に、"他の画像を見る"リンクが表示される。リンクをクリックすると、他のユーザーが撮影した紫陽花カフェの写真や明月院の紫陽花の写真が、一通りスライドで見ることが出来た。
●今週末に三宿付近のカフェでネットサーフィンを楽しもうと思っていたAさんにメールが届く。メールには、"紫陽花カフェの無線LANサービスは終了。cafe Cherirの電波は良好。by aratafuji"と書いてあった。
●今週末に三宿付近のおしゃれカフェに行こうとしてたBさんにメールが届く。メールには、"紫陽花カフェの紫陽花は今が満開!ハニーマスタードとピリ辛エビマヨがお勧めですよ。by aratafuji"と書いてあった。
●週明けに私が自分のblogにアクセスしてみると、Aさん、Bさんから感謝のコメントが届いていた。
●週明けに私が登録しているアフィリエイトサービスにアクセスしてみると、紫陽花カフェとcafe Cherirからのアフィリエイト報酬が振り込まれていた。

ここまで連動しておいて、blogの投稿インターフェースが現状のままってのもなんだが、こんな感じでユーザー通しが繋がれたり、システム連携する事が出来たらきっと面白い。ワクワクする。

技術的な実現可能性を無視して考えてはみたものの、個々の機能を実現する事はそれほど難しい事ではないのかもしれない。

■写真のリンク表示に関しては、現状のタギングでも実現出来るだろうし、今後セマンティックWebが実現していけば、img自体が意味を持つようになる。それとは別に、画像検索テクノロジーを組み込む事で、ますます精度は高まるであろう。

■AさんやBさんへの通知に関しても、オンラインカレンダーと連動すれば、実現できる。

■アフィリエイトに関しても、お財布ケータイが進化して、決済情報(カフェでの支払い情報)とライフログ(この場合は、私のblogを閲覧したという履歴)を連携させる事が出来れば実現は可能であろう。

何だか楽しくなってきた。

"今後のblogの方向性を検討する"なんてお題で、自分は使うかどうか分からないけど、何となく使われそうな機能をダラダラ考えていても、決してイノベーションは生まれない。

もっとシンプルに、"こんな体験が出来るならば、自分なら絶対使う!"っていうような熱い思いをベースに、サービスを考えていきたいと思う。

■  [PR]
# by aratafuji | 2008-05-28 01:03 | レポート

出会い系サービスを考えてみた

出会い系サービスを考える機会があったので、必要だと思う要素を自分なりに考えてみた。

結論としては、以下の8点が重要なのではないだろうか。

1.マッチングの精度
2.アクションを起こすと、期待以上のレスポンスが得られる事
3.ノイズ(出会いたくない人)を混ぜない
4.参加する事への疚しさを排除
5.遊びの要素も必要
6.リアルタイム性が重要
7.インターフェースはシンプルに
8.目的毎に分ける

1.マッチングの精度
一番重要な事は、マッチングの精度であろう。
詳細なプロフィールを登録してもらい、ただ単に検索出来るようにしたところでうまくいくとも思えない。
レコメンドのアルゴリズム(協調フィルタリング、ベイジアンネットワークとか)や、行動ターゲティングの仕組みとかを組み合わせて、マッチングの精度を高める事が重要であろう。

2.アクションを起こすと、期待以上のレスポンスが得られる事
アクション(プロフィール掲載、メッセージ送信など)を起こしても、何もレスポンスが得られなければ、ユーザーはアクションを起こしてくれなくなる。
あるユーザーのアクションは、別のユーザーのレスポンスにつながるわけだから、その辺りを活性化させる仕組みが必要であろう。

3.ノイズ(出会いたくない人)を混ぜない
クラブでナンパして、"私、音聞きに来てるから~"って言われると凹む。
その場合、音聞きに来てるギャルにとっては、ナンパ男はノイズであるとともに、ナンパ目的の者にとっては、音聞きギャルはノイズなのだ。
※単なる断る口実の可能性も否定できないが…。

4.参加する事への疚しさを排除
かなり前に、電波少年企画のチューヤンプロデュース、"後楽しいガーデン"というイベントに参加した事がある。
完全な出会い系イベントであったが、大盛況だった。
私も、一緒に行った友人達も、そのイベントに参加した事に対して全く疚しさは無い。
※当時の彼女には秘密にしていたが…

ネタ的な楽しさや面白さ、参加する事のロイヤリティを高める等で、疚しさを排除する事も出来るのではないだろうか。

5.遊びの要素も必要
こちらも"後楽しいガーデン"での経験だが、後楽園遊園地内の至る所で数々のイベントが行なわれており、見知らぬ男女が楽しく遊べる工夫がされていたからこそ、かなり面白いイベントになったのであろう。
ただ単に出会いたい者同士を同じ空間に押し込めても、参加者に苦痛を与えるだけだ。

6.リアルタイム性が重要
人間の気分などすぐ変わる。
出会いたい!と思っても、"書類を郵送してください"、"プロフィールの承認に1日かかります"とかでは、テンション下がりまくりであろう。
セキュリティが重要な事は言うまでも無いが、リアルタイムでもセキュリティを保てるような仕組みを考える必要がある。
機能としては、マッチした相手とすぐにIMが出来るとかが望ましい。

7.インターフェースはシンプルに
セカンドライフで、見知らぬ外人の女性と話したことがあるが、セカンドライフの複雑なインターフェースにアップアップしていたため、気軽に会話を楽しむ事が出来なかった覚えがある。
一方、以前あったAIM(AOLのIM)の検索機能を使って、見知らぬ外人の女性と会話した時は、かなり楽しく話しこめた覚えがある。
コミュニケーションを求めている者にとっては、仮想空間など不要なのである。

8.目的毎に分ける
同僚に、どんな出会い系サービスが良いですかね?と聞いたら、"すぐに会えりゃいんじゃね?"と言われた。
上記2と同様だが、じっくり恋愛相手を探したいユーザーにとって、この同僚はノイズ以外の何者でもない。
じっくり恋愛相手を探したいユーザーと、この同僚をマッチさせない仕組みが重要であろう。


まあ、ウダウダ考えてはみたものの、どれも当たり前の事か。
個人的には"後楽しいガーデン"のような体験をWebサービス(+ リアル)で実現してみたい。

彼女のいる自分にとっては不要なサービスだけど…。

■  [PR]
# by aratafuji | 2008-04-19 17:27 | レポート

「春のMySQL祭り2008」に行ってきた

先日、MySQLのセミナー(春のMySQL祭り2008)に行ってきた。

全体的に、Sunの宣伝のような内容で、ぜひMySQL Enterprise Server(有償)の契約をして下さいというような感じ。
この辺りは、かなりOracle化してきた印象を受ける。

カイ・アーノさんという、MySQLのコミュニティ担当の方のお話しは、MySQLがとてもコミュニティを大切にしているという雰囲気が伝わってきて、好感が持てた。

MySQL社は、ほぼ全ての社員をコミュニティから採用しているそうだ。
社員全員MySQL大好きマニアなわけだから、そりゃうまく回るだろう。

うちの会社も思い切ってオープンソースにし、コミュニティを形成してみたらどうだろうか。
だめか…。


特別ゲストで日本MySQLユーザ会の人もプレゼンをしていた。
Sunへの要望をほのぼのと聴衆に訴えていたのだが、こちらに言われてもどうしようもない。

Sunの社長、MySQLの社長等と同じ場でほのぼの話せば話すほど場違い感が増し、少しかわいそうに感じた。


そんな感じのセミナーだった。
■  [PR]
# by aratafuji | 2008-04-11 18:34 | レポート

友人関係をXFNで表現するだけのサービスを作った

自分の友人関係をXFN(XHTML Friends Network)で表現するだけのサービスを作ってみた。

My Friends Network


[概要]
Join!で、適当なアカウント、適当なパスワード、自分自身を表すURL(twitterとか)を入力すると、ユーザーページ(http://testtu.be/mfn/user/[アカウント])が生成される。
aratafujiのページ

・友達を登録すると、登録時に設定したXFN形式でリンクが生成される。

・ユーザー、友達とも、Fooo.name!!から関連URLを取得できれば、合わせて表示する。
※Fooo.name!!に関しては、開発者blogを参照


ただそれだけ…。
Social Graph APIに取り込んでもらえれば、ハブ的な意味も少しは有るような、無いような。


なお、久々にPerlを使ったら楽しかったので、YAPCに申し込んでみた。
今のPerlのトレンドと自分のスキルとの間にどのくらいの開きがあるのか、確かめてみたいと思う。

■  [PR]
# by aratafuji | 2008-03-29 00:16 | レポート

「Web 標準セミナー」にて考えたデザイン不要論

本日、アップルジャパン主催の「Web 標準セミナー」に行ってきた。
概要は以下の通り。

━━━━━━━━セミナー概要━━━━━━━━
第一部(13:30-16:30)
講 師:益子貴寛(株式会社サイバーガーデン 代表取締役)
Website: http://www.cybergarden.net/
1. Web標準とは何か
2. Web標準とXHTML+CSS
3. Web標準とブラウザ
4. Web標準と制作ワークフロー
5. Web標準のメリット -ケーススタディ-
・クロスブラウザ表示の実現
・アクセシビリティの向上
・SEO効果の向上
6. Webサイトの品質保証とソースコードの検証
7. ソースコード検証ツールの紹介
8. ブラウザやツールを品質保証に活かす方法
9. 質疑応答

第二部(16:45-17:30)
講 師:アップルジャパン株式会社ワールドワイドデベロッパリレーションズ 永松正人
1. Safari概要
2. Safariと標準
3. Safariのデバッグツールの紹介
4. Apple Developer Connectionの紹介

感想を一言で言えば、"ミスマッチ"。

エンジニアの自分は、完全に対象受講者では無かった。
そしてデザイナー、コーダーの方々もまた対象受講者では無かったと思われる。

では誰向けのセミナーだったかというと、"Webマスター"もしくは"Webディレクター"と呼ばれる方々向けだったのではないだろうか。
デザイナー、コーダーの方々の苦労を理解出来ていない"Webマスター"もしくは"Webディレクター"と呼ばれる方々には、ぜひ聞いて頂きたい内容だった。

なお、第一部に関しては、(自分はミスマッチだったが)決して内容が悪かったわけではない。
自己紹介を聞いて知ったのだが、講師の益子貴寛さんという方は、自分も活用させて頂いているWeb標準の教科書の著者であり、知識、経験も豊富な方である印象を受けた。

第二部は、、、。ただの宣伝だったので、割愛。


第一部で印象に残った内容は、クロスブラウザー対応、各種デバイス対応に関してであった。

- 各種ブラウザ(IE,Firefox,safari,netscape)毎に、cssファイルを分けて対応しましょう
- ブラウザの各種バージョン(IE5、5.5、6、7、…)毎に、cssファイルを分けて対応しましょう
- 各種デバイス(screen、プリンター、プロジェクター、Wii、DS、iPod touch、…)毎に、cssファイルを分けて対応しましょう

一体、何種類のスタイルを準備しろと…。

Webデザインのセミナーに出ておいて何だが、
Webデザインってそんなに重要?
そんなにコストかける必要ある?
という疑問が浮かんできてしまった。

デザインにかける膨大なコストを、コンテンツにかけた方が有益ではないのか?

非常にしょぼく、見辛いけど、有益なコンテンツを含むサイトと、とってもおしゃれで、全く内容が無いサイトのどちらが必要かと考えれば、私は間違い無く前者を選ぶ。
私が普段Webを巡回している理由は、おしゃれなデザインを見たいからでは無く、有益な情報にアクセスしたいからに他ならない。

ここは思い切って、コンテンツプロバイダーはXHTMLのみ出力するというのはいかがであろうか。

ブラウザやデバイス側で、(現状よりましな)デフォルトcssを適応してくれればそれで良い。
RSSリーダー程度のデザインであれば、それで十分だ。

リテラシーが高い者は、自分専用のcssを適用させれば良い。

そもそもユーザビリティなんて、人それぞれだ。
万人向けのユーザビリティなんて試行錯誤する暇があったら、肝心のコンテンツに注力するべきであろう。
ユーザーは、自分がもっとも使い勝手の良いcssを全てのサイトのXHTMLに適応させれば、今よりももっとユーザービリティが向上するのではないだろうか。

時代に逆行している気もしないではないが、Webがそんな方向に進んでも良いのではないかと思った。

決して、クロスブラウザー対応、各種デバイス対応が面倒だからこんな事を考えたわけではないと、自分で自分を信じたい…。

■  [PR]
# by aratafuji | 2008-03-18 20:57 | レポート

< 前のページ

次のページ >