2004年08月31日

duplexの罠

なーんかblogdbのクロウラー君の挙動がおかしいと思ったら。
スイッチのポートランプが緑とオレンジに点滅してたし。
マンションのMDFにある対向機器のduplexがfullからhalfになっていたみたい。

セッション張った後のread/write処理中に固まってるみたいでPHP5の実装が変なのかな?と思ってたけど
もっとレイヤーの低い所のトラブルだったと。
HTTP周りもPEARから独自実装の物に変更したり色々やってて苦労は無駄だったらしい。
疑ってごめんね。PHP君。


って事でblogdbの新規エントリ収集システムは超快調に動いとります。
エントリが公開されてから2~3分で検索できるようになってきた。

と思ったらchanges.xmlを解析する奴が変になってた。。。
rss収集部分のトラブルとは別物なのか?

Posted by Yappo at 14:35 | Comments (3) | TrackBack

2004年08月30日

お家NOC

どういうわけか色んな機材をゲットした。
何故か19インチラックとかUPSとか、その他詰め合わせ。

そこで週末の間に頑張って家に詰め込んで見たのだが。



今のところこんな感じ



真ん中寄るとこんな感じ




モニタは2台になったので、片方にxawtv入れてテレビ見ながら環境が出来てしまった。
やヴぁい



ラック前面上部



ラック前面下部



ラック後ろ上部



ラック後ろ下部




でも、他の部屋こんな感じ

というか、普通の家なのですが・・・

ボスケテwwwwwww

Posted by Yappo at 05:35 | Comments (25) | TrackBack

2004年08月27日

Net::MSNメモ

Net::MSNのサンプルを動かしてみた。動いた。
でも「○○がサインインしました」メッセージが表示されない。
というか、サンプルを終了させた後に再度サンプルを実行させてもオンラインにならない。
何でだと思ってMSN.pm調べたら、接続イベント時のMSNコマンドの出力順番間違ってるみたい。
CHGをSYNより先に送ってるからダメっぽい。
と言うか、何か余計なお節介してるコードだな。。。
って事でMSN.pmの該当部分をコメントアウトして

SYN 0
CHG NLN

の順番にコマンドを送ってみた。

おお!うまくいった。

REA メールアドレス スクリーンネームをUTF8にしてurlencodeしたもの
で名前変更も出来るのね。

とりあえず、blogdbで使ってみるかの。

Posted by Yappo at 17:51 | Comments (6) | TrackBack

2004年08月26日

RSS周りの事でお金を作るという事は?

なんとなく社長さんに呼ばれてる気がしたので、なんとなく書いてみる。

blog検索だけではお金を生み出すのはむづかしいでしょうな。
例えば、RSSフィード中に広告を挿入する仕組みが始まっているらしいけど、blog検索の利用者にはマッチしないでしょうしね。
blog検索のみで収益をあげるのか、それ以外の何かで収益を取るのかっていう目標設定にもよるかもしれないですけどね。
blog検索に専念するとしても、本気でblogを検索させるだけで終わらせちゃうのか。とか。
blog検索で出来る先の事を考えてしまうと、単純な広告モデルは出来ないかも。
まぁ、これもblog検索作る人の方向性にもよりけりかな。

どう転んでも、株主さんをどう説得するかって言うのは各社さんの内情次第ではありますな。
でもまぁ、納得していただけるだけの判断材料は各種取り揃えてるはずですけどね。


あ、blogdb.jp始めるときは、うちのCFO様に納得していただきましたよ。えぇちゃんと;-)
CFO様に納得していただけないと初期投資の資金手に入りませんから。えぇえぇ

Posted by Yappo at 23:12 | Comments (30) | TrackBack

2004年08月25日

検索結果のRSSフィードを開始

主な目玉として、検索結果のRSSフィードを開始しました。
俗に言うblog検索エンジンぽくなったのかな。

他には、検索範囲を広げたり、関連キーワードの抽出をtfidfmにしてみました。
ついでに alpha release 0.9 です。

ベータまでに積み込みたい事はまだまだまだまだ。
そろそろ.jsファイルの配信とかも導入しとこうかしら。
まーだ人の後ろを追っかけてる感じっぽいです。

