katsuwo's diary - かつを日記

先月 2002年01月 来月
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
HNS logo

2002年01月01日(火)

#1 a happy new year.

あけましておめでとうございます:)
今年もよろしくお願いしますです。

去年もどうにか日記を付け続けることが出来ました:)
衆知の通りきっちり毎日書いていたわけじゃありませんが:p 、
まぁ、自分の中で許容できる範囲内ではどうにか書き続けられています。

願わくば今年も書き続けていられるようにしたい物です。

awards.:

去年の日記記述量上位 10 日とか。
% ls -l | sort -nr +4 | head -10
-rw-rw-r--    1 katsuwo  katsuwo     14265 Sep  5 00:53 d20010904.hnf
-rw-rw-r--    1 katsuwo  katsuwo     10810 Sep  4 08:47 d20010902.hnf
-rw-r--r--    1 katsuwo  katsuwo      8899 Jan 19  2001 d20010118.hnf
-rw-rw-r--    1 katsuwo  katsuwo      8423 Nov  8 03:25 d20011107.hnf
-rw-r--r--    1 katsuwo  katsuwo      7859 Jul 25 03:09 d20010724.hnf
-rw-r--r--    1 katsuwo  katsuwo      7629 Jun  6  2001 d20010604.hnf
-rw-rw-r--    1 katsuwo  katsuwo      7249 Nov  7 01:24 d20011106.hnf
-rw-r--r--    1 katsuwo  katsuwo      7037 Jul 21 01:31 d20010720.hnf
-rw-rw-r--    1 katsuwo  katsuwo      6657 Dec  7 14:53 d20011207.hnf
-rw-r--r--    1 katsuwo  katsuwo      6604 Jul  7 04:26 d20010706.hnf
総記述量とか、一日あたりの記述量とか。
% ls -l | awk '{print $5}' | ruby -e \
  'i=0; while gets; i += $_.to_i; end; p i, i/365'
657261
1800
大して書いてませんねぇ。

monthly report.:

ついでに。
  1: 69264
  2: 32650
  3: 35214
  4: 54124
  5: 40445
  6: 55912
  7: 87845
  8: 44561
  9: 70868
 10: 51580
 11: 60640
 12: 54158
月ごとの集計なんてしてみたりして。
ふむ。偏りがあるような無いような。季節と記述量は関係ないのですかね?

#2 zebedee package

とりあえず openssl と link するように変更。
このあたりは Oliver さんに多大に感謝せねばなるまい *1

明日はもうちょっと気合いを入れて init.d script に手を出す予定。
つーか、80% ほどは出来ているのだけどまだちょっと debug が足りない感じ。

*1: zebedee-2.0 package を packaging の参考にと頂いたのです:)

#3 [links] 今日の links

http://ukai.org/debian/debconf/tutorial.html.ja The Debconf Tutorial:

鵜飼さんが和訳された debconf tutorial の和訳。
原文見るのが面倒な人には非常に役に立ちます:)
もしくは /usr/share/doc/debconf-doc が原文なので、let's apt-get & less。

#4 an instant passing the year.

行く年来る年 -> ムトゥのコンビネーションをこなしつつ、
debian package の hack していました。

#5 [soccer] emperor's cup

s-pulse 優勝しましたね:)
破れたセレッソもとてもよい試合をしていました。

どちらが勝っても納得のいく好ゲームだっただけに、
最後の最後で競り勝てたのはとてもうれしいですね:)

しかし、後半 30 分過ぎは本当に心臓に悪かったなぁ。
何をやってもすべてがセレッソの攻撃につながってしまうんだもの。
ファールすれすれのプレーも多かったし。
2-2 になったときはこのまま負けてしまうんじゃないかとすら思えたほど。

でも、1 点目の alex はすばらしかったし、2 点目も良い形だったので ok すね。
これで弾みをつけて asia cup winners cup も取って欲しいものです:)

あー。おもしろかった。:)

pal-chan:

このポーズ はどうかと思うぞ。

#6 change to use ssh from rsh.

研究室の中でも rsh で network 内を動き回るのはいやなので、
なるべく ssh を利用するようにしてみた。

まずは、rsh を使わないように alias をかけた。
% alias rsh ssh
しかし、pass phrase の入力を求められるとやっかいなので、
no pass phrase の key を作成する。
% ssh-keygen -f ~/.ssh/nopasswd
で、作成した ~/.ssh/nopasswd.pub を ssh で入りたいマシンの
~/.ssh/autherized_keys に登録する。
うちの場合は nfs で /home が共有されているので、そのまま cat しました。
% cat ~/.ssh/nopasswd.pub >> ~/.ssh/autherized_keys

これで、nopasswd.pub が登録されている host に対しては
no pass phrase で ssh 出来るようになっているので、あとは普通に使うだけですね:)

pass phrase:

debuan 本には pass phrase がある場合でも
% ssh-keygen -f ~/.ssh/passphrase
% ssh-add ~/.ssh/passphrase
とすれば phrase を聞かれることがないと書いてあるのだけど、
やはり聞かれてしまうのだよなぁ。
なぜだろう?

設定や運用の楽さでは ssh + pppd よりも zebedee + pppd の方が
良さそうに思えるが、そんなことはないんだろうか?

#7 back up

さすがにそろそろ mp3 の backup を考えたくなったのだけど、
それに見合う utility が見つからない。
だけでよいのだけどなぁ。

分割 backup:

backup の対象は /home/music。
mp3 が置いてある directory なので必然的に容量は大きいのだが、
cd-r に backup を取ることを考えると、分割することは必須となる。
このあたりのやりくりがうまい tool があるととても良いのだが。

富豪でない私は、ちょっとだけ余った cd-r のスペースをうまく使ってくれると
とてもうれしくなってしまうだろう:)

差分 backup:

backup を取ると言っても、毎回 full backup を取っていては
とてもじゃないが割に合わない。
なので、定期的には差分 backup を取るという体制にしておきたい。

重要なのは削除したファイルが restore 時によみがえらないこと。
いくつか見た tool ではこれが出来ないでいるようだ。
file zombie は見たくないのだけど、これが出来ないと話にならない:p

cdimage or copy to a directory:

自宅には cd-r がないので、直接 cd-r へ書き込もうとする tool はダメ:p
cd image を作るか、どこかの directory に対して書き込みを行うものがよい。

404 not found.:

要求が maniac 過ぎるのか、全然見つからない…。
むむむ…自分で作るのはいやなのだがなぁ。

#8 dream, dream.

"夢を見ている夢"っていうのは fork() なんじゃないか、と言う話になった。
いや、どうでもいいけど。

2002年01月02日(水)

#1 高校サッカー

帝京vs作陽:

tv で帝京vs作陽をやっていたので、だらだらと見てみる。

帝京がダメすぎだったので負けてしまう。
後半 20min ぐらいまで帝京っぽくないサッカーしてたのが敗因ぽい。
まぁ、調子が出てないところを作陽がいい game making したのが効いたんでしょう。

その他:

国見は 4-1 で勝ち、市船は 6-0 で勝ちだそうな。
6-0 で負けるってなんかもう切なくてしょうがないだろうなぁ。

