nDiki : 2006年02月下旬

2006年2月21日 (火)

[ WiKicker ] コメントをパターンでチェック

WiKicker では書き込み禁止パターン指定機能をつけてあって、特定の文字列または正規表現にマッチしたページデータを保存しても無視されるようになっている。

spam 対策の機能なのだが、実装してからも spam は止まない。 ブラックリスト方式はまあいたちごっこではあるが、それにしても正規表現にマッチしているはずのものまで書き込まれている。あれ?

まてよ、たしかコメントフォームからの追記はそういえばチェックしていなかったような(いや実はかなり前から薄々気がついていたのだが、ついついその場は手作業で SPAM を削除して済ましてしまっていたのだ)。

しかしやっぱり面倒だし、コメント書き込みもチェックしないと片手落ちだなと思い実装。 といってもまあ変更してみると、10数行程度だったりするのだが。

むしろ、テストコードの追加の方がよっぽど多かったり。

スポンサード リンク
[ 2月21日全て ]

2006年2月22日 (水)

Linux ノート PC 用にワイヤレスレーザーマウスを購入

Blender のページを見たら、急にノート PC 用のマウスが欲しなってしまった。 1月にも欲しくなって1度お店に見にいったこともあるし、買ってしまおうか。

ということで Microsoft Wireless Notebook Laser Mouse 6000 を購入。

感蝕

Microsoft Wireless Notebook Laser Mouse 6000

ワイヤレスマウスというというと重いという印象があるのだが、このマウスはそうでもない感じ。単アルカリ乾電池1本で、公称6カ月動作可能。

ホイールはコリコリ感のないヌラヌラタイプである。 このタイプは初めてだが、結構クセになる良さである。

ただしホイールの回りの良さとマウスの感度の良さとあいまって、中クリックしようとしてしまっても移動してしまうことがある。 慣れるまではちょっと注意して操作する必要がありそうだ。

Linux で使う

早速 Debian GNU/Linux sid の入っている ThinkPad X31 に接続してみた。 認識……したものの、挙動が変だぞ。

マウスを動かすと、中ボタンイベントが発生しまう。Window Maker 上でウィンドウ一覧メニューがポップアップしまくりで、使いものにならない。

X Window SystemX.Org X server 6.9.0。 xorg.conf をいろいろ調整したものの、状況変わらず。

……やってしまったか?

Linux kernel を 2.6.15 に上げてみる

今使っている kernel は 2.4.27。 USB マウスであるし、もしかしたら 2.6 系なら大丈夫かな? ということで、kernel を 2.6.15 に上げてみることにした。

インストールしてリブート、X を起動。

おっ、まともに動く動く。良かった良かった。

感度が高すぎて、今までの設定だとマウスカーソルの動きがはやすぎる。 しかし速度を落とすと、TrackPoint の使い勝手が悪くなってしまう。

マウス毎に感度を設定できないのかな。xorg.conf の Resolution 設定はうまく効いていないようだし。

遅ればせながら、そろそろ 2.6 へ移行するか。


[ 製品レポート ]

ThinkPad X31Linux kernel 2.6

MADWIFI の件もあって、2.4 系にしてあった kernel であるが、Wireless Notebook Laser Mouse 6000 も使えるようにしたいし、2.6 へ遅ればせながら移行するか。

まずは Debian のパッケージ linux-image-2.6.15-1-686 で試す。 いつの間にか kernel-image ではなくて linux-image になっていたりと、おいていかれている感じ。 危ない危ない。

ThinkPad X31 2672-PHJ
サスペンドできない
XATI ドライバ OK
サウンドOK
MADWIFI接続できるものの大きなファイルの転送は駄目
cpufreqdOK

サスペンド

NG。

kernel で APMACPI の両方が有効になっているからのようだ。 ACPI を切る必要あり。

X.Org X server

OK。

X.Org X server 6.9.0 で ATI ドライバがうまく動かず VESA ドライバの使用を余儀なくされていたのだが、kernel 2.6 では何も問題なく動いた。

MADWIFI

NG。

無線 LAN で使っている MADWIFI も既にパッケージがあるのか。 いい世の中になったものだ。

しかも最近は module-assistant で kernel モジュールをパッケージングできるようになっているなんて。

 module-assistant prepare
 module-assistant auto-install madwifi
 modprobe -a ath_pci

接続はできるものの、一昨年試してみた時と同様 kernel 2.6 だと、大きなファイルの転送が途中で止まってしまう。

あと一歩。