Posted by Yappo at 04:27 | Comments (23) | TrackBack

2004年08月23日

PHPカンファレンス2004行ってきた

同僚に勧められてよく分からないままにPHPカンファレンスに行って来た。
PHPといえば、拡張モジュール周りのドキュメント無いから、ソースコードを読み漁ったり。
拡張モジュール作ってたり、4年以上前から使ってたり。
PHPのコマンドライン版なんかPerlがあるからいらねぇ、と思っていたのに業務で採用したりと何かと手足のような言語なのです。

言語系の集まりは行った事が無かったので、とってもワクワクしていた。
あとは、刺激を貰いに行くという意味でサクっと後半から参加してみた。

ちょうどpgpoolのお話をしていた、思ったことはmysql用のこれって相変わらず無いよね?
いい加減自分で作るしかないかなぁ?
という事。

次は、ファイルメーカーのラッパーライブラリを日本版移植したお方のお話。
現状だと特に活用する事は無いが、いつお仕事で使うかも分からないので、そういう物があるという知識を得られて、とてもよかった。
最新版が高いのか安いのかはビジネス的には関係ないので、対応しきれていけたらありがたいですね。
こういう方がいらっしゃるお陰でPHPも発展しているのだなと感謝の念は忘れない。


その次は、ブログ人の運営サイドの方のお話。
コア言語はPerlの筈なんだけど、Webアプリという領域では関係ないので、いいっかと思ってみたり。
質問コーナーがあったら、Newbieらしく「blog検索エンジンについて思ってる事を教えて下さい」と質問しようと思ったけどコーナーが無かった。。。
まぁblogdbで頑張ってれば、そのうち対面する機会があるかな。
なんだか、先日ハードウェア障害あって汚点って言っていたけど、その言い方ってなんか対顧客向けの発言っぽくてカンファレンスで、そういう発言するのに違和感覚えたり。
機密情報があって言えないのかも知れないけど、ハードウェア障害時のお話をネタとして出してあげたらよかったのになぁと思った。

その次は、greeの運営者の方のお話。
開発スタイルとして
Wikiで自分のためにドキュメント整備
ってのがあったので、個人プロジェクトでも導入しようかな?と思った。
個人以外ではwiki使ってるんだけど、個人では実践してなかったのだ。
blogdbの時は、有志が開発掲示板の設定してくれてたので使ってたんだけど。意外と便利なのよね。

実行委員側の扱いとしては。
会社員なのに個人的に成功しているから、PHPプログラマの皆さんも希望を持ちましょう!
という扱いだったらしい。
自分自身はgreeの運営者と似たような事を体験していたからピンと来なかったり。

技術的な事しては、運用効率を高めると言うお話で、とても同意が出来るというより
むしろ自分もそれを低コストで実現したいなと思っている内容のお話だったりで、何か似た様な事を思っているなぁ、と。
最近の若者ののネットリテラシーのお話もあって、色んな意味で同意できたりしました。

PEARを積極的に活用するという点以外は、おおむね同意できるお話で、寝不足な脳みその眠気を覚まさせていただきました。

あ、質問コーナーがあったので手を上げて質問しました。
「greeの運営者として取材とかを受けるときに名刺は何を出してますか?」って感じで。
答えは、会社の名刺出すと変な営業とかになっちゃったり迷惑かかるといけないしと言ったお答えでした。
場が場なので、その質問をした時には場が笑い声で包まれましたが、公の場では聞きたい事がそれしかなかったし。
自分と似通ったポジションの人だと、特にそれが気になるところだったので。。。
本当は、超個人的でかつある種のプライベートに関わる事を聞きたかったんですけど、個別にお話しする機会なんぞは無かったので挫折。

その時に、隣に座っていた方がオープンソースなSNSのwawawaプロジェクト関連の方だとお聞きしました。
ちょっと時間たったらI社の記者さんの名刺を手に持っとりました。
なんか記事でるのかなぁ?wawawaも興味があるのでチェックしなきゃ。

