トップ 最新 追記

猿も叩けば日記


2006-01-01(Sun)

_ [life]あけましておめでとうございます

社会人最初の年を素晴らしく過ごせますように.

みなさんこれからもよろしくお願いします.


2006-01-02(Mon)

_ [風博士]スマートブックマークの位置の記憶

あと一歩なんだが…

自分の頭の中じゃ完全にできている予定なんだが,どうにもうまくいかない.

_ [study]論文誌

1月2日に来るとは思わなかった…

理解できるのは前田先生のところのレターだけだな.

人体近傍にある,携帯電話用地上ディジタルアンテナのFDTDによる解析.人体のモデリングサイズを細かくすることによって,アンテナ指向性の精度が向上する,というもの.ふたつの人体モデルで解析しているんだが,そのふたつの定量的な差が書かれていないような.

非常に面白い内容なので,以前にやっていたイヤフォンケーブルの影響なんかもおりまぜた形のフルペーパーを是非読んでみたい.

あ,あと垂直面のパターンが見てみたいな.どうも移動体通信だと,水平面のAverage Gain をとって,それに垂直面のAverage Gain - 9dB を加えて…といった黒魔術的な放射特性の評価をするようなので,垂直面もかなり重要なんじゃないかと.

_ [風博士]Re:スマートブックマークの位置の記憶

ダメだ.どうやってもできん!

2枚目のウィンドウを起動すると,1枚目で決めた順番が反映されるところを見ると,何か根本が間違っている気がする.

須藤さん助けて!

つぅか,これをやってるうちにパラパラとバグらしきコードが見つかった.このコードだと,複数のウィンドウを立ち上げたときに落ちやすいんじゃないだろうか.

_ [life]でかけます

明日からちょっとでかけます.悲しいことに1泊ですが.

本日のツッコミ(全1件) [ツッコミを入れる]

_ kou [御指名ありがとうございます. :)]


2006-01-05(Thu)

_ [風博士]Re:Re:スマートブックマークの位置の記憶

須藤さんありがとう!

insert-child シグナルが発行されるなんて,まったく理解していませんでした.ただ,どこからどうやってこのシグナルが発行されているのかはまったく理解できませんが…

動作に関しては,微妙にすれ違いがあるようで,説明不足を反省しています.

_ [風博士]スクリプト言語による拡張をサポート

すごい.こりゃすごい.

C に比べたら実装のための障壁が少ないスクリプト言語での拡張ができれば,ハック人口が大幅に増えるはず.

さて,Ruby を勉強するか.


2006-01-08(Sun)

_ [net]オープンソース

深く関われば関わるほど「オープンソースって言ったって誰もコードを見ないじゃないか」 と落胆することが多くなっていた

日記@韜晦する朴念仁より

僕も風博士を使うまでは,ろくにソースなんかみたことなかった.見たって意味分からなかったし,改造したいという欲求もなかった.

多少の技術力の向上と,ソフトウェアを見る目が肥えてきたのもあって,初めてソースを読んでパッチを書いた.なんてことはない,使ってない変数を削除するだけのパッチだったが,zoeさんは「ありがとう」と言って受け取ってくれた.

僕が足永さんをすごいと思うのは,技術力はもちろんだが,それ以上に,足永さんのオープンソースに対する愛情だ.ど素人の僕にコードの書き方を教えてくれたり,へっぽこパッチを直してくれたり,普通はなかなかできることではないと思う.

そういう足永さんの行動を見ていると,「口だけ」のオープンソースに関わらない人に対して,「コードだけ」のオープンソースに関わっている人もいるんじゃないだろうかと思う.曖昧になってしまうが,「オープンソース」が好きな人と「オープンソースソフトウェア」が好きな人の違いがそこででてくるのかな.

なんだか中学生が書いた読書感想文みたいになってしまったが,ここはチラシの裏なので気にしない.

自称風博士プロジェクトへっぽこ代表の僕が願うのは,足永さんが10人ぐらいに増殖してくれる事と,へっぽこなコードを書ける人のオープンソースへの参加だ.

入るコミュニティさえ間違えなければ,ものすごい楽しい世界だ.

_ [風博士]Rastによる検索