cpufreqd

OK。

 modprobe speedstep_centrino
 /etc/init.d/cpufreqd start

ということで要リビルド

やはり、kernel をビルドする必要があるか。

……気がついたら make menuconfig で設定中の画面を前に眠り込んでしまっていた。 明日にもちこし。

今月の社長ガジェット - W-ZERO3

rimage:ISBN:4797334231

朝出社してきた社長がいきなり、ケースに入った何かをちらつかせてきた。 ニューアイテムだ。

何だ何だと見にいったら W-ZERO3。 そういえば、以前から買おうかどうか考えているっていっていたっけか。 結局昨日ついに購入したらしい。

以下ちょっと触らせてもらってのファーストインプレッション:

  • 本体はプラプラしており、社長もいう通りもうちょっと質感が高いといいのにという感じ。
  • 横置きするとカーソルボタンが左側にくる、
  • 見慣れない Windows Mobile 5.0 のせいか、画面は 640x480 でも狭く感じた。
  • Web ブラウザ Internet Explorer Mobile は文字もうまくスケーリングされて、結構見やすい。

W-ZERO3 はほとんどノーマークだったので、知らなかったのだが普通に通話もできのだね。 (持ちやすいかは別として)普通に通話もできた。

主にずっと Palm を使っている社長が今後どう使っていくかに興味津々。 果たして Palm から乗り換えてしまうのか?

[ 2月22日全て ]

2006年2月23日 (木)

ワイヤレスマウス用にバスパワー方式 USB hub

naney:104133248

Microsoft Wireless Notebook Laser Mouse 6000 を ThinkPad X31 の右側で使えるようにするために、USB hub を買うことした。

以下の条件で選択。

  • USB 2.0。
  • 持ち運びできる大きさであること。
  • USB ケーブルが直結してあること (外れるタイプは持ち運びに邪魔)。
  • できれば USB ケーブルが本体に格納できること。
  • バスパワー方式であること。
  • 各ポートへの電源供給が 100mA に制限されていないこと。

USB hub は各社よりいろいろ出ているが、条件にあうのは以外と少ない。 そんななかで、条件を満たすものとして

があったのでこれをチョイス。

ダウンストリームポートはカバーつき。

アップストリームコネクタは格納できるが、ケーブルを曲げながら押し込むので何度も出し入れするとケーブルが悪くなりそうでちょっと心配。短いし、普段は無理に格納しなくても持ち運びには困らない感じだ。

長細いタイプであるが、逆にそのおかげで ThinkPad X31 の背面 USB ポートに接続し、先端のダウンストリームポートにマウスのレシーバを挿すと、PC の右側に顔をのぞかせることができる。 ばっちり。


[ 製品レポート ]

オフィスだとノート PC を越えてワイヤレスマウスの電波が届かない

昨日購入した Microsoft Wireless Notebook Laser Mouse 6000 を早速会社でも使ってみた。

あれ、動かない。

いや設定の問題ではなくて、電波の問題のようだ。

ThinkPad X31USB ポートが左側に1個、後に1個あるのだがどちらにレシーバを挿しても、右手側に置いたマウスまでは電波が届かない。

自宅で使ったときは問題なかったので、デスクの材質かすぐ近くにあるディスプレイの影響かと思われる。

無念。

USB hub などで、右側にレシーバをうまく持ってくる必要あり。


[ 製品レポート ]

Debian Linux kernel 2.6.15 ビルド

ThinkPad X31 用に 2.6.15 の Debian kernel パッケージ構築を行う。 インストールしてある Debian 標準の 2.6.15 のパッケージの設定 /boot/config-2.6.15-1-686 をベースに設定を行いビルド

 #apt-get build-dep linux-image-2.6.15-1-686
 #exit
 $mkdir -p /usr/local/src/linux
 $cd /usr/local/src/linux
 $tar jxvf /usr/src/linux-source-2.6.15.tar.bz2
 $cd linux-source-2.6.15
 $cp /boot/config-2.6.15-1-686 .config
 $make menuconfig
 $make-kpkg clean
 $fakeroot make-kpkg --revision=sebastian.1.0 kernel_image
 $cd ..
 $su
 #dpkg -i linux-image-2.6.15_sebastian.1.0_i386.deb

ブート後 Kernel panic。

標準の設定では IDE 関係がモジュールになっているのを見落していた。もう一度設定を修正してビルドしなおして起動。 Linux を使い始めたころ ext2 をモジュールにして失敗したことがあり、ファイルシステム関連は忘れずチェックするようにしているのだが、IDE 関連はノーチェックだった。