その後、webアプリのセキュリティのお話やパネルディスカッションがありました。
後半はちょっとだけPHP-USERSっぽい雰囲気になってみたりと、PHPに関わる人の顔がたくさん見れてよかったです。
パネルの時にPHP開発者の待遇向上のお話が出てきたけど、意見言うタイミング逃しちゃった。

「多言語と比べる事よりも、PHPの言語特性を考えて開発や運用がどうなるかを考えましょう。あと一つの言語だけにこだわるのはお客様のためにも会社のためにも技術者のためにもなりませんよ」と。

盲目的に一つの技術にこだわるのは嫌いです。
でも誰か、私にJavaの素晴らしさを納得の行く説明をしてください。色んなJavaの人にお願いしたのですが、Javaには「これだ!」という要素がありません。

やっぱり、バックグラウンドをきっちりと持ちつつ、こういう場で公演できる人たちは凄いなぁと毎回思います。
いつかこういう人たちと方を並べて焼肉でも食いたいなぁと思う今日この頃であります。


そんな事よりも「ブログ人」のTシャツ欲しかった!
渋いネーミングがTシャツに印字されてるんですもの、めちゃくちゃ会社とかで着たいですよ!

関連:
PHPカンファレンス2004で講演する

Posted by Yappo at 04:21 | Comments (12) | TrackBack

例の広告システムの実装落ち着いた

やっぱり、リスティング広告は素晴らしいね。
PCの世界では、ごく普通の話しになっているけど携帯電話用のは本当に無かったからね。
4年ほど前に営業に来ていただいた広告屋さんの方には、このシステムじゃないとやる気がしないと言っていて早4年。
ようやく実現しました。時代を先取り過ぎていたのか何なんだか分からないけど感無量です。
あとは、立ち上がったばかりの業界が盛り上がるように努力をしないと。
只の携帯広告じゃないから(脳内検閲が入りました)なんだよね。
それに関わる話だけど、検索結果の1ページ目の前半部分のクオリティが上がるという点も嬉しい。

それにしても、辛ピーマンは本当に辛い。
タイでポピュラーな辛い唐辛子よりもからいんですけど?
ピーマン農家の方。愛情込め杉。もう少し手加減した辛さにしてください。
美味しいのに食うのがつらいです。

Posted by Yappo at 01:36 | Comments (9) | TrackBack

2004年08月20日

PHP5.0.1とmysqli

なにがいけなかったんだろう。。。
何も考えずに5.0.0と同じオプションで構築したのがまずかったんだろうな。。。