俺は (Hyper)Estraier が大嫌いで,Rast が好きなんだ,という人のため(いるかどうか知らん)に Rast による検索を実装してみようかと思ってる.

と思ったら,Rast のインストールでいきなりこけた.apr-config とやらが必要で,libapr0-dev パッケージをインストール.

次は magic.h がないとか怒られた…libmagic-devをインストール.最初から deb でインストールすりゃいいだろ,と思われるかもしれないが,なぜかインストールできなかったので,今に至ってる.

うぅ,HTMLが入ったディレクトリをrast-register すると,error: no such filter module (text/html)と悲しいメッセージが… libmagic はちゃんと入ってるのに…

ダメだ…動かない.早くも挫折.

本日のツッコミ(全2件) [ツッコミを入れる]

_ kou [HTML用のフィルタはRubyで書かれているようなので,make installしてからでないと動かないと思います...]

_ ふりょ [むむ,make install したんですけどダメみたいです. /usr/local/lib/rast/filte..]


2006-01-09(Mon)

_ [linux]Rast の no such filter

原因が分かった.どうやらhtreeが入ってないのがいけなかったみたいだ.libhtree-ruby1.8を apt-get して,やっとこさHTMLの登録ができた.

それにしても htree がないというエラーに対して,no such filter っていうメッセージは不親切だな,と思ったのでした.

ぬぬ,UTF-8 を使おうとすると,ICUなんてものが必要なのか.こんなの初めて見た…

apt-cache rdepends libicu34 したら,OOo がひっかかった.なるほど.

_ [linux]Rast on Debian

メモ

HTMLのパースに必要.

apt-get install libhtree-ruby1.8

UTF-8 を使うのに必要(libicu28 は -dev がない?)

apt-get install libicu34-dev

cd /path/to/rast_src

./configure --with-default-encoding=utf8

make

make install

configure.in が typo ってて,zsh で configure のオプションの補完をすると,--with-defaunt-encoding って出てくる.default ね.

で,Rastのデータベース関連は以下の流れ

rast-create --preserve-text db_name

rast-register db_name dir_or_file_of_document

検索は

rast-search キーワード db_name

もう疲れた.

_ [life] ~/.kazehakase/history の登録

途中でこけた…どこでこけるかって,/.j の登録で.