MADWIFI

 module-assistant prepare
 module-assistant auto-install madwifi

納品物完成記念撮影

naney:104133242

プロジェクトの納品物が仕上がった今日、ちょうど本社からチームメンバの一人が出張してきていたので一緒に記念撮影。

記念撮影は、最近私の関連しているプロジェクトでは恒例となりつつある。

というか、自分が誘っているワケだが。

やはり頑張った皆で達成感を味わいたいしね。

[ 2月23日全て ]

2006年2月24日 (金)

NdisWrapper で ThinkPad X31無線 LAN を使う

Linux kernel 2.6.15 で MADWIFI がうまく動かないようなので、NdisWrapper を試してみることにした。 NdisWrapper は、LinuxWindows の NDIS (Network Driver Interface Specification) 無線 LAN ドライバを使えるようにするラッパーモジュールである。

モジュールをインストール:

 #apt-get install ndiwrapper-source
 #module-assistant prepare
 #module-assistant auto-install ndiswrapper
 #apt-get install ndiswrapper-source

lspci でコントローラを確認:

 #lspci
 0000:02:02.0 Ethernet controller: Atheros Communications, Inc. AR5212 802.11abg NIC (rev 01)
 #lspci -n
 0000:02:02.0 0200: 168c:1014 (rev 01)

Lenovo からドライバをダウンロード:

  • ワイヤレスLAN(ThinkPad 11a/b/g)(Windows 2000/XP/XP Tablet Edition 2005)
  • Ver.4.1.102.133
  • 77wc36wj.exe

Windows 上で展開してできた WINXP_2K ディレクトリを Linux 上にコピー。

ndiwrapper コマンドでドライバをインストールする:

 #cd /path/to/WINXP_2K
 #ndiwrapper -i NET5211.INF
 #ndiswrapper -l
 Installed ndis drivers:
 net5211         driver present, hardware present
 #modprobe -a ndiswrapper

wlan0 でインタフェースが作成される。 MADWIFI と同じ無線 LAN 設定で、つながった。

通信も成功。

しかし、やはり大きなファイルの転送が途中で止まってしまう。

うーん、もしかしたらドライバ以外の問題なのだろうか。

[ 2月24日全て ]

2006年2月25日 (土)

大きいファイルの転送が止まってしまうのは TCP Window Scale Option のせいだった

Linux kernel を 2.6.15 にして以来、無線 LAN で大きなファイルの転送がすぐに止まてしまうようになったので、ドライバをいろいろ変えてみるなど試行錯誤中。

大きなファイルの転送ができないと必要なファイルのダウンロードもままならないので、昨日の夜有線で接続して作業を行うことにした。

……あれ?

有線でも駄目じゃん。大きなファイル転送できないじゃん。

無線 LAN の問題ではなかった

ThinkPad X31 の内蔵 NIC の方は会社だとうまく動いているし、どうやら自宅内の LAN、あるいは ADSL 接続あたりに問題があるようだ。

確認してみると無線 LAN アクセスポイント経由での PC 間のファイルのやりとりは問題なし。 早く気がつくべきだった。

とすると次の可能性はルータ(RTW65b)か。

RFC1323 TCP Window Scale Option

Linux kernel 2.4.27 だとうまく通信できているので、そのあたりから調査。 Web を見てみると 2.6.8 から net.ipv4.tcp_default_win_scale がデフォルトで 0 でなくなった事で同様の障害が発生し話題になったようだ。

自分が以前 2.6 系に乗り換えようとしたのもちょうど 2.6.8 だったので、その時に駄目だったのも実はこれが原因だった可能性がある。

 echo 0 > /proc/sys/net/ipv4/tcp_default_win_scale

でこの設定が変えられるのだが、2.6.13 以降このオプション自体が無くなっている。

tcp_window_scaling はまだ存在するので、

 echo 0 > /proc/sys/net/ipv4/tcp_window_scaling

してみる。

……直った。

ということで

MADWIFI も NdisWrapper もシロだったようだ。

そろそろルータ買い換え時なのかなぁ。 YAMAHA で気にいってはいるんだけれど。

[ 2月25日全て ]

2006年2月26日 (日)

マウスを使うようになったので Firefoxマウスジェスチャを使う

ワイヤレスマウスを使うようになったので、Firefox でもマウスジェスチャを使うことにしよう。