(gdb) run ../crawlers/ping.php
Starting program: /usr/local/bin/php ../crawlers/ping.php
Error while mapping shared library sections:
: 成功です.
Error while reading shared library symbols:
: そのようなファイルやディレクトリはありません.
[Thread debugging using libthread_db enabled]
[New Thread -150342208 (LWP 18223)]
Error while reading shared library symbols:
: そのようなファイルやディレクトリはありません.
Error while reading shared library symbols:
: そのようなファイルやディレクトリはありません.
Error while reading shared library symbols:
: そのようなファイルやディレクトリはありません.
Error while reading shared library symbols:
: そのようなファイルやディレクトリはありません.
Error while reading shared library symbols:
: そのようなファイルやディレクトリはありません.
Error while reading shared library symbols:
: そのようなファイルやディレクトリはありません.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -150342208 (LWP 18223)]
0x080ed7c1 in mysqli_read_property (object=0x8a940ec, member=0x8988050, type=0) at /home/works/src/php-5.0.1/ext/mysqli/mysqli.c:204
204 if (!obj->ptr ||
(gdb) bt
#0 0x080ed7c1 in mysqli_read_property (object=0x8a940ec, member=0x8988050, type=0) at /home/works/src/php-5.0.1/ext/mysqli/mysqli.c:204
#1 0x08225506 in zend_fetch_property_address_read (result=0x8988024, op1=0x8988038, op2=0x898804c, Ts=0xfeefaa40, type=0)
at /home/works/src/php-5.0.1/Zend/zend_execute.c:1158
#2 0x082276b4 in zend_fetch_obj_r_handler (execute_data=0xfeefd7e0, opline=0x8988020, op_array=0x897a818)
at /home/works/src/php-5.0.1/Zend/zend_execute.c:2129
#3 0x08225e9b in execute (op_array=0x897a818) at /home/works/src/php-5.0.1/Zend/zend_execute.c:1400
#4 0x08228f5a in zend_do_fcall_common_helper (execute_data=0xfeefde60, opline=0x89750a0, op_array=0x896e454)
at /home/works/src/php-5.0.1/Zend/zend_execute.c:2737
#5 0x08229234 in zend_do_fcall_by_name_handler (execute_data=0x1, opline=0x89750a0, op_array=0x896e454)
at /home/works/src/php-5.0.1/Zend/zend_execute.c:2822
#6 0x08225e9b in execute (op_array=0x896e454) at /home/works/src/php-5.0.1/Zend/zend_execute.c:1400
#7 0x0820b559 in zend_execute_scripts (type=8, retval=0x0, file_count=3) at /home/works/src/php-5.0.1/Zend/zend.c:1061
#8 0x081d8f7a in php_execute_script (primary_file=0xfef00240) at /home/works/src/php-5.0.1/main/main.c:1627
#9 0x08231926 in main (argc=2, argv=0xfef00304) at /home/works/src/php-5.0.1/sapi/cli/php_cli.c:943

Posted by Yappo at 04:47 | Comments (1) | TrackBack

2004年08月19日

weblogUpdates.metapingを提唱してみるテスト

みやがわさんのweblogUpdates.ping の拡張メモをみて。

第4引数にメタデータを入れると言うアイデアは素晴らしいのだけど、単純な更新情報のみを提供しているpingサーバには必要が無い情報なんですよね。
でも、第4引数が欲しいpingサーバもあるので、旨い事出来ないかなとちょっと考えてみた。
いっその事、現状のweblogUpdates.pingはそのまま残して新しいメソッド作っちゃえばいいのかなと思った。

weblogUpdates.metaping(String metadata)

こんな感じで、
metadataの部分は、更新されたエントリのみが含まれたRSSやAtomデータを適当な何かでシリアライズして入れておく。
metadataは出せる情報は全て格納しておく、こうしないと既存のメタファイルを取りに来るサイトも出てきてしまう。

こうしておけばping通知を受け付ける各アグリゲータは、わざわざ通知してきたblogサイトからメタファイルを取ってくる作業が無くなるし
更新された情報のみがネットワーク上に流れるから全体のトラフィックや負荷は減ると思う。

blogツール側ではpingとmetapingの2種類の送信先を管理しなくちゃならなくなるので受け入れられないかもだけど
blog検索エンジンとか、その界隈の人たちにとっては有用じゃないかなぁと思った。

適当な思いつきだけど、どんなもんでしょ。

Posted by Yappo at 15:20 | Comments (0) | TrackBack

2004年08月18日

マトリックスピンポンをblogdbる

欽ちゃんの仮装大賞で優勝した人がペプシのCM監督をやってしまったそうな。
そんな話を聞いてとりあえずblogdbしてみた。
「マトリックス ピンポン」とキーワードに入れたら、二つの動画の関連リンクが出てきた。
一つは、仮装大賞で放映されたマトリックスピンポンのntv.co.jpによる動画で、もういっこはペプシのCMだった。

googleでも欲しい動画URLを一発で出してくれないのになんて便利なんだろう。。。
そんな事で、最近は時事ネタを調べるときは、blogdbを使うのがデフォルトになってる。
いちいち検索結果のサイトをチェックしなくても、検索しながら時事情報が追えるのだ。

「マトリックス ピンポン」でblogdbる

Posted by Yappo at 22:39 | Comments (0) | TrackBack

2004年08月17日

Adsence入れてみた

流行りものに手を出してみようと言う事でGoogleのAdsenceを入れてみた。
HTML貼り付けるだけだから導入してみた。

次はAmazonかぁ、めんどっちそうだなぁ。

Posted by Yappo at 01:29 | Comments (0) | TrackBack

2004年08月16日

日記系.jpのping送信先になったらしい

今朝方からとあるホストからちょくちょくとpingリクエストを受けていてなんだと思っていたら
日記系.jpのping送信先になっていたっぽいです。
管理者日記やお知らせにそれらしい事が書いてないので事態を飲み込めては居ないですが。

日記系.jpさんもQRコードに対応始めたそうで、徐々にQRコードがモバイル必須になる予感。

関連:
日記系.jp
かんり・にんざぶろう @管理人さんの日記

Posted by Yappo at 20:30 | Comments (0) | TrackBack

2004年08月15日

検索速度向上

blogdbネタです。
別に何かをしたわけではないのですが
重い処理だった関連ワード機能に関するデータ解析処理が先日終わったので
サーバ全体の負荷が下がり、本来想定していた検索スピードになってきました。
クエリー投げてから一瞬で結果が返ってきて予想より速くて驚いてはいるのですが。
これでようやく機能追加やらチューニングが出来るようになる。

検索とは違うけどトラックバックを使った面白そうな仕組みを思いついたので、誰かが先にやってなければ実装するとおもう。


関連ページ:http://blogdb.jp/

Posted by Yappo at 17:52 | Comments (6) | TrackBack

2004年08月12日

人工無脳にもホルモンを

現在トレンドな人工無脳の実装方法って、ベイジアンとかマルコフとか使った物が主流っぽいけど
やっぱり文字列以外の入力が無いので自己主張はしにくいんですよね。
ふと思ったんだけど、人工無脳にホルモンを導入したらどうなるんだろうなと。
ドーパミンとか緊張するホルモンとか空腹になるホルモンとか、感情よりもレイヤーが低いものを人工無脳に実装してみるの。
入力文字列に対するホルモンの状態を記憶として持たせておくと自我もどきが実装できるのかなとも思う。


ちなみにひよこには感情モデルが入ってるけど旨く機能してない。
やっぱりもっと単純なホルモンモデルで。

Posted by Yappo at 12:37 | Comments (5) | TrackBack

2004年08月07日

マシン入れ替えとPC検索休止

blogdb.jpで使用しているマシンは、某社の廃棄ベアボーンを使っていたわけだが
OSインストール中から結構挙動がおかしかった。
昨日ついに限界が来たらしく、mysqldがしょっちゅう落ちる状況になっていた。
しまいにはリブートも出来ない状況だったので、PC検索エンジンサーバに乗せかえる事を決意した。
その代わりPC検索の機能を停止しなければならないが、大して使われていないのとあんまり使い勝手がいい物でもなかったので一時的に休止してもらう事にした。

マシンのスペックも大分あがってるはずなのだが、検索速度は現状上がっていない。むしろ下がっている。
と言うのも裏で、色々な予備データを作成し始めているので、それがネックになっている。
当然、関連検索もどきの機能がついたので、そこも足かせになっている。Namazu本体含め全体的なチューニングが必要かも。

まぁ、しばらくしたら落ち着くとは思うし利用者居ない現状だと影響ないけどね。

Posted by Yappo at 12:55 | Comments (4) | TrackBack

2004年08月05日

Namazu検索時の分かち書き方法を変更するパッチもどき

本題に入る前にblogdbで楽天を検索してみたらなんだか凄い事になってるようで…
http://blogdb.jp/search?key=%E6%A5%BD%E5%A4%A9&day=2004-8-5

やっぱblog検索はwebとは違う意義があるなと再認識したり。


Namazuの検索コマンドなんですが、検索時の分かち書きだけはNamazu独自の仕組みを使ってるみたいなんですよね。
blogdbで引っかからない単語とか、分かち書きの結果がおかしいクエリがあるなとおもってソース見たら
wakati.cなるソースコードの通りになってたわけで…
要するにmknmzでの分かち書きとは違う分かち書きされるわけで
そういうことなんです。
Chasenでインデックスつけてたからどうしようかと迷いそうになった。

って事でsearch.cをちょっくら改造

NmzResult
nmz_do_searching(const char *key, NmzResult src)
{
~略~
nmz_debug_printf("after nmz_strlower: [%s]", tmpkey);

{/* Yappo Path Start */
char *p = tmpkey + strlen(tmpkey) - 1;
for (; p >= tmpkey; p--) {
if (*p == '^') {
*p = '\t';
}
}
}/* Yappo Path End */


mode = detect_search_mode(tmpkey);
if (mode == ERROR_MODE) {
val.stat = ERR_FATAL;
return val;
}

if (mode == WORD_MODE || mode == PHRASE_MODE) {
remove_quotes(tmpkey);
/* If under Japanese mode, do wakatigaki (word segmentation) */
if (0) { /* Yappo Path */
if (nmz_is_lang_ja()) {
if (nmz_wakati(tmpkey)) {
val.stat = ERR_FATAL;
return val;
}
/* Re-examine because tmpkey is wakatied. */
mode = detect_search_mode(tmpkey);
}
} /* Yappo Path */
}

delete_beginning_backslash(tmpkey);

って事をしておく。
んでもってnamazuコマンドに投げる前にキーワードをchasenで分かち書きしておく
んで、分割された単語を^でくっつけておく。

そうすると、Namazuの分かち書きに頼らずに独自の分かち書きを適用させてからフレーズ検索を実行できると。
まぁ、Namazu独自の分かち書きが実行されなくなるけど、その方が都合よいときあるし。


libchasenとまとめたり色々するのも手だけど、めんどっちい事は後々もめんどっちい事になるからね。


おかげで検索時の再現性が上がりました。


2001年当時のNamazuのソースと大分変わっていてびっくりした。

Posted by Yappo at 03:38 | Comments (5) | TrackBack

2004年08月03日

【プレスリリース】 iYappoで携帯電話対応の検索連動型広告を配信開始します

報道関係者各位
                                 2004/08/03
                          検索エンジン Yappo

 

iYappoで携帯電話対応の検索連動型広告を配信開始します

8月23日より開始される、サーチテリア株式会社の検索連動型広告による広告配信と
連携を行うことによって、iYappoの各種検索結果中にて検索キーワードやカテゴリに
関連した広告を掲載するサービスを開始します。

既存の配信型広告は、検索キーワードやカテゴリに関連する広告の配信が行えなかっ
たため、掲載される広告には検索サイト利用者が望まない内容になってしまい、効果
的な広告掲載が困難を極めるものでした。
これは、検索サイトに訪れる大半の利用者は、どの様なサイトを探したいのかと言う
ビジョンを持ちながら検索を行っているので、結果的にランダムに掲載される広告へ
の興味は持ちにくいものとなっていました。

8月23日より開始される検索連動型広告は検索キーワードやカテゴリの特徴に見合う
広告の配信を可能とする物になっているため、検索サイト利用者の興味を引き付ける
有効な広告配信が行えるようになります。

本件に関する詳細な情報は、下記URLより取得して下さい。
■サーチテリア株式会社
http://www.searchteria.co.jp/
■サーチテリア株式会社によるプレスリリース
http://www.searchteria.co.jp/company/pr20040803.html


本プレスリリースに関するお問い合わせ先
配信元 : Yappo http://i.yappo.jp/
リリース : http://blog.yappo.jp/yappo/archives/000038.html
運営者 : 大沢 和宏
E-MAIL : press@yappo.ne.jp
URL : http://i.yappo.jp/

Posted by Yappo at 16:29 | Comments (15) | TrackBack

blog検索サイト&ping通知サーバ作ってみました

blogdb.jpというblog検索サイトを作ってみた。

http://blogdb.jp/

現状同じようなサイトは大量にあるけど物真似するのはYappoに任せて、こっちは色々変な事してみようと思う。
blogに特化した検索サイトならではの要素も結構思いついてるし、ここ最近暖めてるネタの実験も出来そう。

コンセプトは
なんでblogに特化した検索エンジンなの?~そして未来の検索へ~
ってなかんじで。
コンセプトの寄せ集め見たいなメモの断片なら大量にあるけど、上の一行がそれらを集約してるはず。


現状の実装としては、独自pingサーバに通知のあったblogからrssとatomファイルを持ってきてnamazuでインデックス作ってます。
クロウラーとインデクサは5分おきに交互に起動される感じです。
現状は独自のpingサーバに通知のあったblogのみを検索できるようにしてるけど、徐々に他のpingサイトのデータも使うと思う。

Posted by Yappo at 15:11 | Comments (7) | TrackBack