error: /usr/local/lib/rast/filters/ruby/html.rb:80:in `convert_encoding': invalid multibyte sequence

むぅぅ,エラーが起きたファイルは飛ばして次に行く,とかいうオプションはないのか.

find ~/.kazehakase/history -type f -exec rast-register db_name '{}' \; とかやって,ひとつずつ登録していくしかないのかな.


2006-01-10(Tue)

_ [宿泊]45泊

車スケールモデル

酔っ払ってます.でもスケールモデルは作りました.


2006-01-12(Thu)

_ [study]ネットワーク不調

ハブだな.この時期に壊れるとは,なかなかケンカ売り上手なハブだ.

_ [宿泊]46泊

実験.

大成功!スケールモデル万歳!

これで車載アンテナの開発工数が大幅に削減できる.


2006-01-13(Fri)

_ [net]中村屋

笑いすぎて涙出た.


2006-01-14(Sat)

_ [風博士]右クリックからスマートブックマークにクエリ

コミットされました.須藤さんありがとう.

y:(.*)なんかのスキームに対応させたものも書いてみよう.

_ [風博士]やりたいこと

HyperEstraier をなんとかしなければ.とりあえずパッチは書いてあるんだが,Estraier からの移行をどうしたもんか.自動的に移行するようなコードはできているけど,Estraier をばっさり切ってしまっているコードなので,ちょっと躊躇.常に最先端を走る風博士としては正しい判断なんだろうけど.

仮りに Estraier を生かすとなると,いろいろ根本から変えなきゃいけなくなるかな.

src/kazehakase.h:HISTORY_INDEXだけだと複数の全文検索エンジンに対応できないので,名前を変えて複数個定義.

#define HISTORY_INDEX_EST "/."PACKAGE"/history_index.est"

#define HISTORY_INDEX_HEST "/."PACKAGE"/history_index.hest"

#define HISTORY_INDEX_RAST "/."PACKAGE"/history_index.rast"

みたいな感じで.それぞれ src/utils に検索結果を表示する HTML を生成するコードを書いておいて,src/utils/history_search.c の中で,設定を読み込んで呼び出す関数を変えるようなラッパー関数を作って,src/mozilla/kz-mozhistorysearch.cpp では,今みたいに検索エンジン決め打ちでなくて,そのラッパー関数を呼ぶような処理にしておけば,動的な履歴検索エンジンの切替えができるような気がした……が,インデックスを作成する処理は検索エンジン分走らせなければいけないので,重くなりそう.

ということで,configure で切替えるのがベターなのかな.となると,今度はパッケージを作る人が大変になる罠.

ダメだこりゃ.


2006-01-15(Sun)

_ [風博士]うげ

パッチを書いたのはいいが,HyperEstraier で動かすんなら,いらない部分がでてきた.

Estraier ではインデックスから文書を削除するのにファイル名や文書IDが必要だが,HyperEstraier では estcmd purge を使えば,インデックスにあって,実体がないものは自動的にインデックスから削除してくれるという素晴らしい事になってる.わざわざ purge するファイル名をとっておく必要がなくなる.

utils/utils.c:purge_history_file() がずいぶんさっぱりするぞ.

_ [風博士]Rastでの履歴検索

furyo:~/.kazehakase% find history -type f |wc -l

2635

furyo:~/.kazehakase% du -sh history

123M history

な環境で rast-register してみた.データベースは rast-create --preserve-text で作成.文字コードは Rast の configure で --with-default-encoding=utf8 にしています.

time find history -type f -exec rast-register history_index.rast '{}' \;

find history -type f -exec rast-register history_index.rast '{}' \; 2223.53s user 212.38s system 29% cpu 2:17:15.09 total

ちなみに HyperEstraier は

furyo:~/.kazehakase% time estcmd gather -sd -fh hoge history

estcmd gather -sd -fh hoge history 112.04s user 3.46s system 67% cpu 2:50.05 total

すごい差が出ていますが,これはこんな理由で find を使ってやってるんで,Rast にものすごい不利です.これが Rast の実力だなんて,絶対に思わないでください.ただ,おかしなファイルがあると途中で止まってしまう以上,こうするしか方法がありません.今思えば,せめて -type d でやっておけばよかった.

ちなみに作成されたインデックスの大きさは

furyo:~/.kazehakase% du -sh history_index.rast

70M history_index.rast

furyo:~/.kazehakase% rast-optimize history_index.rast

furyo:~/.kazehakase% du -sh history_index.rast

67M history_index.rast

HyperEstraierは

furyo:~/.kazehakase% du -sh hoge

53M hoge

furyo:~/.kazehakase% estcmd optimize hoge

furyo:~/.kazehakase% du -sh hoge

36M hoge

となっています.

検索の時間はいかのスクリプトで調べました.

furyo:~/.kazehakase% cat rast.sh

#!/usr/bin/zsh

repeat 100 rast-search furyo history_index.rast >/dev/null

furyo:~/.kazehakase% time ./rast.sh

./rast.sh 48.62s user 3.85s system 84% cpu 1:02.09 total

HyperEstraierは

furyo:~/.kazehakase% cat hest.sh

#!/usr/bin/zsh

repeat 100 estcmd search -vx history_index.hest furyo >/dev/null

furyo:~/.kazehakase% time ./hest.sh

./hest.sh 2.05s user 0.66s system 99% cpu 2.716 total

ちなみに Rast は SVN のリビジョン 63を,HyperEstraier は 1.0.6 のDebianオフィシャルパッケージを使っています.

最後にもう一度言明しておきますが,この結果を鵜呑みにしないでください.

_ [linux]emacsmode : Parse Emacs -*- Mode lines and set equivalent Vim options

ナイス.

ただ,なぜかC++しかfiletypeを認識させていないので,emacsmode.vim の %Mode に 'C' => 'c' を追加してCも認識させた.

ちょっと場当たり的にCだけ対応させたが,このパッチで大体どの言語にも対応できるはず.

Emacs では Mode の最初に言語名の最初を大文字で書いたものが設定されてる(C,Perl)ので,それを小文字に変換してやれば,Vim でも認識できるだろうと思って書いたパッチです.まぁ,Emacs の Mode の名前を全く分かっていないので,適当にやったことですが.


2006-01-16(Mon)

_ [linux]cdrbq

DWN 日本語訳をつらつら眺めていたら,新パッケージに

cdrbq[37] -- CD 焼き用のグラフィカルなフロントエンド。

なるものを発見.こいつは気になるぜ,と思ってさっそく apt-get したら,

tcl/tk だよ…………orz

おかえり xcdroast.

_ [風博士]HyperEstraier対応

99%完成した.

あとはHyperEstraierのバージョンを引っ張ってくる関数を書けば終わりだ.

ただ激しく眠いので,続きをやるかどうかは風呂に入ってから決める.

寝ます…

本日のツッコミ(全2件) [ツッコミを入れる]

_ いわい [> 99%完成した. 素晴らしい!]

_ ふりょ [いわいさんが復帰されるまで,微力ながら風博士を盛り上げていきます.]


2006-01-17(Tue)

_ [net]Samba-jp

なんだあの香ばしいのは…

Sambaって言いたいだ(ry

_ [風博士]Re:HyperEstraier対応

できたー.estcmd version の結果を g_strsplit する,というバージョンの取得の仕方はありなのか,と疑問に思ってしまうが…そこはそれ,素晴らしい査読者の方たちに委ねる.

もう一回見直して(もどうせダメなところがあるんだけど),明日MLに投げます.

_ [net]今すぐできる最新検索システム

Software Design 2月号がこんな特集らしい.買うしかないな.こんな特集に組み込まれるぐらいだから,やっぱり Rast って需要はあるんだね.

風博士のRast対応を来月の目標にしよう.

via ふぇみにん日記


2006-01-18(Wed)

_ [life]むぅ

我眠い,故に我寝る.

また明日で…


2006-01-23(Mon)

_ [風博士]Re:Re: HyperEstraier対応

コミットしました.初コミットです.

_ [life]禁煙始めました

今回ばかりは本気.

ニコレットも買ってきた.高すぎだよ.24個入りで2205円も取られた…しかもまずいよこれ.やたらと硬いし.ピリピリするし.でも,効果はある.確かに吸わなくても大丈夫だ.

とりあえず貧乏学生としては,ニコレットを最初に2万円分ぐらい買ってしまうのが得策なんじゃないだろうか.わざわざ袋も破って,返品できないようにまでして,自分を追い込む.

なんでここまでして禁煙するのか自分でも半分分からんのだが.僕がタバコを吸っていて一番感じるのは,時間と集中力の浪費だ.金と健康はそこまで意識したことはない.本当に金がない時には,「タバコをやめよう」じゃなくて「タバコを買うのをやめよう」だったし.

何か考えごととか,作業をしているときにタバコが吸いたくなると,作業が手につかない.自由に吸える場所であればいいけど,研究室みたいな場所だと外までいかなきゃいかん.自分の集中力の低下と,健康を害して金のかかるタバコを天秤にかけて,今回の禁煙に至った.

会社で働くようになる前になんとかやめておきたい.

_ [net]米Agilent,3次元電磁界解析ツール市場に再参入へ

ぬぬ.

HFSS って元々 Agilent のだったんだ.

_ [宿泊]47泊

修論発表予稿

本日のツッコミ(全4件) [ツッコミを入れる]

_ kou [まっていました. :)]

_ ふりょ [そんなにタバコを吸う僕が気に入らなかったのか orz 査読お願いします.]

_ しゃぼ [タバコだけじゃなくていろいろ控えるべきだよ。うん 健康診断にひっかからないぐらいに・・・]

_ ふりょ [大丈夫.医者のお墨つきをもらったばかりの健康体だ.]


2006-01-24(Tue)

_ [宿泊]48泊

修論.

1日でゼロからすべて書き上げようと思ったが,80%の所まで来て気力が尽き果てた.

本日のツッコミ(全2件) [ツッコミを入れる]

_ muneda [新しい写真追加したので,それでも見てリラックスしながらがんばってください>修論]

_ ふりょ [ありがとうございます. 他人のくせに,(´ー`)デレー っとしてます.]