うあ、青森山田負けてますよ!! 相手が鹿実とはいえ、うう…(;_;

#2 stats.distributed.net

いつ行っても history が表示されないうえに、
Data shown reflects all blocks received as of 15-Dec-2001 at 23:59 UTC
なんて書いてあるのは、やはり distributed.net が busy なせいだろうか…(;_;

#3 WindowsXP and CD-R

windows xp では os 自身に cd-r を焼く機能が付いているのだけど、
これが私が想像しているよりも遥か使い物にならないことが発覚(;_;
なんで iso image ぐらい焼けないんだ!!(;_;
これじゃ bootable cd も作れないし、rock ridge only な
image も作れないじゃないか(;_;

うう…やっぱ xp なんてステだ…ちくしょう…(;_;

not enough space.:

このままじゃあふれて死ぬ…(;_; help me pleeeeeeeeeeeze!(;_;
/home の残りが 2MB しかないってどういうことですかっ…

#4 [links] 今日の links

ダメだ。手元に積んで置いても読む暇がない…。
取りあえず載せるだけ載せてしまえ。

UMLによるオブジェクト指向開発:

まだ UML をベースにした設計/分析はやったことがないので非常に参考になります:)

[Java]表計算ソフトにFlyweightパターンを適応:

java で flyweight pattern を実装したときのお話。
使ったことがない pattern なので役に立ちました:)

MFC との付き合い方のコツ:

Design Pattern と MFC を組み合わせて使うときのお話。
キーは だそうな。

オブジェクト指向言語は間違っていた! --- 新世紀言語 MixJuice ---:

class と module という概念を持っている MixJuice という
Java ベースの言語の紹介記事です。

はたして、こういう言語があったときに目的通りに利用されるものですかねぇ。
adhoc になりがちな現場で、実際にこれが成り立つのかも気になります。

Aspect-Oriented Software Development:

Aspect-oriented software development is a new technology for separation of concerns (SOC) in software
development. The techniques of AOSD make it possible to modularize crosscutting aspects of a  system. 

Like objects, aspects may arise at any stage of the software lifecycle, including requirements specification,
design, implementation, etc. Common examples of crosscutting aspects are design or architectural
constraints, systemic properties or behaviors (e.g., logging and error recovery), and features. 

Researchers in AOSD are largely driven by the fundamental goal of better separation of concerns. So while
crosscutting tends to be a significant focus of their work, they also incorporate other kinds of SOC
techniques, including such well established approaches as OO and good old-fashioned structured
programming. This is reflected in the way much of the work in the field blends support for many different kinds
of modularity including block structure, object structure, inheritance as well as crosscutting.
だそうな。
intro. しか読んでないのでいまいちつかめてません…(;_;
だれかかみ砕いて、僕に理解させて…(わら

推薦図書/必読書のためのスレッド5:

荒らされまくってるけど、冒頭の図書リストは参考になるのかも。

PSP ネットワーク:

psp を推進しようと言う group みたいです。
psp っていうのは以下抜粋参照。
PSP(Personal Software Process) は,技術者個人の定量的な 開発実績情報により, 個々のレベルに応じた合理的な開発目標 の設定と開発プロセスの構築を支援するとともに, 確かな改善 への動機付けを与えます。 PSPは,技術者がスキルを自発的に 蓄積しプロセスを自発的に改善することを促します。 これを学ぶ ことでプロのソフトウエア技術者として必要な規範を合理的に修 得することができます。 PSPはソフトウェアの品質と生産性を大き く左右する技術者個人の能力を全般的に改善する 極めて画期 的な手法です。

別データベース内のテーブルの参照方法について:

pgsql で sql 文を用いて別データベース内のテーブルを参照する方法です。
基本的にはできないのですが、pgsql7.2 に付属の
contrib/dblink 関数を用いれば可能です。

しかし、そんなことをしようとする時点で設計ミスなんでないのかね?
なるべくならやりたくないねぇ…

UML1.4 変更・拡張点 〜素早い移行のために〜:

uml 1.3 から uml 1.4 への変更点のリスト。
2001.09 の話なのだけど、私はまだ古い uml しか知らないのですよね〜(^^;

Helpdesk - How-To : Security:

zdnet の security corner。
素人向けにそれなりにわかりやすくかみ砕いた security 関連の話がなされている。

browse list に追加して置いても良いかもしれない:)

BRLTTY 対応 potato インストールイメージのインストール:

brltty を使っている debian install だそうです。
これで install から点字ディスプレイを使うことができるそうです:)

Diary Publisher:

hns で書かれた日記を latex に変換して、印刷するための software らしい。
後で試してみようかなぁ。

クリスマスの「X'mas」表記は誤字です。:

Chirtmas を X'mas と書くのは誤記らしい。
Xmas と書くべきだそうだ。

成田空港で火災…ドッキリ中田イタリアへ出国:

「ファイアー、ファイアー!」と逃げ惑う外国人男性。 と聞いて
ファイヤーマリオを思い浮かべたのは僕だけでしょうか!?

Utah Teapot って何だ?:

3D ものでたまにみかける teapot は utah teapot と呼ばれるもので、
大昔からなぜか使われている伝統的な物だそうです。

ソニー、ニフティ買収へ:

日本最大の community が売られてしまうのですね…。
さて、今までの nifty の archive はどういう風に扱われるのですかね?
internet においても closed だった bbs 時代の遺産の扱いがちょっと気になります。

ホームページレイアウト on HTML for stylesheet(IE5対応):

ie 専用の stylesheet utility。

いんちき芸術:

高林さんのいんちき芸術のページができた。
いつみてもこのなまずは味があります…:)

リファクタリング <ソフトウェアの改善手法を知る>:

refactoring の紹介文。
ざっと読む文には非常によいのでは:)

IBM、試験管内の量子コンピューター実験に成功:

いまいちどういう分野に発展するのかが分かってないんですが、
ともかく大きい一歩なんでしょうね:)

FIVEZEROZERO:

fiat で大気圏突入…かっこいい…:)

2002年01月03日(木)

#1 spam.

ぼけーっと spam mail の header を見ていたら、
Received: from yumeko.to (67.146.104.203.livedoor.com [203.104.146.67])
なと言うのが共通点であることに気づいた。
面倒なので、手元の procmail ではこれを蹴ることに決めた。

#2 初詣

ふらりと散歩ついでに都心まで出てみた。
特に用事も思いつかないので、都心の散歩をしていたのだけど、
途中で秋葉に向かうところの神田明神が盛っているのに気づいた。

覗いてみると初詣の参拝やらそれを出迎える出店やらでにぎわっていた。
さすがに正月も 3 日目、しかも日暮れに近い時間だったので、
人でごった返すということは無かったので、ふらりと立ち寄ってみた。

お賽銭を投げ入れて来ただけなのだけど、ちょっぴり幸せな気分になれました:)
さて、願い事に見合う努力くらいはしましょうかねぇ。

tour de akiba.:

ついでに秋葉へ。
用は新しい技術書を適当に探すのと、中古 cd 屋めぐりを少しだけ。

技術書は特にめぼしいものもないので、買い物はしないでおく。
デマルコのピープルウェアが平積みになっていたのが結構気になるのだけど…。
このあたりはお金が入ったら考えよう。

中古 cd 屋では fennec! を発見したので拾っておく:)
こっちはともかく 1st の swinging popsicle がみつからないんだよなー:p

air.:

なんだか今日は空が低く見えるのは気のせい?
日も暮れた帰り道、双子座がいつもより大きく見えるのです。
はてさて。

#3 couple of cards.

12 月あたりから小田急線の改札は同時に二枚カードを入れることが
出来るようになったのだけど、実はあまり役に立たないことが判明。
二枚入れることが出来るのは定期 + パスネットの組み合わせぐらいで、
パスネット 2 枚という組み合わせは使えないらしい。

今日ちょうどパスネットを買い足したので気づいたのだが、役に立たないなぁ(;_;
せめて小田急も rechargable なカードが使えるようにならないかなぁ。

つーか、suica 使わせろ(;_;

#4 [soccer] 市船破れる!

3 回戦も面白い展開になってきてますね…(;_;
市船も東福岡も静岡学園も負けてしまっていますよ。
これは結構驚き。かわりに作陽が勝ってると言うのもなかなか面白い感じです:)

#5 Doraconids.

今宵はりゅう座流星群の日。
ちょっとだけ寒さを我慢してお出かけしましょうか。
極大は 3 時ゴロらしいですよん:)

今日も 2 ケタ見ることが出来るといいけど…。さすがにりゅう座は難しいかな(^^;

#6 vrms

vrms は実行時に non-free packages を見つけるだけではなかったのです!

cron.monthly に登録されていて、毎月こんな report を投げてくるようです。
/etc/cron.monthly/vrms:
             Non-free packages installed on evergreen

communicator-base-477     Communicator base support for version 4.77
communicator-smotif-477   Netscape Communicator 4.77 (static Motif)
distributed-net           donate unused CPU cycles - client for distributed.net
gimp1.2-nonfree           GIF and TIFF support for the GNU Image Manipulation Pr
j2sdk1.3                  Blackdown Java(TM) 2 SDK, Standard Edition
lame                      Wave to MP3 Converter.
lha                       lzh archiver
netscape-base-477         4.77 base support for netscape
netscape-java-477         Netscape Java support for version 4.77
rar                       Archiver for .rar files
tgif                      Interactive 2-D drawing facility under X11.
unrar                     Unarchiver for .rar files
wwwcount                  Web page access counter
突然こんなリストが来るからほんとにびっくりしたよ…(^^;

#7 trophy

せっかく都心に出たのだから、渋谷によって <サッカー>W杯の優勝トロフィーが一般公開 (毎日新聞)
見てくれば良かった…とちょっとショックを受けたのだけど、
実はもう渋谷での展示は終わっていて、今日は横浜で展示していたらしい。
むぅ。出かけるときに気づいていれば、横浜にお出かけしたのに…(;_;

2002年01月04日(金)

#1 doraconids.

りゅう座流星群の観測に行って来ました。
晴れいたのはよいのですが、代わりに月明かりがとても強く、
コンディションは上出来と言い難い状態だったのですが、
どうにか 1 ダース程度の星を見ることができました:)
思ったよりも強い光を放つ星が多いようで、
最初に見つけた流星は天頂を横断する長い物もありました。

しかし、さすがに 1 月は寒いですね。
吹きすさぶ風が冷たくてかなり辛かったです…。

mission complete!:

これで今シーズンの流星群は制覇ですかね。
今シーズンは と大きい流星群すべてでかなりの数を見ているので、満点の結果ですね:)

とくに今季はしし座流星群が大当たりの年だったことも併せてすばらしい年でした。
さすがに同等のものは期待できませんけど、
今年もまたたくさん見られると良いですねぇ。

#2 wanna be!

"めざせ、ヤングエンジニア"といううたい文句のポスターが貼ってあったのですが、
私は何を見間違ったのか めざせ、ヤクザエンジニア と読み間違っておお焦りしてました。

うう…確かに一部のエンジニアってかなりヤクザまがいな気がするけど…(;_;

#3 [links] 今日の links

昨日に引き続き豆蔵な記事を読み続けてます…(^^;

BeanShellご紹介 <オブジェクトと遊ぶ>:

beanshell という、java の script 処理系の記事。

ruby に置ける irb のようなもののようです。
ちょっとおもしろい感じなので、何かに役に立ちそうですが…。

JDK1.4 新機能の紹介 〜素早い移行のために〜:

java1.4 の新機能の紹介記事。
について説明しています。

assert の説明のところでは表明と契約について書いてありますが、
これは testing framework で置き換えて読んだ方がよいような気がします。
コード中に assert を含むのは SIMPLE に反しますからね。

UML入門 <基礎編>:

例題もなかなか良い感じなので、UML 未経験者も含めて一読の価値はあります。

「Strutsを調査せよ!」:

java の web framework である struts の説明記事。
この記事は例題がないので、ちょっと寂しい感じかも。

まぁ、ちょっと触ってみたくはなりました。

Zebedee --- シンプルでフリーでセキュアなトンネルプログラム:

JM Project による zebedee の japanese man page。

man page 原文を読んでいない人は の項目だけは読んで置いた方がよいでしょう。

ダメなユーザインタフェイス講座:

間違ってもこういうインターフェースは作らないようにしましょう…。

カタカナC++:

見るに耐えないソースコードを持つ素敵な c++ 処理系。
だめすぎる…(;_;

#4 access control by URL pattern.

squid を使って URL による access control を行ってみました。

どうき。:

なんとなく(ぉぃ

以前、なんかの virus で /readme.exe にアクセスしに行くってのがあったので、
transparent proxy をしている squid がそれを防ぐことができないかなぁ、と
ちょっと気になって以前調べたのが最初です。

当時は忙しかったのと自分には影響がないという理由で priority を下げていたのが、
最近発掘されるに至る要因のようです:p

せってい:

まず、squid.conf 内で acl を定義します。
acl urlpattern url_regex "/etc/squid/rejecturl"
acl pathpattern urlpath_regex "/etc/squid/rejectpath"

http_access deny urlpattern
http_access deny pathpattern
acl を定義する際に url_regex と urlpath_regex を利用するのがポイントです。
url_regex
URL 全体に対するパターンを指定する(cf. http://www.sample.com/)
urlpath_regex
URL のうち、パスに対するパターンを指定する(cf. ^/index.html)

手元では以下のように定義しています。
% cat /etc/squid/rejectpath
^/readme.exe
今更ですが /readme.exe にはアクセスできないようにしました。
特に思いつかなかったので rejecturl は設定していません。

さんこうぶんけん:

奥村先生の squid の記事 を参考にしました。

#5 the end of holiday; the beginning of weekday.

我々にとっての三が日は終わった!!
(中略)
悲しみを怒りに代えて、立てよ、開発者!!(;_;

farewell, SHOGATSU...:

何故…終わってしまうの…僕が坊やだからなのかい…?(;_;

2002年01月05日()

#1 work in holiday.

weekend だというのに仕事をしに会社へ。

brain storming:

今日の作業は documentation の follow で、brain storming に協力する。

ついでに参考と言う形で などを強く推しておいた。
これが採用されるのであればなかなか面白い project になりそうだが… *1

む、refactoring を推すのを忘れていたぞ。
あの会社の code の大半は見られたものじゃないので、より強く推すべきであった(;_;

j2ee and java related technologies.:

残りの作業は presentation 用の document の作成だったので、
ちゃっちゃと進めながら作業の合間を見て、そこらへんに転がっていた雑誌を読んだ。
Java World とか WEB+DB Press とか普段読まないので、参考になる。

で、いくつかの記事を読んで EJB やら Struts あたりがようやくつかめてきた。
1 世代前の Java の技術から捨て置いたので、全然理解できていなかったのですが、
記事を読むことでようやく私の中で消化できました:)
あー。Java の先端技術はかなり興味深いことになっているのですね。
Java が好きじゃないからと言って放って置いてはいけないようです:p

体が空きそうな春先あたりにでもちょっと J2EE に手を出してみますかねぇ。
EJB や Servlet+JSP(Struts) などは非常に気になるところです。

*1: どの技術にしろ解っているのが私しかいないというのが不安ではあるが。

#2 hns-namazu

いつぞや に引き続き、また hns-namazu がだだをこね始めたので、
hns-namazu 用に install してある namazu を upgrade することに。
 ASSERTION ERROR!: NMZ.r (542) and NMZ.t (524) are not consistent! \
at /usr/share/ namazu/pl/util.pl line 257.

しかし、同じように home directory に install してしまうと、
apt の恩恵が受けられずにかなり cost がかかってしまうので、
なんとか hns-namazu も apt の恩恵を受けられるようにしたい。

そこで、hns-namazu をちょっとだけいじってみた。

namazu.cgi:

現在は namazu を home directory において利用しているが、
これを /usr/bin/mknmz などを利用するようにしたいので、
INSTALL.ja の
■ Namazu をサイト・インストールして共有する場合
を参考にする。

しかし、この方法で進めていくと問題がある。
install script 中で
cp -p $PREFIX/libexec/namazu.cgi $WEBDIARYDIR/namazu.cgi
としているため、namazu.cgi が コピー されてしまうのだ。
たとえ apt によって /usr/lib/cgi-bin/namazu.cgi が更新されたとしても、
$WEBDIARYDIR/namazu.cgi は更新されない。(古いバージョンのまま)
これはかなりうれしくない。

この行を ln -s するように書き換えた。きっと問題ないはず。

template/NMZ.*:

作業をしているときに template/NMZ.* が見つからずに困ってしまった。
auto-apt で探しても見つからないのだ…。

どうしてないのか、どうしようかと考えていたのだが、
debian.org の package 検索では namazu2-index-tools の中で見つかった。

なんで auto-apt では見つからなかったのだろう…(;_;

hns-namazu/setup.sh for debian.:

結局、次の patch を使えば要求を満たすようになったと思う。
--- setup.sh    Sun Jan  6 02:54:08 2002
+++ setup-deb.sh        Sun Jan  6 02:53:40 2002
@@ -21,29 +21,31 @@
 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

 # $Id: d20020105.hnf,v 1.2 2003/09/19 13:09:31 katsuwo Exp $

 # usage:
-# ./setup.sh [prefix hns_major_version diary_uri author alias_file index_dir]
+# ./setup-deb.sh [hns_major_version diary_uri author alias_file index_dir]
 # eg:
-# ./setup.sh
-# ./setup.sh /usr/local/namazu2
+# ./setup-deb.sh

-HNSSETUP=$HOME/.hnssetup
+# Depends: namazu2, namazu2-index-tools
+# Suggets: hns2
+
+HNSSETUP=$HOME/.hnssetup2
 if [ -f $HNSSETUP ]; then
  eval `cat $HNSSETUP`
 fi

 DIARYDIR=${DEFDIARY:-"$HOME/diary"}
 WEBDIARYDIR=${DEFHTML:-"$HOME/public_html/diary"}

-PREFIX=$1
-VERSION=$2
-URI=$3
-AUTHOR=$4
-ALIAS_FILE=$5
-INDEX=$6
+PREFIX=/usr
+VERSION=$1
+URI=$2
+AUTHOR=$3
+ALIAS_FILE=$4
+INDEX=$5

 URI=${URI:-"$DEFURL"}
 AUTHOR=${AUTHOR:-"$DEFMAIL"}
 PREFIX=${PREFIX:-"/usr/local"}
 VERSION=${VERSION:-2}
@@ -106,12 +108,12 @@
 fi

 cp -p hns-index2 $DIARYDIR/bin
 echo "cp -p hns-index2 $DIARYDIR/bin/"
 chmod +x $DIARYDIR/bin/hns-index2
-cp -p $PREFIX/libexec/namazu.cgi $WEBDIARYDIR/namazu.cgi
-echo "cp -p $PREFIX/libexec/namazu.cgi $WEBDIARYDIR/namazu.cgi"
+ln -s $PREFIX/lib/cgi-bin/namazu.cgi $WEBDIARYDIR/namazu.cgi
+echo "ln -s $PREFIX/lib/cgi-bin/namazu.cgi $WEBDIARYDIR/namazu.cgi"
 cp mknmzrc $DIARYDIR/namazu2/etc
 echo "cp mknmzrc $DIARYDIR/namazu2/etc/"
 cp namazurc $WEBDIARYDIR/.namazurc
 echo "cp namazurc $WEBDIARYDIR/.namazurc"
 cp -p $PREFIX/share/namazu/template/NMZ.* $DIARYDIR/namazu2/template

うーむ、ついでに hns-namazu package かなんか作ってみるかね。

#3 package making.

hns-namazu はいいのだが、zebedee をほっぽっておくわけにもいかんな。
script の debugging は私だけでは出来ないから、release してしまおう。

図々しくも、Oliver さんに一度お伺いしてみようかなぁ…。

2002年01月06日()

#1 few mails.

年末年始でメールの流量が少ないおかげで、
手元にたまっていたメールをすべて処理することが出来た:)
あぁ、メールが少ないってすばらしい!

2002年01月07日(月)

#1 眠る日々

なんだか、昨日は秋葉から帰ってきた後にすぐ寝てしまった。
そんなに疲れていたんだろうか??

the akiba city.:

新年最初の日曜日で、おそらく多くの人の正月休み最後の日であるために、
かなり混んでいたような気がする。

私は普段通りお茶の水からぶらぶらと歩きながら登場。
途中で神田明神にお参りして、甘酒なんか頂きながら。

昨日のようは主に友人につきあうことだったので、コースは友人にお任せ。
それでも安めのものをちょこちょこを買っていたので、あとで驚くことに…(;_;

2002年01月08日(火)

#1 new year's party.

昨日は新年会だったらしい。
おかげで今日はちょっとだるい。

#2 new year's seminar.

初回から資料を持たずに参加(^^; 先生からおしかりをいただく。
まぁ、次のときまでには作りましょう。

今回は早稲田の人々が来て発表をしていった。
人間科学なことだったので、いまいち深いところの理解ができなかったのだけど、
それはともかく実験ができて数字が取れるというところがうらやましいな、と思った。

#3 Mr.W.

なんか体調と機嫌が悪いようだ。
大丈夫かいな…(^^;

#4 the final.

決勝のカードは国見と岐阜工。
親と一緒に岐阜工を応援していたのだけど、負けてしまいました…。

中盤といわずどこといわず完全に国見の支配下でしたね。
早い寄せにほとんどのところでボールが奪われていたので、
岐阜工は手も足も出ない感じでした。
せめて途中から速いパス回しでの攻めに切り替えられなかったものですかねぇ。

前線までボールをつないでも、そこで囲まれて終わりでしたものね…(;_;
かなり良い動きを見せていた片桐も持ちすぎて奪われていたし。

あぁ。やっぱり国見か…。

#5 こーこーさっかーとぼく

決勝戦が出かける準備をしている最中に始まるものだから、
出かけることすらままならなくなってしまいました:p
うーむ。今日は研究室でやることがあったのだがなぁ…。

しかたない、家でやるか。

だけど。:

ついメールとか本とかを読んでしまうのであった…。
昨日買った野望円舞曲の 3 とか読了しちゃったりして。

#6 [links] 今日の links

dX: 最小のRUPプロセス:

dX というのは XP と RUP を組み合わせた物かな?
どこから引っ張ってきたものか忘れてしまったので、そのあたりは曖昧ですが。
ただ、においとしてすごく XP 的ですね。

割と実践しやすい形での process になっていますね。
導入しづらいなら、さらにかみ砕いたものを導入しても良いとは思いますが。

OpenAntiVirus Project:

open な antivirus software project らしいです。

file scanner として動くだけではなく、samba,squid に組み込んで filter として
動作させることも可能のようです。
virus database とかはどうやって管理されているのですかね?

かなり興味深い project です:)

AntiVirus Software と permission について:

NT 系の Windows で動く AntiVirus software は permission によって、
アクセスの禁止されているファイルに関しては virus scan を行わないそうです。

どのようにすれば virus scan を行うことができるか調べた結果がまとまっています。
Administrators がアクセスできないファイルをウィルス検査するには
どうすればよいか実験してみました。

結果は「できる(場合がある)」です。

以下、まとめると。

・Administrators あるいは LocalSystem 権限であっても ACL により
  アクセス権がないファイルには通常ではアクセスできない。

・「ファイルとディレクトリのバックアップ」の権限を持っているだけ
  ではダメで、ウィルス検査をするプロセスに対して SE_BACKUP_NAME
  特権を割り当てなければならない。

・SE_BACKUP_NAME 特権を割り当てられたプロセスは、CreateFile API
  の dwFlagsAndAttributes パラメータに FILE_FLAG_BACKUP_SEMANTICS
  フラグをセットすることでアクセス権のないファイルにアクセスする
  ことができるようになる。このとき BackupRead でなくても通常の
  ReadFile API にてファイルデータを読み出せる。
  よって、[memo:2211]で私が書いた、「BackupRead() という API を
  使う」というのは必ずしも必要ではないようです。
   
つまり必要条件は、

1.「ファイルとディレクトリのバックアップ」の権限を持っていること。
2. 実行プロセスに SE_BACKUP_NAME 特権を割り当てる。
3. FILE_FLAG_BACKUP_SEMANTICS フラグをセットしてファイルを開く。

ということになります。
で、実際に McAfee VirusScan とテスト用プログラムで test を行ってみたそうです。
McAfee VirusScan にはコマンドラインスキャナー (SCAN.EXE) という
便利なツールが付属するのでこれで実際にやってみました。
テスト用の EICAR.com を C:\TEMP\test フォルダに置き、そのフォルダ
およびファイルのアクセス権を Everyone: 拒否 に設定。

まず Administrators に「ファイルとディレクトリのバックアップ」権限
があることを確認して、そのままスキャンさせるとやはりスキップされます。

次に、CreateProcess にて SCAN.EXE を起動し、同時にそのプロセスに
SE_BACKUP_NAME 特権を割り当てるというテストプログラムを作りました。
これでやってみると何とさきほどスキップされた EICAR.com をきちんと
検出しました。

以上、このテストプログラムと McAfee VirusScan コマンドラインスキャナー
を組み合わせればどんなファイルでも検査可能と言うことになります。


因みに、GUI 版の Scan32.exe でも試しましたが、こちらはダメ、スキップ
されてしまいます。ウィルスバスターもダメでした。

謎のCPU「1Giga Pro」をオンボード搭載したマザーの展示始まる:

どんなものでもいいから、silently に動く pc が作れませんかね。
これがそれであって欲しいものですが、さてどうでしょうか。

まぁ、cpu fan が載っている時点で skip it:p な気がしますが。

プロセス改善(仮):

プロセス改善とその周辺のいろいろなことをやり取りするためのメーリングリストです
だそうな。
xp-ml から分離したものらしい。

しかし、CMM みたいな話は私は理解できないので、残念ながらパス。
もうちょっと大人になってから考えますかねぇ(^^;

Goslingインタビュー,2001年のJava10大ニュース:

去年の java に関する 10 大ニュース。
2000 年のものは これ

ますます java が充実していくのが解りますねぇ。

PowerMate:

かなり cool な design の USB volume controller。
The PowerMate universal audio controller is a unique USB device that can control the volume of your computer and your audio applications, and that's just the beginning!
だそうで。

たまらん、これ欲しいぞ! $45 はちょっと高いけど(^^;

ERAM for Windows95/98/Me:

windows で動く ramdisk driver。
Windows95/98では従来のDOS用デバイスドライバが使えますが、DOSのドライバに はシステム上の様々な制約があるため、Windows95/98/Me本来の性能を引き出す にはふさわしくないものになっていました。
だそうで。

えらー15の技術情報:

pc-98x1 がらみのハードウェア操作に関する情報が大量に載っています。
今になっては役に立つことは少ないでしょうが、読んでいておもしろいです:)

文章教室 ——読みやすい文章を書くために——:

結城浩さんによる文章の書き方講座。
とりあえずご一読を。

#7 video server.

tv 録画を行う、video server が欲しい。
当然 network storage になっていて、録画されたものは network から参照可能で。

つか、素直に vaio mx とか買うかぁ?(;_;
どこぞの windvr とかゆー card は sleep してると録画できないものなぁ…。

cs broadcast.:

くそぅ、すべては自分の部屋で cs が見られないのがいけないんだっ(;_;

#8 102 年。

canopus のサポートに意見を投げたのだけど、そのフォームの作りがひどい。

項目を埋めて送信ボタンを押すと
入力いただいた内容は正しく送信されました。送信時刻: 102年1月8日 19時42分28秒 
なんて出てくる。

天下の canopus が未だに 2000 年問題の名残を抱えていらっしゃるとは…(;_;

#9 register google.

なんとなく google に登録してみた。

#10 共有

perl とかで namazu.cgi の wrapper を書くという意味ですか?
perl に疎いものでいまいち読みとれてません…(;_; *1

ぱっと調べた限りでは perl の do って block を作る構文みたいですが、
do "$PREFIX/libexec/namazu.cgi"
って何の意味も持たないような…
do `$PREFIX/libexec/namazu.cgi`
なら解りますが。それでも do を付ける意味がいまいち解らないけど。

で、勝手にそう解釈して *2 実験してみたんですがダメですね。
Premature end of script headers が発生してしまいます。
#!/bin/sh

/usr/lib/cgi-bin/namazu.cgi
と shell script で呼び出しても同様です。
ちゃんと popen して stdin, stdout を差し替えてあげなくてはダメなのかなぁ?

load/require:

ruby で load/require している場合は同じ process 内なので
問題ないのかもしれませんね。

the wrapper output nothing.:

む。よく考えたら
`/usr/lib/cgi-bin/namazu.cgi`
としても、この wrapper script は何も出力しないのですよね。
そりゃ Premature end of script headers になるわ(^^;

で、namazu.cgi の出力結果を print するようにしてみた
#!/usr/bin/env perl

print `/usr/lib/cgi-bin/namazu.cgi`
んですが、
namazu: /var/lib/namazu/index/NMZ.head: No such file or directory
namazu: /var/lib/namazu/index/NMZ.body: No such file or directory
namazu: /var/lib/namazu/index/NMZ.foot: No such file or directory
などと言われてしまいます。
むむぅ、.namazurc が読まれていないのですね…。

*1: やぱ perl って hacker's literacy に含まれますかねぇ…
*2: 違うのであれば誰か正しい意図を教えてくれるとありがたいです(^^;

#11 pass phrase of ssh

たしかに、ssh-add を使うには ssh-agent の起動が必須です。

私の中では完結していたので書いていなかったのですが、
.login の中で
exec ssh-agent $SHELL
設定している ので ssh-agent は常に起動している状態です。

keychain:

なるほど。 keychain は確かにこういう用途には 最適のよう ですね。
むやみに ssh-agent を立ち上げるよりもよほど良さそうです。
apt で手に入れることもできるようですしね:)
% apt-cache search keychain
keychain - An OpenSSH key manager

まぁ、相変わらず便利さと unsecure の trade off はあるわけですが、
それは今までより向上することで目をつぶることにしましょう。

install keychain:

.cshrc に次の行を追加した。
keychain -q ~/.ssh/identify
source ~/.ssh-agent-csh-evergreen > /dev/null
問題なく動いているようだ:)

2002年01月09日(水)

#1 new zebedee package.

手元で見ている限り問題なさそうなので upload しておいた。

debconf script はかなり自身がないのでつっこみ募集中だなぁ。

#2 [links] 今日の links

アスペクト指向プログラミング 関連情報:

AOP に関する日本語の情報群。

ちょっと前に LINk http://www.t3.rim.or.jp/~raeva/diary/ Ryuji Abe さんに教えてもらいました:)

#3 ssh.

昨日の keychain の設定をうけて、ssh の設定を見直してみたり。
いくつか ssh2 が混じっているおかげで、非常に苦労してしまいました(;_;

openssh and ssh2-nonfree:

ssh2 と openssh では key の形式が違うのですね。
相互運用する際には ssh-keygen で変換してあげる必要があるようです。

server: ssh2, client: openssh の場合には key を
% ssh-keygen -x id_dsa-openssh.pub > id_dsa-ssh2.pub
として、ssh2 形式にしてから ~/.ssh2/authorization に登録します。

逆に server: openssh, client: ssh2 の場合には
% ssh-keygen -X id_dsa-ssh2.pub > id_dsa-openssh.pub
として、openssh 形式にしてから ~/.ssh/authorized_keys2 に登録します。

ssh2-nonfree:

ssh2-nonfree を触るのが久しぶりだったので、鍵の扱い方を忘れていました(;_;

public key の登録は key file をどこかにおいた上で、.ssh2/authorization に
Key [path to key file]
と記述します。

生成した public key を利用するには .ssh2/identification に
IdKey [path to idkey file]
と記述する必要があります。
ssh-keygen で生成するだけでは不足なのです:p

さんこうぶんけん:


2002年01月10日(木)

#1 bad condition

…腹痛なんてキライだ…(;_;

#2 光通信による“世界初”の研究ネットワーク「スーパーSINET」きょう開通式

うちの大学もどうにかして sinet に加入できないものかねぇ。
体感で flez-adsl より遅いなんて、つかいものになりゃしないよ:p

sinet network:

学術情報ネットワーク回線構成図 を見てみると、sinet はタイ王国につながっているようです。
なにゆえタイななんでしょう??

加入規定:

msword document はやめようよ、もう(;_;

#3 vaio's battery.

どうやら完全に使いものにならなくなってしまった模様(;_;

朝、自宅を出るときは 100% だったのだけど、
研究室で再び開いたら 65% になっていました。
この間に授業に出たりとかで 2.5h しか経っていないんですが…(;_;

そんなもんで放電してしまうのか…(;_;
1 日放っておいたら完全放電してしまいそうだな…(;_;

#4 サンダルの死.

研究室においてあったサンダルが壊れていたので、修復を試みてみた。

サンダルは二枚に割れてしまっていたので、まずはボンドで張り付けてみた。
しかし、木工用ボンドでは力及ばず、修復できなかった。

仕方がないので、ホッチキスを使って留めることに。
見た目は置いといて、それなりの強度を確保することができました:)

崩壊。:

ちょっと歩いてみたら簡単に壊れてしまいました(;_;

しかたない、また 100 円ショップで見つけてくるか…。

#5 hns-namazu/setup-deb.sh

patch を hns-dev に投げておいた。

さて、hns-namazu package は作るべきかなぁ。
手元には既に入っているので必要ないと言えば必要ないんですが…(^^;

#6 network imspecialist.

夢破るる…(;_;

さて、春の database specialist に備えるか…。

men in blue.:

偉大な先輩である MIB …もとい、toshi 先輩は合格されたそうな。
おめでとーっす:)

#7 men in black.

w 氏が仮免マンの歌詞をメールで送ってきた(;_;

どんな曲なのかかなり気になってきてしまった。
…ワナだったのか!?

2002年01月11日(金)

#1 silly works.

今日もお仕事。
作業時間よりも待ち時間が多いのはどうにかならないものかしら。

#2 at way to home.

帰り際、バイト先の人から近況を聞く。
近況というよりも、半分上司への愚痴と言う感じかしら。
参加し始めたプロジェクトは崩壊間近というのも話に登った。

覚悟していたとは言え、抜けられないあり地獄に踏み込んだような気がするなぁ。
アルバイトなので、うまくさっさと手を切るように話を運ぶべきかも…。

at station.:

駅で moko-p と偶然であう。
なんか相変わらず体調悪そうだったんだが、大丈夫かしらん。

2002年01月12日()

#1 hns-namazu installer for debian.

LINk http://www.h14m.org/cgi-bin/viewcvs.cgi/namazu_for_hns/setup-deb.sh 取り込まれた らしい。

symbolic link problem.:

なぜ namazu.cgi を symlink ではなく copy しているのか、というのは
apache の設定が動作に影響してしまうからのようですね。

sid で apache を入れた直後では
<Directory /home/*/public_html>
    AllowOverride FileInfo AuthConfig Limit
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    <Limit GET POST OPTIONS PROPFIND>
        Order allow,deny
        Allow from all
    </Limit>
    <Limit PUT DELETE PATCH PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
        Order deny,allow
        Deny from all
    </Limit>
</Directory>
のように設定されているので、symlink では実行できないようです…(;_;

FollowSymLinks は危険がいっぱいなんですかね…(;_;

mod_roaming.:

関係ないけど、いつの間にか mod_roaming がかなり便利に使えそうになってますね…
mod_roaming で netscape の roaming を試してみたいなぁ…:)

wrapper.:

いつぞやのように shell script などから /usr/lib/cgi-bin/namazu.cgi を
呼び出す方法では、.namazurc を設定できないらしい。
namazu.cgi 内部で
char fname[BUFSIZE];
combine_pathname(fname, argv[0], ".namazurc");
if (nmz_is_file_exists(fname)) {
   set_namazurc(fname);
}
なんてことをしているのが原因。
まぁ、 manual にも
namazu.cgi を設置したディレクトリに .namazurc ファイルを置くと、
って書いてあるし、任意の .namazurc を読ませるようにするのは
何か問題が発生しそうな気がするものなぁ。

ふむぅ、どうすればいいんだろう? Search::Namazu とかを使うの…?

uso-wrapper:

command line option で .namazurc の場所を教えるようにして、
それを呼び出す wrapper を書くのはどうだろうと考えてみる。

で、namazu.cgi が引数を取るように書き換えてみた。
--- namazu-2.0.10/src/namazu-cgi.c	Sun Sep  2 16:13:38 2001
+++ namazu-2.0.10.katsuwo/src/namazu-cgi.c	Sat Jan 12 18:27:40 2002
@@ -78,6 +78,7 @@
 #include "system.h"
 #include "namazu.h"
 #include "result.h"
+#include "getopt.h"
 
 /*
  *
@@ -87,6 +88,9 @@
 
 static void suicide ( int signum );
 static void combine_pathname( char *dest, const char *command, const char *name );
+static int parse_options ( int argc, char **argv );
+
+static int keep_namazurc = 0;
 
 static void 
 suicide (int signum)
@@ -118,6 +122,39 @@
     return;
 }
 
+
+/*
+ * Command line options.
+ */
+static const char *short_options = "c:";
+static struct option long_options[] = {
+    { "config",		required_argument,	NULL, '0' }
+};
+
+/*
+ * Parse command line options
+ */
+static int
+parse_options(int argc, char **argv)
+{
+    for (;;) {
+	int ch = getopt_long(argc, argv, short_options, long_options, NULL);
+	if (ch == EOF) {
+	    break;
+	}
+	switch (ch) {
+	    case 'c':
+		if (nmz_is_file_exists(optarg)) {
+		   set_namazurc(optarg);
+		   keep_namazurc = 1;
+		}
+		break;
+	}
+    }
+
+    return optind;
+}
+
 /*
  *
  * Public functions
@@ -127,6 +164,7 @@
 int 
 main(int argc, char **argv)
 {
+    int i = 0;
     char query[BUFSIZE] = "", subquery[BUFSIZE] = "";
     char *localedir = getenv("NAMAZULOCALEDIR");
 
@@ -174,7 +212,15 @@
     set_formprint(1);	 /* Print "<form> ... </form>"  */
     set_uridecode(0);        /* Do not decode URI in results. */
 
-    {
+    /*
+     * Parse options
+     */
+    parse_options(argc, argv);
+
+    /*
+     * Load .namazurc
+     */
+    if (!keep_namazurc) {
 	/*
 	 * Load .namazurc located in the directory
 	 * where namazu.cgi command is if it exists.

getopt の使い方なんてすっかり忘れていたので、ちょっと苦労したり。
結局かなり ad-hoc な感じになってしまった(;_;

この patch を当てると、あとは
#!/bin/sh

NAMAZU=/home/katsuwo/work/work/work/namazu-2.0.10/src/namazu.cgi
NAMAZURC=.namazurc

$NAMAZU -c $NAMAZURC
なんて wrapper で済むようになる。

after the carnival.:

もしかして .namazurc の位置は引数でなく環境変数で取った方が楽だったかも(;_;

#2 FollowSymLinks

確かに その通り ですね。
ユーザのだれか一人が不用意な symlink を貼るだけで影響を受けてしまいますね。
ln -s /etc/passwd
なんてのは最高にイヤですね(;_;

#3 [links] 今日の links

2 ちゃんねるがひとつになった日:

なんか名作な感じだ…。

caldix:

archiver library を自動更新してくれる software。
定期的に実行するとちょっとだけ幸せになれますかね。

風のくに:

超多段シフト方式日本語入力システムである風についての情報があります。

これ、本当に実用になるのかなぁ?
無理だろうと思われる t-code ですら使っている人がいるのだから、
慣れてしまえば思っているより楽なのだろうけど…(^^;

花のくに:

中指シフト方式仮名文字配列である花についての情報があります。

カナ入力は私はやらないのでいまいち。

静かなコンピューター作り:

basic な話が集まっていて、これから始める人にはお勧めですね:)

#4 super soccer

j-league が off season なので、かなり面白くない。
なんか海外の試合とか流してくれたっていいのに〜。

#5 join namazu-users-ja.

namazu.cgi と version up の問題をどうにかするために
namazu-users-ja に subscribe しておいた。

もしかして namazu-devel-ja のがよかっただろうか?

posted.:

patch と一緒に投げておいた。
起きたら返事が来てるといいなぁ。

というか、月曜になったら時間がとれないような気がする。

まぁ、私が混じったからと言って話が進んでいくかというとそうでもないでしょうが:p

#6 debian security announce.

ついに 099 が出てしまいましたね。
あとひとつで 100 になってしまうと言うのだから恐ろしい…。

その前までに woody が release されないもんだろうか。

2002年01月13日()

#1 mod_roaming.

寝起きの頭の体操に mod_roaming を使った netscape の環境統一を狙ってみました。

server side settings.:

まずは、/etc/apache/httpd.conf で mod_roaming.so を利用するようにします。
LoadModule roaming_module /usr/lib/apache/1.3/mod_roaming.so

次に roaming access を受け入れるための場所を提供します。
不正なアクセスを防ぐために basic 認証をするように設定しておきました。
RoamingAlias /roaming /var/spool/roaming
<Location /roaming>
  AuthUserFile /etc/apache/roaming.passwd
  AuthType Basic
  AuthName "Roaming Access"
  require valid-user
</Location>

AuthUserFile で指定した passwd ファイルを作成しておきます。
# htpasswd -c /etc/apache/roaming.passwd

これだけで apache 側の設定はおしまいです:)

client side settings.:

netscape では Preference の roaming access のところを適切に設定するだけです。

くらいですかね。

disconnect...?:

ちょっと読んでみると切断時に sync するという風に書いてありますね。

これはもしかして netscape 終了時だけしか sync してくれないのですかね?
できれば一定時間ごとに sync をかけるようにして欲しいのですが。
とりあえず、history が sync されるようになってかなり happy なのですけどね:)

あとは roaming access の流れを把握して、
secure operation になるように加工してあげたいところです。
アドレス帳などは余り人に見られてうれしい情報ではないですしね:p

#2 奨学金へのお誘い

なんで奨学金説明会の手紙が 2 通も来るんだ?
もしかして 2 倍くれるのか?

#3 Re: debian security announce.

書いた翌日にもう DSA-100 が出てしまいました(;_;

#4 text power(ぉ.

文章力がないっつーのは致命的ですね(;_;
自分が書きたい、伝えたいものが相手に伝わらないのは非常に切ないです。

文章教室 読んでがんばるか:)

#5 access counter.

いつのまにか 6000 越えてますね。
ちょっとめでたい感じです。

設置したのが 2001.0215 なので、20 person/day にちょっと足りないですね。

#6 CVSのレポジトリ

わたしは常に ~/var/cvs を repository として使うようにしているので、
.cshrc で
setenv CVSROOT ${HOME}/var/cvs
としています。

で、外部の repository を使う場合だけ、
% cvs -d [repository] checkout [module]
としています。

cvs repository はまとまっていた方が扱いやすいと思いますよ:)

#7 [links] 今日の links

シネックス、3Com製のBluetooth USB アダプタとPCカード:

おお、3com の bluetooth pc card は x-jack っぽくなっているのですね:)
なんか非常にかっこいいので、欲しくなってしまいますね。

DMS - The Kopi Project:

以前、Brave GNU World で紹介されていた 、Java の Application Framework。

説明には
コンパイラでありプロジェクトの旗艦 (flagship) であるKJCは、 Thomas Graf の知るかぎり、 最近のJava仕様を完全にサポートし、 全部Java自体で書か れた、 唯一のFreeなJavaコンパイラです。
またKJCは、 危険な、 縮退したコード、 「汚らしい」読めない構文、 ありそう な最適化について、 さまざまな種類を指摘した、 完全な診断メッセージを出 すことができます。 開発者にとって、 コードの保守がこれで簡単になります。
などと書いてあるので、かなり良さそうに思えます:)

まだ 1.4 には対応していないようなのだけど、おもしろそうです:)

#8 essential.

本質的なことに集中できるように、本質的でないことを排除するというのは
一つのやり方だと思うのです。
そして、本質的でない部分をサポートするのが技術のはずですよね。

どんな小さな簡単なことでも積み重ねれば大きなことになるのだから、
一つ一つサポートしてあげていけると良いと思うのでした。

problem.:

それはいいとしてどうやって解決しようかしら。
ちょっと頭をひねってみましょうかね。

2002年01月14日(月)

#1 roaming service on netscape.

roaming で管理するデータは netscape の起動/終了時に sync するので、
ほとんど使いものにならないような感じがします。

私の環境下に置いて、netscape を終了することなんてほとんどありませんし:p
suspend や常時付けっぱなしの利用をしない人にはちょっと役立つかもしれません。

が。suspend と付けっぱなししかしていない私にはかけらも役立たないのでした。
history が sync できれば役に立つと思ったんだけどなぁ…。


加えて言うと、merge できるようなデータに関しては merge して欲しかったですね。
bookmark や address book はともかく、history なんてのは
merge してくれると助かるのに。

give up.:

ダメだ。全然役に立ってないな。
むしろ、邪魔なだけかもしれない。

ということで、中止してしまおう:p

#2 liburi-ruby

どうやら sid では liburi-ruby という package が出てきたようですね。
そのうち uri.rb 自身も 1.6 に取り込まれるようですし。

uri.rb が 1.6 に取り込まれた時点で、手元の package はおしまいにしますかね。

#3 backup.

/home の大掃除〜:)

去年やっていた project に関連するファイルをざくっと cd-r に焼いておく。

#4 the Time flies.

もう 1 月も半ばなのですね…。

ろんぶんやらなくちゃ…(;_;

#5 url changed; 404 not found.

いくら url をメモして置いても、ページが移動されちゃかなわないですね(;_;
yomiuri-online め、なんで news の url を変えてしまうんだ(;_;

#6 [links] 今日の links

Log4r - A Powerful Logger for Ruby:

ruby 用の強力な logging library らしい。
log4j に inspire されて作ってるらしいです。

VCDImager:

video cd を吸い出したりすることができる素敵なツール。

ネットやめますか? IE (インターネットエクスプローラ)やめますか?:

そりゃ ie やめるでしょ:p

とは言っても、ie じゃないとまともに見られないページもあるのよねぇ。

ブルームーン:

月の満ち欠けの状況をみると、この12月は、1日が満月で、さらに30日も満月 であることがわかります。このように、ひと月のうちに満月が2回あるとき、2回目 の満月を「ブルームーン」と呼ぶことがあります。
だそうな。

5インチベイに収納可能な格安サーバーが販売中、価格は約1.5万円:

ちょっと spec が足りない感じですねぇ。
double height でよいから、k6-2 300mhz ぐらいのが出てくれると良いのですけど:)
それが出たなら、外付け scsi case と併せて使っても良さそうですね。

さすがにこの spec だと遊ぶのもなかなか難しそう…。
まぁ、network boot + nfs で実験マシンにするのはおもしろそうです。

メモリ価格が年明けから本格的に急騰、SDR SDRAMは約8割の値上がり:

すごいことになってますねぇ…。
年始だけの話であればよいのですが。

せめて、notepc を買い換えようと思っている春にはまた下がってると良いのだけど。

PCの電源で動作するポータブル加湿器「キリー・ポッター」が発売に:

こんな変な名前付けるんじゃねー(わら

Ruby GetText Package:

ruby 用の gettext。

二日目その3:MySQLの限界に挑戦:

Oliver さんの日記より。

mysql って という実績があるらしいです。かっこいい!

こっち には最適化の情報もあり。

[stalk:01130] FYI: patches for solaris <2.5.1:

Sun からは Solaris 2.5.1 以前のものへの patch は出ていないようです。
もう support 打ちきりなんですかね?

なんか探すと山ほど出てきそうな気もしますが… > 2.5.1 以前

#7 apt-show-versions/apt-file

ちょっと前の Debian Weekly News *1 に載っていた、
apt-show-versions/apt-file というツールは便利なのかしら?

いまいちどんなものなのか解ってないので、ちょっと試してみなくては。

apt-file:

package の Description: フィールドの説明では
 apt-file is a command line tool for  searching  packages for the
 APT packaging system.
 .
 Unlike apt-cache, you can search in which package a file is inclued
 or list the contents of a package without installing or fetching it.
らしい。

それって auto-apt search と変わらないのかしら?

apt-show-versions:

説明 を読むと、stable/testing, testing/unstable の混合環境を管理するのに
便利なツールのようですね。

Description フィールドの説明には
 This is really useful if you have a mixed stable/testing environment
 and want to list all packages which are from testing and can be
 upgraded in testing.
とも書いてあります。
今のところ私には関係なさそうですねぇ。

*1: 修正: In 0117, LNK -> LINK(;_;

#8 休日ダイア

く、成人の日だっていうのは頭にあったのだけど、
休日ダイアであることは忘れていたよ(;_;
おかげで来ないバスを待ったり、帰りの 21:40 分のバスにあわせて
研究室を出たりしてしまうわけですよ(;_;

#9 astroarts

いつの間にか Astro News がアンテナから捕捉できていなかったので、
日付を取得するような script を書いて解決しておく:)

#10 dell

友人が pc を買おうとしているので、相談に乗った。

で、代わりに dell で試算をしたのだけど、かなり安いですねぇ。
まだメモリ暴騰の余波が来ていないようなので、512MB にしても全然安いし:)
今買うなら dell でもいいかもしれませんねぇ。

stylish ではないから、私はパスだけど:p

2002年01月15日(火)

#1 xdvi: read_ZEIT_char()

日本語を含んだ .dvi を表示しようとすると xdvi が落ちると言う問題に出会う。
これは debian-users でも以前見かけていた話。

で、いろいろ追ってみるのだけど問題がいまいち解らない。
ktest では問題が起こらないし、font も全部入れてみた。
どうしたら直るんだろうと四苦八苦していたら、vflib2 package を入れたら直った。

…(;_;

2002年01月16日(水)

#1 work hard.

延々とお仕事。

2002年01月17日(木)

#1 be in poor shape.

うう…午前中は布団から出られなかった…。
軽く風邪を引いてしまったかな。

#2 [java] customized JTree; build tree with pictures.

昨日の仕事で、JTree を customize する方法を調べていたのだけど、
はっきり言ってお手上げ。
表示に使われるアイコンや文字の色程度であれば出来そうなのだが、
絵をツリーの下にぶら下げたいというのはどうしていいものやら…。

調べまくった限りでは、 あたりを組み合わせれば良さそうなのだけど、なぜかうまくいかない。

DefaultTreeCellRenderer#getTreeCellRendererComponent で生成する
Component を使って描画するようなのだけどなぁ。

flashing.:

試しに Label を返すようにしてみたのだけど、ちらつく。
解消方法不明(;_;
もしかして CellRendererPane あたりを使って描画してあげるんだろうか。

もーっ、ぜんぜんわからんですよ。ぶちきれですよ。

complaint.:

というか、Java で GUI Programming をしたことがない人間にやらせるな(;_;
swing や awt の把握するのにすごく苦労したし。
せめて swing 解説本ぐらい寄越して欲しいよねぇ。
Class Reference 読み進めてどうにかするのはかなり限度があると思います(;_;

at last.:

結局、全然わからんとつたえたら、アイコン変えるだけでもいいと言うことに。

icon を変えるには
public class TreeCellRendererImpl extends DefaultTreeCellRenderer{
  public Component getTreeCellRendererComponent(JTree tree, Object value,
                      boolean sel, boolean expanded, boolean leaf,
                      int row, boolean hasFocus) {

    // set icon.
    ImageIcon icon = new ImageIcon("image/icon.gif");
    setIcon(icon);

    return super.getTreeCellRendererComponent(tree, value, sel, expanded,
                                              leaf, row, hasFocus);
  }
}
のように、TreeCellRenderer#getTreeCellRendererComponent 内で
setIcon してあげると良い。

ノードの状態によってアイコンの表示を変えたい場合は
引数 value にノードの情報が入っているので、
  DefaultMutableTreeNode node = (DefaultMutableTreeNode) value;
  UserObject uo = (UserObject) node.getUserObject();
などとして、ノードの状態を取り出して処理すればよい。

!?:

もしかして、extends DefaultTreeCellRenderer じゃなくて、
implements TreeCellRenderer を使った方がよいのか??

DefaultTreeCellRenderer の実装上の注意のところに
実装上の注意: このクラスは、パフォーマンス向上のため、validate、revalidate、
repaint、および firePropertyChange だけをオーバーライドします。
オーバーライドされない場合、呼び出し頻度の高いこれらのメソッドが、
デフォルトツリーのセルレンダリングでは不要のコードパスを実行します。
独自のレンダリングを書き込む場合は、
これらのメソッドのオーバーライドに対する利点や欠点に注意してください。 
とか書いてある…。

なんかちらつきの話はこれで解決しそうだな…。

#3 タイ王国

以前軽く疑問に思った SINET とタイの接続 について つっこみが。
いまは無き(?)NACSISのタイプロジェクト由来の歴史的事情ですかね。 まだ残ってたというのがすごい。 タイ王国における研修 あたりに歴史的資料があるみたい。
資料に出てくるアジア・スーパーハイウェイなんて言う言葉と関係しそうですね。

つっこみありがとうございました:)

#4 CVS Repository の設置場所について

なるほど。 などケースではばらばらに repository を作るほうが楽かもしれませんね。

私は と言う理由でまとめていますけどね。

まぁ、一長一短なのかもしれませんね。

cvsmv ?:

cvsmv みたいなツールがあれば、リポジトリを一つにまとめてあっても楽なのかも。
% setenv CVSROOT ~/var/cvs
% cvsmv [project] [newcvsroot]
のように repository を分離したり、逆に
% cvsmv [othercvsroot] ~/var/cvs
のように repository を merge したり。

こういったものがあればバラバラにする理由は薄れるような気がします。

#5 knee.

むむ。ひざの痛みはまだ引かないですよ(;_;
さっさと病院に行かなくてはなぁ。

#6 coldsync-2.2.5

coldsync が SEGV してしまうようになった。
原因はいまいち解らないが、昨日 coldsync-2.2.5 に upgrade したのが原因だろう。
pool から 2.1.3 を落としてくると問題なく動く。

まだ bts には入っていないようなので、あとで調べて投げるか。

debug mode.:

一応 debug mode で SEGV するまでの log を取って置いた。
% coldsync -d sync:5 -d misc:5
Allocated sync_config 0x809ca90
UID: 1000, euid 1000
HOME: "/home/katsuwo"
Reading "/home/katsuwo/.coldsyncrc"
Summary of sync configuration:
Listen:
        Type: 0
        Device: [/dev/ttyUSB1]
        Speed: 0
        Protocol: 0
        Flags:
Known PDAs:
The queue of conduits:
  Conduit:
        flavors: 0x0004 SYNC
        Creator/Types:
          [/] (0x00000000/0x00000000)
        Path: [[generic]]
        DEFAULT
        Headers:
        Preferences:
coldsync version 2.2.5.
ColdSync homepage at http://www.ooblick.com/software/coldsync/
Compile-type options:
    HAVE_STRCASECMP, HAVE_STRNCASECMP: strings are compared without regard
        to case, whenever possible.

    Default global configuration file: /etc/coldsync.conf
Options:
        Mode: * NONE *
        conf_fname: "/home/katsuwo/.coldsyncrc"
        conf_fname_given: False
        devname: (null)
        devtype: -1
        protocol: 0
        force_slow: False
        force_fast: False
        check_ROM: False
        install_first: False
        force_install: True
        use_syslog: False
        log_fname: ""

hostid == 0xc0a80001 (192.168.00.01)

Debugging levels:
        SLP:    0
        CMP:    0
        PADP:   0
        DLP:    0
        DLPC:   0
        PDB:    0
        SYNC:   5
        PARSE:  0
        IO:     0
        MISC:   5
Opening device [/dev/ttyUSB1]
Warning: no device on /dev/ttyUSB1. Sleeping
Warning: no device on /dev/ttyUSB1. Sleeping
Please press the HotSync button.
Looking for a PDA block.
  Also checking user info
Fetching SysInfo
System info:
        ROM version: 0x03103001
        Localization: 0x00010000
        product ID: 0x00020000
        DLP version: 1.2
        Product compatibility version: 3.0
        Max. record size: 65505 (0x0000ffe1)
Found special serial number [*Visor*]
No exact match found for this PDA. Using default
Segmentation fault

strace もしてみたけど、そっちは全然読めなかった。ダメすぎ。

hold coldsync package.:

間違って upgrade しないように hold coldsync しておく。
% echo coldsync hold | dpkg --set-selections

#7 PEM and Excel

PEM で取った買い物の記録を Excel に写したくなった。
まぁ、表計算が出来ればいいので別に Excel である必要はないのだけど:p

pem2csv とかどこかに落ちてないかなー。

#8 [links] 今日の links

JUnit 実践講座:

JUnit を使うときの tips が乗っています。
まだ未完成ですが、書かれている部分は参考になります。

2002年01月18日(金)

#1 pem2csv

見つからないので、PemDB.pdb を解析することにした(短絡的)。
とりあえず、いくつかのフィールドは解らないけれど、 を抽出することに成功:)

そのうち時間を作ってちゃんとしたものを作ろう:)

after hack.:

あう、ごじすぎだ…。

#2 rio500

ダメだ、転送速度が遅すぎる(;_; AudioManager の使い勝手が悪すぎるダメすぎる(;_;
こりゃ iPod やら NetworkMD やらに変えたくなってくるよもー(;_;

#3 tcsh completion did not avoid CVS directory.

む。tcsh の complete list に CVS directory が入るのが邪魔だ。

set fignore=(.o .aux '~' .swp CVS)
complete xdvi 'n/*/f:*.dvi/'
としていても CVS が候補に入ってしまうのはなぜだ(;_;

もしかして hack it とのお誘い!? < 違う。

#4 vi and autoindent.

むむ。vi で
:set ai
するのはいいのだけど、autoindent するときに tab じゃなくて
space で autoindent してくれないものか。

ぇぇぃ、調べるのが面倒なので set noai してしまえ:p

#5 walking.

帰りに 30min 程度歩いてみた。
ちょうどいい運動かもしれない:)

#6 namazu2 package.

debconf の設定で気付かなかったが、
namazu2 package は namazu.cgi を何カ所かに設置できるようになっているようだ。
postinst script もしくは /etc/namazu/cgidirs で設定するらしい。

ただし、これは virtual host 用に作ったものなので、
user が自由に使えるようになっているものではないそうだ。
(参考情報:[ hns-dev:00751 ])

suexec and symlink cgi.:

自分で使っている環境では suexec を切っているので気付かなかったけれど、
suexec が有効である環境では symlink cgi は実行できないそうです。

#7 coldsync bugreport.

ダメだ、眠すぎてメールがかけない…。
とてもじゃないが、とろけた日本語以外は使えそうにない。
悪いが明日にさせてもらおう。

昨日送り忘れたので、明日も送り忘れる可能性がががが。
気付いた時点で debian-users に投げておけば良かったかも。

2002年01月19日()

#1 Hash#index(val)

む、Hash#[key] の反対(value から key を求める)のは Hash#index(val) なのね。

#2 undefined symbol

原因はさっぱり分からないが、
su: error while loading shared libraries: /lib/ld-linux.so.2: \
undefined symbol: _dl_sysdep_start, version GLIBC_2.0
などとたまに言われるようになってしまった。

すべてのコマンドの実行で ld-linux.so.2 がうまく動かないときがあるようだ。
かなり危機的状態なんだがいったいどうなっているんだ?(;_;
packaging miss? or cracked?

数回に一回ぐらいで起きるというのもいまいちわからないし…。
とりあえず
% apt-get --reinstall install libc6
して様子を見てみよう。

after 10 minutes.:

む。ld-linux.so が悪かったようだな。
reinstall したら特に問題が起きなくなった:)

#3 vncserver

しばらく触らない間に vncserver が ~/.vnc/xstartup を
参照しなくなったので、ちょっと調べてみた。

どうやら default では /etc/X11/Xsession を読みに行くようだ。
つまり、個人の設定は ~/.xsession に記述してあげればよいようだ。

もしどうしても ~/.vnc/xstartup を見るようにしたい場合は、/etc/vnc.conf に
$vncUserDir = "$ENV{HOME}/.vnc";
$vncStartup = "${vncUserDir}/xstartup";
と記述してあげれば良さそうだ。

#4 [links] 今日の links

NIKE: FREEDOM FOOTBALL; cm preview:

"退屈なサッカーをしよう" のあの cm のページ。
前編と後編がつながれた movie がおいてあります。

ところで、前編の最後でフィーゴって叫んでいたっけ?
中田のわざとらしい叫びにかき消されて全然覚えていないんですが。
ともかく って感じで。

あと、最後のシーンで中田の右肩にボールの残骸がくっついているのはなんでしょね。
そのうち彼が "退屈なサッカーをしよう" とか言い出すという暗示?(わら

The System:

同じ cm つながり。
18 歳以下でないと入れません。一種の 18 禁(ぉ

こういう風にブラウザを勝手に操作されるのはどうかと思います(;_;

International Workshop on Web Service Engineering WebSE 2002:

聞きに行きたいけれど、1/31-2/1 ってのはどうだろう。
論文のすすみ具合によって決まりそうだな。

W杯は「病欠」でTV観戦 英、経済活動に影響も:

あぁ、学生で良かった:)

やはり kyou もこれくらいで行かないと。

#5 たいくつな hack をしよう。

たいくつな hack ってどんなんだよ(^^;

#6 静音化情報

PC無音化計画の掲示板 の log を読みあさって良さそうな情報を発掘してみたり。

cpu fan について:

加工をしない場合には
(1) ZALMAN(付属の抵抗を使う。1000円ぐらい)
(2) ENERMAX(青ラベル950円の可変速ファン、白い線の温度センサー)
   多少のカサカサ音はしますが、センサー部分の温度により最低回転になる。
   普通の静音訴求と安全性を考えるなら、これをお勧めします。  
どちらも、秋葉のPcisland(佐藤無線)にあります。
*1 がおすすめだそうです。

加工をするなら CRAFT FAN を 5v 化するのが良さそうな感じです。
(情報源: 2001/12/31 09:54 の 123kawara さんのメッセージ)

sanyo fan.:

むむ。
以上のようにファンの風量を落とした場合、今度はファンの風切り音以外の音、 モーター音というか、回転に伴うジーまたはチチチという音が気になるはずです。
確かに aptiva に付けている sanyo fan はこういう音がしますね。
ここで、この板の普通ではない投稿者(私を含め)のいう、山洋を代表とする 有名メーカーファンの回転音(モーター音)のうるささなのです。 この音を聞き分ければ、Silencerよりも山洋が静かであるはずがなく、 Silencerがうるさいとすれば、風量に差があるためでしょう。
というわけで、一度 Silencer fan を使ってみたいところ。
(情報源: 2001/12/30 11:51 の 123kawara さんのメッセージ)

fan を選ぶ目安:

cpufan を手回しするのは危険のようですね。
ちなみにとある雑誌に書かれていましたが、ファンを 指で回して音を確認するのはご法度だそうです。<軸を傷付けるらしい 昔読んだ雑誌(HelloPC※現PC USER)に書かれていたヒートシンク関連の 解体新書に載っていた資料を見てみると、確かにブラシレスタイプの物は 構造上、手回しはやばそうです。

で、cpufan を選ぶ際には
8cmファンなら電流値が0.1Aを切ると5V駆動できない可能性が有るので 0.11A辺りの物を購入するのが1つの目安になるかもしれません。 Silencerは0.075Aで5V駆動できません。 静音ファンと言われているものは0.11〜0.12A程度の物が多いようです。 静かな電源ファンを確認するなら、電源ファンのアンペアを見るのが 1つ判断基準になるかもしれません。
なんていうのを気にしてみてもいいかもしれません。
(情報源: 2001/12/26 23:10 の KOU さんのメッセージ)

CraftFan:

craftfan の中でもスリーブタイプのもの(CH80S12M)というのが静かなようです。
ボールベアリングのもの(CH80B12M)と間違えないようにした方が良さそうです。
(株)バリューウェーブなどで樹脂パックに入っています。 アキバの祖父地図で1299円で売っていた記憶が有ります。
(情報源: 2001/11/28 13:24 の ルボラー さんのメッセージ)

AthlonXP:

AthlonXP は
アプリケーションの負荷に応じてCPUのクロック数を300MHz から1.3GHzまでダイナミックに切り替えることができる。
だそうな。
うちの Aptiva にこれ載せられないかなぁ?
(情報源: 高性能”で“省スペース”の秘密は低消費電力版Athlon XP ——日立の「FLORA330サイレントモデル」 ) *2

*1: 修正: In 0318, PRE がぬけて読みづらかったのを修正。
修正: In 2006/12/4, 引用部の丸数字を除去。
*2: 修正: In 0318, LINk -> LINK.

#7 そるとれーく

nhk-bs のソルトレークオリンピックの cm に出てる女性は何者なんだ。

2002年01月20日()

#1 misato

bigwave とか久しぶりに聞いてみたり。
やはり良いものはよいですね:)

とゆーことで bigwave と hello lovers をずーっと聞いていたり。

#2 flame war.

某所で komaz と言い争い(^^; をしていましたとさ。
いや、別に二人とも本気で争っていたわけではないけれど。

頼み事は正確にせにゃならんですね。
揚げ足取り調に処理する方も処理する方ですが:p

2002年01月21日(月)

#1 くたびれたケーブル

自宅の vaio 用の LAN ケーブルが本格的に使いものにならない感じに。
普通の CAT.5 のケーブルで、スピードも問題なく出ているのだけど、
ケーブルを覆うビニールが硬化しちゃっていて、引き回しがしづらい。

私があっちこっちごろごろしながら使っているのも原因なのだけど、
ケーブルが僕の動きを激しく制限するのはいただけません。
普段邪魔にならないように丸く束ねているのだけど、
その形を覚えてしまっているので、すごく引っ張られる(;_;

ダメだ…こんなの耐えられない…はやくムセンランにさせてくれ…。

一時しのぎ禁止。:

早いところ wireless な設備を整えたいのは山々なのだけど、
今買おうと狙っているのが なので、下手に cards & access point を買ってしまう訳にはいかないのです。

一時しのぎに買ってしまうわけにも行かないよなぁ…(;_;
wireless module 内蔵で、なおかつ 5GHz というのがマニアックすぎるのか(;_;

買い取り指向:

つーか、誰かが一時しのぎに買った wireless kit を買い取ってくれるのであれば、
問題なさそうだよなぁ。
だれか買い取ってくれないかなぁ(笑)

#2 value of software.

どうやったら拡張性とか再利用性とかが客観的に表せるんだろう。
それが示せればみんな幸せになれるだろうに!

お風呂に入ってほげ〜っとしていたら思いついたりしないかしら。

#3 designing.

データベースからデータを拾う interface に ものを作ったのだけど、Iterator access は無用の長物な気がしてきた。
自分はともかく、誰が利用するというのだろう?(;_;

#4 lirs format.

いじっていて思ったのだけど、かなりダメだ。
長い url を入れたり、URL と 実際に時刻情報が取れるURL が違う場合は、
かなり書きづらいし読みづらいことになってしまう。
例えば、katsuwo's diary について書いたものは
LIRS,0,0,32400,0,http://www.ish.ic.kanagawa-it.ac.jp/~katsuwo/diary/,katsuwo's D
iary @ ishlab,かつを,0,http://www.ish.ic.kanagawa-it.ac.jp/~katsuwo/diary/di.cgi
,,?%MM%%DD%%HH%%TT%,diary,
なんてことになってしまう。
これが並んでいるのはちょっと読みづらい。

まぁ、program が読むには問題ないのだけど、もっと人に優しくなって欲しいなぁ。
そう言う意味ではこれを xml とかで記述した方が方が読みやすいのかも。
というか、csv は読むものじゃないしね。
記述するときは csv じゃない方が人に優しそうだ。

:

あと、追加するときに思うのは実際に記述するのは数カ所だけということ。
ほとんどの場合 ぐらいしか記述する箇所がないような気がする。
あとは cut and paste でおしまい。

というか、他の項目って必要なんだろうか?

xml and antenna.:

アンテナ, XML でぱっと探した感じでは xml で記述するというのは無いようだ。
もしかして誰も lirs とか di を書くことに不満を持っていないのだろうか?

まぁ、普段からよく触るわけではないからちょっと我慢すればいいだけなんだが。

#5 one week passed.

さて、あと 10 日で今月も終わりですよ(;_;
論文締め切りまであと 20 日程度〜(;_;

最近程良く w 氏もテンパっているようだし、私も結構参り気味です。
ていうか、中身がなさ過ぎて論文なんてかけませんよ?(わら

ま、やれるだけやりましょう。

unfinished works.:

うー。namazu.cgi の話とか、coldsync の話とかは投げてしまっているなぁ。
あと pem2csv とか。

coldsync は upstream でも発生することまでは確認したので、
code trace はあきらめて throw せねば。

時間を取りたいけれど、手をつけてるときっと論文が進まないな(;_;

#6 The system.

The System のギョロ目のボールは、明日になったらこう言うに違いない。
たいくつな論文を書こう。
人と同じ論文を書こう。
論文に新規性(有用性)はいらない。
ミスを恐れよう。
システムにいれば安全だ。
たいくつなプレゼンをしよう。
人と同じプレゼンをしよう。
プレゼンにわかりやすさはいらない。
ミスを恐れよう。
システムにいれば安全だ。
あぁ、たまらん。僕も The System に認可された論文やプレゼンが作りたい(わら

wallpaper:

全然壁紙を使ったりしない私なのだけれど、珍しく luis figo のにしてみたり。
つーか、最初に選んだ canavaro のが出来が悪いのがいけないんだっ(;_;

totti のもかっこわるいし…どうなってるんだよもぉ(;_;

2002年01月22日(火)

#1 null terminator.

cgi program に対して %00 という文字列を送るとどういう効果が起きるのか、
ちょっと気になったので試してみた。

#!/usr/bin/env ruby

require 'cgi'
printf "Input: %s\n", CGI.new['foo'].inspect
printf "Input: %s\n", CGI.new['foo']
という cgi script を作って、test.rb?foo=abc%00def としてアクセスすると、
Input: ["abc\000def"]
Input: abc
と表示されました。特に問題なく動くようです。

次に、
#!/usr/bin/env ruby

require 'cgi'

printf "Input: %s\n", CGI.new['foo']
printf "Input: %s\n", CGI.new['foo'].inspect
と言う風に前後を入れ替えてみて、test.rb?foo=abc%00def としてアクセスすると
なぜか
Input: abc
しか出てきません。むむ?

problem of netscape:

netscape でのみ動作が違うようですね。

ie や telnet で同じことをすると、前者は
Input: ["abc\000def"]
Input: abcdef
後者は
Input: abcdef
Input: ["abc\000def"]
と表示されるようになります。

うーむ、netscape は \0 の位置で表示をやめてしまうのでしょうか?

2002年01月23日(水)

#1 [links] 今日の links

ハイパ-リンクワイヤレスセット [FWL11SET]:

fujitsu の wlan kit。
[ linux-users:90514 ] によると、2 万円ぐらいらしいので、ちょっと気になっています。

linuxcafe-ml:

linuxcafe について などの情報を流しあう linuxcafe-ml ができたようです。

参加するには
● メーリングリストの参加方法
subscribe linuxcafe
というメール本文を書き ppserv@zeroth.co.jp にメールを出します。
だそうな。
(参考情報:[ linux-users:90612 ])

VAIO PCG-SRX7でLinuxを使う:

pcg-srx7 で linux を使う方法が記述されています。
春先に srx3 を買ったときに参考になるかも。
(参考情報:[ linux-users:90642 ])

#2 onebo.

死んだように昼過ぎまで眠ってしまった。
いくらなんでも 11 時間ちかくというのはちょっと寝過ぎかも。

#3 dia and xim.

ちょっと調べた限りでは dia は日本語入力を support していないようだ。

debian の dia は upstream source をそのまま使っているので、
当然日本語入力ができない。
(kondara や vine では patch が当たっているらしい)

で、 dia-0.8xで日本語を使おう の patch をあてて debuild してみました。

gettext:

depends してないんですが、必要みたいです(;_;
let's re-debuild!

can't input japanese text.:

むむ? build できたのはいいけれど、なぜか日本語入力できません。
うーむー。今は時間がとれないので調べるのはあきらめよう。
もし本当に必要なら vine から引っ張ってきて alien でもいいだろう、きっと。

なんか私が xim とか xfree86 とかに詳しくないのが原因のようにも思える。
% kinput2 &
% env XMODIFIER="@im=kinput2" dia &
じゃ不足なのかしらん? LANG=ja_JP.eucJP とか?

#4 new package released.

が release されていたので、package も対応しておく。

ふと思うのだけど、なんで私は使ってもいない gogo の
debian package なんて作ってるんだっけ?
まぁ、全然 cost になりもしないので気にしていないけれど:p

debchange:

今まで手で debian/changelog を書き換えていたんですが、
どうやらこれは debchange を使うと楽にできそうですね:)

package version の update をしたい場合には
% debchange -v 3.91-1
のように -v version を指定すると自動的に
lame (3.91-1) unstable; urgency=low

  *

 -- Takeshi Komiya <katsuwo@ish.ic.kanagawa-it.ac.jp>  Wed, 23 Jan 2002 16:30:57 +0900
というのを追加して editor を起動してくれます:)

man によるとお約束通り を参照しているので、設定しておいて幸せになりましょう:)

#5 両面印刷

postscript のファイルを両面印刷(長編綴じ)するには .ps ファイルの二行目に
<< /Duplex true /Tumble false >> setpagedevice
と行を追加します。

両面印刷(短編綴じ)する場合には
<< /Duplex true /Tumble true >> setpagedevice
とします。 (参考情報: ポストスクリプトプリンタで両面印刷 )

#6 salary.

作業量に見合わない金額しかもらえないってどうだろうねー。
まぁ、次はないね:p

2002年01月24日(木)

#1 mathematics.

終了。

#2 dia and japanese font.

ちょっと時間がとれたので、dia をいじってみました。
どうやら日本語入力ができない原因は locale に関係があるようです。 *1
で、
% locale
LANG=ja_JP.eucJP
LC_CTYPE="ja_JP.eucJP"
LC_NUMERIC="ja_JP.eucJP"
LC_TIME="ja_JP.eucJP"
LC_COLLATE="ja_JP.eucJP"
LC_MONETARY="ja_JP.eucJP"
LC_MESSAGES="ja_JP.eucJP"
LC_PAPER="ja_JP.eucJP"
LC_NAME="ja_JP.eucJP"
LC_ADDRESS="ja_JP.eucJP"
LC_TELEPHONE="ja_JP.eucJP"
LC_MEASUREMENT="ja_JP.eucJP"
LC_IDENTIFICATION="ja_JP.eucJP"
LC_ALL=ja_JP.eucJP
という locale にして試してみると
Gdk-WARNING **: Missing charsets in FontSet creation


Gdk-WARNING **:     JISX0208.1983-0


Gdk-WARNING **:     JISX0201.1976-0
などと言われるのです。うーむー(;_;

どうやら日本語入力の前に font の設定をしなくてはならないようです。
どこいじっていいのかさっぱりですよ、あーもー(;_;

timeout.:

時間切れ。

*1: 普段 C locale で困らないから、気付かないんですよね(^^;

#3 [links] 今日の links

LaTeXしよう!:

debian の武藤 健志さんの latex manual。
激しく便利です:)

2002年01月25日(金)

#1 introduction.

バイトに出かける前にメールボックスをのぞいてみると、
今日の昼間でと言う締め切りの作業が一件。
卒論の紹介文を短くまとめて投げてくれ、だそうな。

…もう出かけるんですが(;_;

仕方ないので 10min 程度で仕上げて投げる。

evaluation:

かなりダメだったようだ。
文章を書くのがダメなのが露呈してるなぁ。

#2 at parttime job.

今日は設計作業なのだが、要件をはっきり伝えてくれないので、
細かい部分や考え方の問題で悩む。

参考に、今作っている prototype の見たのだけど、
スパゲッティもいいところで、とてもじゃないが参考にならなかった。

というか、Network 上を SQL 文が飛ぶような code を見たのは
今日が初めてだ。ある意味お祝いする必要があるかもしれない。
この servlet に
drop tablename
と ObjectOutputStream を使って投げてあげると system 崩壊を起こす気がした。

Strategy::Context.:

Strategy Pattern の Context クラスって extends Strategy の方が
使いやすいような気がするのだけどどうだろう?

研究室に行かないと GoF 本が無いので、確認できないのが悔しい。

2002年01月26日()

#1 冬眠

寒さにやられたのか、昼寝などしてみる。
普段起きるのが遅いせいか、昼寝なんてめったにしないのだけど、
たまにはいいですねぃ:) くせになりそう。

#2 remove waste files in cvs repository.

おそらくもう二度と日の目を見ることがなさそうなものを
cvs repository から消去した。

なので、rapsodyex やらが必要になったら cd-r から引っぱり出す必要があるだろう。
まぁそんなことがないのは解っているけれど:p

#3 bbkeys

blackbox で keyboard shortcut の設定をするには bbkeys を使うようです。
.bbkeysrc に次の記述をしておくと、
alt+tab での window 移動が出来るようになります:)
…おそらく。
KeyToGrab(Tab), WithModifier(Mod1), WithAction(NextWindow)
KeyToGrab(Tab), WithModifier(Shift+Mod1), WithAction(PrevWindow)

おそらく、というのは手元の vnc な環境では vnc client が alt+tab が
その key を食べてしまうようで bbkeys では試せないのです(;_;
(参考情報: KDEからBlackBoxに乗り換えよう )

color depth.:

bbpager も bbkeys もなぜか出てくる icon が色化けを起こしているようなのだが、
$depth が設定されていなかったのが原因のようだ。
/etc/vnc.conf で $depth="16" と指定するようにしたらなおった。

もしかして default では $depth=8 だったのかも。

#4 atokx

vnc まわりの設定をしていて、ふと atokx を入れようと思い立つ。
apt-get install atokx
いじょ。

あとは利用したいユーザで
. /usr/lib/im/locale/ja/atokserver/atokx_client
を実行するようにすれば ok。
手元では ~/.vnc/xstartup に追加しておいた。

#5 proverb.

n 氏曰く、
Going 矢のごとし。

意味は何となく分かるような気がするが、はっきりとは解らない(^^;
とりあえず、同義語として猪突猛進を割り当てておきました:p

最近、こういう不毛な話しかしていないなぁ。

2002年01月27日()

#1 house keeper.

お掃除。

読んでない、溜まっているだけの雑誌を排除してみた。
するとずいぶんスペースが空いたので、そこに溜まっているものを詰めておく。

なんとかしてもっと捨てたいところだなぁ。
古い技術書とかも捨ててしまおうか。
そろそろ X-680x0 な本とか PC-98x1 な本は完全に目を通さなくなっているし。

The Personal Workstation.:

その前に肝心の X-680x0 やら PC-98x1 自身最近触っていないな。
後者はともかく前者はもう破棄してしまおうかなぁ。
せめて ethernet card か scsi card が手元に残っていれば救いようもあるのに…(;_;

papers.:

書類が山をなしているので、それを分類したり。
obsolete になった時点で捨てられれば、こんなことにはならないのにねぇ。
大抵 obsolete になった時点には山のしたに埋もれているんだろうけど:p

読み進めて 3 山ぐらい突き崩す。

mystery of comvoy:

コンボイの謎 が奥の方から発見されたんだが、捨ててしまっていいものだろうか。

#2 [links] 今日の links

今更な感じがする情報群。

エンロン疑惑:削除文書の復元に活躍するコンピューター探偵:

あいかわらずデータ復元技師が活躍しているようですねぇ…。

ディスクシュレッダー・スーパー 関連情報:

hdd 上の情報を完全に消去するディスクシュレッダースーパーに関連する情報。

2002 年 変光星を楽しむ会のお知らせ:

2/9-10 って時間取れなさそう…(;_;

謎の「1Giga Pro」ことC3 733A MHzをオンボード搭載したマザーが発売に:

最近 c3 に興味を持っているので、ちょっと気になりますね。
ただ、Ezra コアな c3 の方が好みなので c3-800MHz でないとちょっと…。

まぁ、Samuel2 でも十分静音化が期待できるので、今後の推移が気になります。

これが「Eden」!? C3オンボードのVIA純正超小型マザー展示開始:

こっちは Eden の話。
c3 Eden がこういうふうな形で市場に流通するなら是非とも get したいですねぇ:)

初のLow Profile版Matrox製ビデオカードが販売開始!:

以前、かなり探し回った lowprofile graphic card の話。
g550 用のブラケットも出るようなので、そっちに期待したいですねぇ:)

フジヤマ」が駅前に3月18日新装開店、詳細発表に:

…なんつー名前にするんだ…(;_;
ゲームもアニメもコミックも構わないから、その名前だけは止めて欲しいなぁ…。

ついに登場した「ログインID&パスワード」管理腕時計?!:

使い心地はどうですかね?
design もそうだけど、誰が使うのかがちょっときになりますねぇ。

個人的には下に置いてある SecurID との関連性も気になります。

論文の書き方:

今参考にしてます。

乗れるチョロQ今秋発売へ タカラが1人乗り電気自動車:

ひゃ、100 万円…!?
それならもうちょっと積んで軽自動車買うんでないのか…?

ゲーム機アイコン工房 摩利支店:

ゲーム機の icon file(*.ico) を作っているサイト。

見事としかいいようがない icon が大量に並んでいます。
すばらしい!

DDIポケット,128KbpsのAirH"サービスを3月26日開始:

うー。契約したいなぁ…:D~

bash スクリプト内メッセージの国際(カタログ)化:

shell script の i18n 化の方法が書いてあります。
bash ってそんなことができるようになっていたのですね…。すばらしい!

テレビDEアドバンス:

tv で gameboy advance をやろうというバカな商品。

ボクとナイフ:

ちょっと考えさせられる flash。

2002年01月28日(月)

#1 nothing.

資料を作らないで seminar に参加するのはいい度胸です(;_;

2002年01月29日(火)

#1 scald

朝起きたら腕にひりひりと痛みを覚えた。
何かと思ってみてみると、右腕に水膨れが出来ていた。
最初はなんだか全く解らなかったので、変な虫に刺されたのかと思ったのだけど、
よく考えてみると実は低温やけどを負ってしまったらしい。
たしかに昨日は普段より熱い温度の湯たんぽを使っていたので、
そう言う風になり得るような気もする。

唯一家にいた父親に対処を聞くと、熱した針で水膨れをつぶすといいらしい。
さっそく適当な安全ピンを熱してぷつりとつぶしておいた。
あとはもう遅いかもしれないが、患部をひたすら冷やしておく。

家庭の医学:

ちょっと気になったので google で やけど 水膨れ で検索してみると、
どうやら 水膨れをつぶしては行けないようだ
むむ!? 父親の浅知恵にかなりだまされたようだ(;_;

ていうか、いくつか見た限りでは深刻な場合は医師の診断を受けた方がよいそうだ。
うーむ。しばらくして痛みが引かなかったら病院に行くか。

after hours.:

痛みは引いたようなので、放置の刑に処す。
傷口から雑菌が入るとイヤなので、殺菌してガーゼを当てておく。

#2 blackbox-0.62.0

ふと気づくと、blackbox で window の移動が出来なくなっているのに気づく。
ちょっと気になって blackbox-0.61.1 に戻すと正しく移動が出来る。

ちょっと投げやりに
# dpkg -i blackbox_0.61.1-1.1_i386.deb
# echo "blackbox hold" | dpkg --set-selections
とかしておく。

#3 atokx

atokx の設定画面がでてこなかった理由は locale にあるようだ。
いままで
. /usr/lib/im/locale/ja/atokserver/atokx_client &
としていた部分を
env LANG=ja_JP.eucJP LC_ALL=ja_JP.eucJP \
        bash -c ". /usr/lib/im/locale/ja/atokserver/atokx_client" & 
に書き換えるとうまく動くようになった:)

…が、依然 変換 キーで半角全角切り替えができないので、ちょっとつらい(;_;
atokx のキーカスタマイズではちゃんとキーアサインできているのだけどなぁ。
この設定ができないとうれしさ半減です(;_;

#4 fonts.

vnc をベースにして X を使うことにもちょっとなれてきたのはいいけれど、
やはり font が汚いのが激しく気になる。
むむ…。これはやはり illegal でも ms-fonts を利用するしかっ!?(^^;

今度やすくてすてきな font がないか、お店に見に行こうかなぁ。

price of fonts.:

dynafonts 50 書体セットが 6k ぐらいでした。…微妙だなぁ(;_;

ricoh-font:

free できれいな font を求めていたら、TurboLinux に ricoh font というのを発見。
ftp site をあさると ricoh-gothic-1.1-1.noarch.rpm と言うのを
見つけたので早速拾っておきました。

さて、あとで暇になったら触ってみよう。
(参考情報:[ debian-users:29465 ])

os2-font:

代表的なフォントについて,VFlibで利用可能かどうか伺ってみました. によれば、
質問:
OS/2をインストールしたディスクを,他のOSから読み出して,
TrueTypeフォントのデータを利用させていただくことは可能ですか.

回答: 0120-04-1992 原様
正規ユーザが,個人の責任においてライセンス数の制限を守って使用する
分には勝手にやってもらって構いません.しかし,完全に無保証であり,
この件に関するどのような質問にもお答えできません.
らしいので、うちに眠っている os/2 warp v3 使うと幸せになれるかもしれません。

#5 \verbatim and \framebox

ソースコードを枠線で囲んで表示したいときはどうすればいいのだろう?
思いつくままに
\begin{center}
  \framebox{
    \begin{verbatim}
#!/usr/bin/env ruby

puts 'Hello world'
    \end{verbatim}
  }
\end{center}
としただけではエラーになってしまうようだ。
\tabular を使ってごまかそうとしたのだけど、これもダメ。

うーむ。verbatim って癖が強すぎる…(;_;

screen environment.:

mit に相談をしたら、ascmac package の screen environment がいいと勧められた。
\usepackage{ascmac}

\begin{screen}
  \begin{verbatim}
#!/usr/bin/env ruby

puts 'Hello world'
  \end{veratim}
\end{screen}
で、一応目的は果たすことができた。

出来れば横幅を変えたい、とかセンタリングしたいとかという欲もあるが、
体裁に関しては今のところ忘れることにする。
もし時間があれば触ろう。

#6 parttime job.

22:30 ぐらいに明日出勤しなくてはならないことを電話で告げられる。
相変わらずめちゃくちゃで切なくなる。
やはりあの会社…というかあの社長は、人のことを考えることを知らないのだなぁ。

ますます春に向けてやめる決意が高まる(わら

plans.:

明日やろうとしていたこととかは、その次に回すしかないか。
むむ…今月中に論文を形にしたかったのだけどなぁ…(;_;

2002年01月30日(水)

#1 parttime job(2).

今朝、起きた直後に電話を貰う。

今日やるはずだった仕事は中止で、明日か明後日にしたいとのこと。
昨日 決まったばかりのことをもうひっくり返すのか…(;_;
バイトやめ決定。

それにしても、明日か明後日って…。また同じことを繰り返す羽目になるのか…。
こりゃ予定を入れておかない方が良さそうだ。

change:

さて、とっとと忘れてやることやりますか。

#2 \multirow.

html でいう rowspan を実現するには \multirow を使います。
\usepackage{multirow}
で multirow が使えるようにしておいて、
\begin{tabular}{|c|c|}
  \multirow{2}{4em}{menu} & foo \\ \hline
  & bar \\ \hline
\end{tabular}
のようにして使います。
引数はそれぞれ行数、横幅、表示する文字列らしいです。

#3 はぐれ刑事 + 壁紙

そんなキーワードで検索してもなにも出てこないよ…(;_;
なのになにゆえ、lycos では 5 番目になっている んだ…。

#4 parttime job(3).

結局明日出かけることになった。
これで今月中に論文を形作るという夢は崩れさることになったのであるまる

まぁ、明日は半分見学で済むようなのでゆっくりしていますかね。
さすがに論文持っていって書いていると怒られそうだけど。

env.:

ていうか、vaio にはそういう環境が無いので、書きづらそうだ。

さっさと vmware で linux + windows な環境にしたいなぁ。

#5 dia --export

dia のファイルをコマンドラインから eps に変換できるのはうれしいのだけど、
これってどうにか X を必要としないように出来ないものかなぁ。
X が起動していないと make できないというのはイヤなんだが…。

[- 日記システム警告:コマンド X は予約されています。-]

convert した epsfile も cvs に入れておいた方が楽かなぁ。

hack dia.:

glib が解らないと dia の hack のしようがないなぁ。

window size とか起動時に選ばれているオブジェクトのカテゴリ *1 とかを
resource から読むようにしたいのだけど。

*1: 私は UML しか使ってないので、起動時が Sybase なのはうれしくないのよね。

#6 [links] 今日の links

RRDtool:

mrtg の後継らしい rrd tool のページ。
サンプルを見る限りかなり豊富な機能を持っているようですね:)
グラフの種類が増えているようだし、
なによりグラフの対象となるデータが複数取れるようです。
2 つのデータの比較しかできない mrtg とは別物のような感じがします。
おお、debian にも存在するみたい:)
% apt-cache show rrdtool
Package: rrdtool
Priority: extra
Section: utils
Installed-Size: 1772
Maintainer: Matt Zimmerman <mdz@debian.org>
Architecture: i386
Version: 1.0.33-9
Depends: libc6 (>= 2.2.4-4), libgd-gif1, libpng2(>=1.0.12), librrd0 (>= 1.0.10-1
)
Suggests: librrds-perl
Filename: pool/main/r/rrdtool/rrdtool_1.0.33-9_i386.deb
Size: 583376
MD5sum: e0993020823bc8b1e2f4a659784dfcaa
Description: Time-series data storage and display system (programs)
 RRD is the Acronym for Round Robin Database. RRD is a system to store and
 display time-series data (i.e. network bandwidth, machine-room temperature,
 server load average). It stores the data in a very compact way that will
 not expand over time, and it presents useful graphs by processing the data
 to enforce a certain data density. It can be used either via simple wrapper
 scripts (from shell or Perl) or via frontends that poll network devices and
 put friendly user interface on it.
 .
 This package contains command line programs used to access and manipulate
 RRDs.

MRTG.JP:

mrtg の日本語情報サイト。
ml もあるようですが、archive は(まだ?)公開されていません。

「PS2 Linux」正式版リリース:

ふーむ。おもちゃにしたいのは山々だけど、うちの ps2 は私のではないからなぁ。
弟から勝ち取るのは難しそう(^^;

2002年01月31日(木)

#1 works.

結合試験準備という名の debug 会場へ。

結合試験前々日に初めて component を初めてつなげようとするらしい。 ^ 開発グループが 2 つあるとはいえ、それは 結合試験でやることではない よなぁ。

切なくて泣けてくる。
私は開発者でない立場で立ち会ったので、debug 中は暇をもてあそんでいました。

1h 弱のリハーサルをやるのに 5h ぐらい待たされるという効率の悪さ。
あーぁ。それなら書きものさせてくれてもいいだろうに(;_;

#2 \input

少し前に w 氏が tex を書き始めるときはまず Makefile と
chapter ごとの tex file を作ると言っていたのを大げさだと思ったのだが、
実際につらつらとちょっと長めの tex document を作るとなるほど便利だ。
というか、そう言う風に管理しないとちょっと面倒だ。

昔実験のレポートに tex を使ったときには
cvs も make も \input も使わなかったのにねぇ。
まぁ、便利なものは便利でとても良いのですけどね:) *1

*1: だけど、emacs だけはどうしても慣れない私:p 便利なんだろうけどねぇ…(^^;

以上、31 日分です。
Powered by hns-2.10-beta7, HyperNikkiSystem Project

このページへの link はご自由に。 アンテナへの登録の際には di.cgi を使ってください。 RSS 使いは rss.cgi もどうぞ。