ということで定番の All-in-One Gestures Firefox 拡張機能インストール。 まずは Down - Right で文書(タブ)を閉じるジェスチャを覚える。

自分の場合、これが使えるだけで随分楽になるな。 普段愛用している TrackPoint ではマウスジェスチャを多用すると指が凹むとノーチェックだっただが、使ってみるとあら便利。

マウス用に入れたはずの All-in-One Gestures であるが、気がつけば TrackPoint でもジェスチャしている。指先が心配だ。

[ 2月26日全て ]

2006年2月27日 (月)

何度でも何度でも何度でも立ち上がり呼ぶよ

THE LOVE ROCKS

先週の発売日の朝にはめざましテレビにも登場していた、DREAMS COME TRUE のニューアルバム CD THE LOVE ROCKS を購入。

「大地震の後、後光を背負いながら進藤先生が病院の玄関から入ってきたら、もう泣いちゃうね」な「救命病棟24時」主題歌「何度でも」をこれで何度でも聞くことができる。

その他

  • JET!!! (ロッテガーナミルクチョコレートCMソング)
  • SUNSHINE (めざましテレビテーマソング)

など。

買ってきた CD を早速片肺状態のコンポにかけて聞く。 SUNSHINE をいい気持ちで聞いていたら曲の途中で一旦フェードアウト。 「アルバムバージョンのアレンジだね」なんて思ってたら、一向に戻ってこない。

とうとう両方いっちゃいましたか。トホホ。 とりあえずテレビスピーカーで聴いておく(なんだ、このパンチの強いテレビの音作りは)。


[ CD アルバム ]

16:00 健康診断

去年の2月21日より、約1年ぶり。 前回と同じ会社の近くのクリニックにて。

今回は気にせず朝食も昼食も食べていった。

  • 尿検査 - またたまるだろうと45分前に一度トイレにいったのだが、これが危なかった。25ml ぎりぎり。
  • 身長 - 測ったけれど不明。
  • 体重 - 着衣で 64kg。
  • 視力 - 矯正で右が 1.0 左が 0.9 ぐらいだったかな。
  • 聴覚 - 問題無し。
  • 問診 - 田中康夫似の先生。デスクトップVAIO健在。去年から何か変わったことはないかと聞かれたので「太りました」と言ってみた。体重的には去年とほとんど変わっていないのだが、この腹の肉の邪魔さ加減はなんでしょうね。「食事については何か気をつけられていますか?」「いえ特に」「前回、コレステロールや肝機能の値が高く出ていますので今回も高いようでしたら気をつけてください」
  • 血圧 - いつもと同じぐらい。
  • 心音 - 問題無し。
  • 採血 - 試験管にその場でシールを貼らないので、町医者らしいと思いつつ。
  • レントゲン - 撮影。

今回は待合い室も空いていた。健康診断は約15分であっけなく終了。

[ 2月27日全て ]

2006年2月28日 (火)

Intercepting Filter パターンとレスポンスの順次送信

WiKickerセッション管理/認証/承認機能をどのように形で組み込むか思案中。

セッション管理部分は CGI::Session モジュールで実装し、認証承認部分はドライバはまずは Apache::Htpasswd モジュール等を使い上位部分を自前で実装という形にすることにしようと考えている。

さて、これをどうやって組み込むか。 認証承認機能は、運用によってバックエンドがファイルだったりデータベースだったりする(したい)ので、結構な柔軟性を持たせておきたい。

Servlet のフィルタのように Intercepting Filter パターンにするのが柔軟性が高いかなと思ってコードを書き始めてみた。 リクエスト側のフィルタリングは問題なかったのだが、レスポンス側のフィルタリングではたと困った。

WiKicker では view についてはクライアントを待たせないように、構築したところから順次送信している。 効率を落とさず、拡張可能なフィルタを適用するのが難しそう。

実装したい機能に対してオーバースペックなフレームワークに膨れ上がりそうなのでヤメ。 普通にそれぞれの機能を差し替え可能にしておいて、使わない場合は何もしない処理クラスを設定するという無難な構成にしよう。

[ 2月28日全て ]

About Me

Naney Naney (なにい)です。株式会社ミクシィでマネージャー・プロダクトオーナーをしています。

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。ちょっとしたノートは nNote にあります。

follow us in feedly

※内容は個人的見解であり所属組織とは関係ありません。

月別インデックス
Process Time: 0.061038s / load averages: 0.39, 0.54, 0.57
nDiki by WATANABE Yoshimasa (Naney, Google profile)
Powered by DiKicker