2006-01-25(Wed)

_ [life]Windows と Linux の行き来

危険だ.MS Word で常に C-S を連打する生活を続けてると,Linux のターミナルでメール書いた時,同じくC-Sしてスクリーンロック連発.

_ [study]実車測定

キタコレ.素晴らしい一致だ.

順風満帆.

本日のツッコミ(全3件) [ツッコミを入れる]

_ しゃぼ [今日、まさに逆をやってきた WindowsのTerapadで保存するときにEsc -> :w -> Enterとや..]

_ ふりょ [vim の癖は危険. Excel で Esc が一番危険.]

_ Halcslck [OKnu9s この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/busi..]


2006-01-27(Fri)

_ [study]修論終わり

宣言どおり3日で全部書き上げた.実験しつつ,それをリアルタイムに論文にフィードバックするという離れ技をやりつつも,実験の神が乗り移ったおかげで,すべて問題なし.素晴らしい結果が得られた.思わず,

垂・直・面!垂・直・面!

と叫びたくなった.この成果はすごいぜ.早く学会に投稿せねば.

_ [life]週末

一応やることはほとんど終わったし,時間に追われることもないので,部屋の片付けでもしようか.

もうそろそろ出ていく準備を整えておかないと.

本日のツッコミ(全2件) [ツッコミを入れる]

_ kou [すげぇ... < 修論]

_ ふりょ [いい加減の極みす. 実験がうまくいかなかったら,とか考えてないですからね.わはは.]


2006-01-29(Sun)

_ [net]W3C準拠なHTTPパンティ

404なんて,考え方によっては恐ろしい方向に.

_ [life]大掃除

(゜д゜)キレー

すごいよヤニが.まっ黄色だよ.禁煙の励みになった.

_ [風博士]Rastによる履歴検索

むぅ,ほとんど実装してしまった.ただ,purge するあたりが HyperEstraier のようにはいかないので,utils.c から削除したコードを復活させなきゃいかん.

せっかくきれいにしたのに嫌だなぁ.Rast の方で HyperEstraier みたいな挙動にしてくれないかな…ちょっとコードを見てみようか.

それにしても,title 属性を DB に保存するために

rast create --preserve-text --property=title:string:search history_index.rast

したら,history を全部 register するのに3時間半かかったよ…さすがにこれは遅くて辛い.


2006-01-30(Mon)

_ [linux]building firefox with libxft-1.8.2-2

よくわからんが,pkg-config が腐ってるっぽく,gfx/src/ps/nsFontMetricsPS.h の include で怒られる.どうやら,freetype関連のヘッダファイル名を define していないらしく,そんなヘッダ無い,と止まってしまう.

なにやらBTSでごちゃごちゃ言われてるんだが,何を言ってるのかさっぱり分からん.とにかく pkg-config --cflags xft しても何も出力されないのが原因なんだろう.

色々やってみても全然うまくいかなくて,イライラして sarge から .pc ファイルを持ってきた.Version: の所だけ書き換えてコンパイル中.今はうまくいってるみたい.とりあえず問題の所は突破した.

本日のツッコミ(全1件) [ツッコミを入れる]

_ Kbvsfdzv [gblvn9 この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/busi..]


2006-01-31(Tue)

_ [風博士]地味な所

リリースのスケジュールがまったく読めないので,とりあえず ./configure --enable-Werror して,止まった所をひたすら叩いていくことにした.

utils.c がすげぇ事になってるぜ!

_ [風博士]#include って難しい

どこでどうやって #include するべきなのかが分からない…

utils.c はとりあえず潰したが,kz-io.c で激戦中.全然見当もつかないよ.なんで g_return_if_fail で文句言われなきゃいかんのだ.

ダメだ全然分からん('A`)

もういや,誰か助けて.utils.c の方はこのパッチで Werror は突破します.なぜこのキャストが必要なのか全く理解できませんが,とりあえず入れてあります.ちょっと状況が混沌としてるので,コミットはしません.


2003|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|05|06|07|08|09|10|11|12|
2008|01|