メモの日々


2006年03月01日(水) [長年日記]

  • ファンタジーサッカー始まってた。忙しくなるなあ。

[javascript] 「JavaScriptによるオブジェクト指向プログラミング」 (CodeZine)

この連載、以前にメモしたと思うんだけれども見つけられないので再びメモ。

[web][javascript] 「Ajax非互換性データベース」 (@IT)

“どのブラウザでも動くAjax”を共有財産として育てようより。現状で17個の非互換項目が登録されていた。

[life][service] USEN光が来る

昨日、家に帰ると「USEN光ファイバ導入決定のお知らせ」という封筒が放り込まれていた。知らぬ間に導入決定したらしい。賃貸だからそういうもんか。

光なんか要らないんだが。USENはプロバイダサービスがもれなく付いてきてしまうようでヤな感じ。

ADSL解約、現在のプロバイダのコースをダイアルアップの一番安いものに変更、ルータを買う、などが必要そうだ。

やること

  • カレンダーを買う
  • 家賃
  • ブラシ

2006年03月02日(木) [長年日記]

  • 先週来ていたアルバイトはもう契約終了で、今日から新しいアルバイトが2人来た。1人のときは大丈夫だったが、2人になって気を使うことがぐっと増えた。

[db] 「リレーショナル・データベースの世界」

SQLのTipsや理論的な面、NULLは避けよという話など、色々ある。

やること

  • カレンダーを買う
  • ブラシ

2006年03月12日(日) [長年日記]

[dev] 「機能外要求とISO9126 機能外要求抽出のための Tips とパターン」 (オブジェクトの広場)

ISO9126を機能外要求抽出に利用するという話みたい。oosquare-mlより。

ISO9126 は、ソフトウェアの品質を表す特性を定めた国際規格です。品質を表す特性を品質特性と呼び、6 つの品質特性に分類され、品質特性はさらに 27 の副特性に分類されています(図 3 )。 ISO9126 は作成されたソフトウェアの品質を評価する目的だけでなく、作成前にソフトウェアの機能要求や機能外要求を定義するのにも使えます (ISO9126-1 の序文にも記されています)。この ISO9126 の分類を使って、ソフトウェアに要求されている機能外要求がないか照らし合わせていくと、漠然と探し当てるよりも格段に楽に機能外要求を網羅的に確認できる便利なものです。

[dev][c] 「いろいろなプロファイラ。」 (更新履歴兼雑記)

前に見たときはメモしなかったんだけどやっぱりメモ。

gprof、google-perftools、sysprof、OProfileというのが簡単に紹介されている。

[life][service] USEN光が来る(2)

光ファイバが来たらADSLは使えなくなるのだと思っていたのだが、説明を聞くとUSENと契約しない人は今のADSLを使い続けられるとのこと。

USENは確かに安いんだけど(多分500円/月くらい安くなる)、ADSL解約したりプロバイダのコースを変えたりルータ買ったり、諸々の作業が面倒なので契約しなかった。

[service] Asahiネットのネットニュースサービスがずっと使えなかった

去年の年末くらいから。ニュースサーバには接続できるんだけど、新着記事が1つもない状態がずっと続いていた。

が、今日試したら新着記事がガーっとダウンロードされた。会員サポートのページ

発生日時復旧日時障害内容
12/192/28 20:35news2ならびにnews3.asahi-net.or.jpに新規記事が投稿されない場合がありました

のような告知があったのでこれかな。「新規記事が投稿されない場合がありました」ってのは少し違うと思うけど。復旧に随分時間かかってるな。

[windows] エラー10005 (2)

イベントビューアを見ると5分おきにID10005のエラーが記録されていた。なんだろうと思って検索してみたら2年前の自分の日記がヒットした。2年以上の間、5分間隔でエラーが出続けていたようだ。

イベントログの説明欄にあるリンクをクリックするとこのエラーの説明ページが表示され、そこにCDOSYS Tries to Start the IIS Admin Serviceというサポート技術情報へのリンクがあった(日本語訳はCDOSYS は、 IIS Admin サービスを起動しようとします。)。このサポート技術情報に、

IIS Admin service が停止、または IIS Admin service オフなのを持っているコンピュータで CDOSYS を使用すると、このサービスを開始する試行が確認できます。 サービスが停止する場合、 CDOSYS コードが実行されると、サービスが開始されます。 サービスがオフな場合、エラーがアプリケーション イベント ログに出力されています。

(略)

どちらの場合もメールは、正常に送信されます。

とあった。

「正常に送信されます」ですと?エラーになっているのだからとあまり気にしないできたが、エラーログが出ても処理が失敗しているとは限らないらしい。

試しにこのサポート技術情報にあるサンプルスクリプトを実行してみたら、確かにエラーログが残るがメイルは送信できた。

もしやおれのPCから5分間隔でメイルが送信され続けているのでは、と心配になり、Etherealをインストールしてパケットを監視してみた。結果、不審な送信パケットは観測されなかった。一安心。

いったい何が起こっているのか。結局2年前と同じ結論しか出せない。「誰かが5分おきにIISの起動を試みているようだが誰だ?」

で、IISなんか使っていないので、アンインストールすることにした。これでエラーログは記録されなくなった。

やること

  • カレンダーを買う
  • ブラシ
  • トイレットペーパー

2006年03月13日(月) [長年日記]

  • サーバが重い。このtDiaryのせいかも。最近なぜか負荷が高いのだ。

[unix][shell] bashで一度にたくさんのファイル名を変更する

file_1.sample.gif 〜 file_10.sample.gif というファイルのファイル名の .sample 部分を削除したかった。for文を使って、

for file in $(ls *.sample.gif); do mv $file $(echo $file|sed 's/\.sample//'); done

とした。for文て全然覚えられない。

その後ちょっと調べて、sedを使わずに

for file in $(ls *.sample.gif); do mv $file ${file/.sample/}; done

としてもできることを知った(参考:http://linuxjm.sourceforge.jp/html/GNU_bash/man1/bash.1.html#lbAZ)。

もっと簡単にできるのかな。

(追記)

renameというコマンドがあるのですね。ご指摘ありがとうございます。

(追記2)

lsなんか使わなくてよくて、

for file in *.sample.gif; do mv $file ${file/.sample/}; done

でいいみたい。試してないけど。

やること

  • トイレットペーパー
本日のツッコミ(全2件) [ツッコミを入れる]

takano32 [Red Hat系のディストリビューションだとrename(1)というものがあり $ rename .sample. ..]

TrackBack [http://taka.no32.tk/diary/20060314.html#p03 32nd diary Deb..]


2006年03月16日(木) [長年日記]

  • コーディングは一段落。今日はリリースノートを書いて操作説明書を修正したり。ちょっとイライラする。
  • おれ以外は皆ものすごく忙しそう。
  • あー、バグがまだあった。
  • 強い風雨で折りたたみ傘がオチョコに。傘がオチョコになるとへこむな。

[security][web] 「Guide」 (OWASP)

Open Web Application Security Projectの「ガイド」の日本語訳PDFファイルを、ここからダウンロードできる。タイトルは「安全なWeb アプリケーション構築の手引き」で100ページくらいある。セキュリティホール memo MLより。

[xrea][soft] pnamazuのバージョンを2006.02.28にしたら問題再発

Namazu 2.0.16リリースのアナウンスにpnamazuもバージョンアップすべしと書かれていたのでしたら、3年前に遭遇した\1を置換してくれない問題が再発してしまった。

自力で解決したので(コピペしただけだけど)、Namazu-users-ja MLにパッチを投稿してみた。でも、pnamazuはNamazu Projectが開発するようになったわけではないようだ。

やること

  • トイレットペーパー
  • Microsoft Update
  • Flash Playerをアップデート

2006年03月17日(金) [長年日記]

  • 今日も操作説明書。
  • 昨日見つけたバグは直した。これで終わるといいな。

[java] 「リソースインジェクションというプログラミングスタイル - Fuse 2.0」 (MYCOM PC WEB)

Fuse 0.2はJavaで実装されたライトウェイトのインジェクションライブラリ。特にJFC/SwingやSWTといったGUIプログラミングでリソースインジェクションを実現することを想定して設計実装されている。

GUIプログラムのリソース操作部分をアノテーションを使って簡単に書けるようにするライブラリみたい。Java Newsより。

[soft] Flash Playerをアップデート

Flash Playerを8,0,24,0にアップデートしたんだけど。インストーラを起動してもファイル展開の進捗を表示する小さなダイアログが出て消えた後何も表示されない。Macromedia Flash Player ダウンロードセンター には

4 インストーラアイコンがデスクトップに表示されたら、それをダブルクリックします。

5 ダイアログボックスを読み、クリック操作で進みます。

6 [インストール]ボタンが表示されたら、それをクリックして Macromedia Flash Playerをブラウザのプラグインのフォルダにインストールします。

と説明があるので、インストールウィザードが表示されることを期待していたのだが。

Flash Playerのバージョンを確認するとバージョンは上がっていたので、これでインストールは出来ているみたい。でもきちんとインストールできたのか不安になるよな。スラッシュドットジャパンにダウンロードし実行しても何も表示されないという投稿があったから、皆こうなるみたい。

ほかにもスラッシュドットジャパンからちょっとメモ。

やること

  • Flash Playerをアップデート

2006年03月20日(月) [長年日記]

  • またバグを見つけてしまった。
  • もう一つ。うーむ。
  • 修正した。
  • アルバイトの成果物をやっとチェック。修正するが時間かかるな。おれのモチベーションにも問題あり。

[dev] 「テストの順番を入れ替えてみると・・・」 (torutkの日記)

そこで、ユニットテストはソースコードが十分枯れてきた終盤で実施するとどうでしょうか?

ユニットテストをしてから結合テストをするという流れを逆転させてみます。

メンテナンスが大変なユニットテスト(ホワイトボックステスト)はコードが安定してきた終盤に実施するのがいいのではないかという話。


2006年03月21日(火) [長年日記]

  • 今日は春分の日で休み。
  • WBC決勝日本vsキューバをちょっと見る。韓国戦の方が面白いな。

[unix] 「NFSのオプションで、hard, soft, intrというのがありますが、……」 (はてな)

NFSのオプションの話をメモ。

  • hard, intr無し - 落ちたサーバにアクセスしに行ったクライアントプログラムは固まります。SIGINTなどの割り込みで中断することもできません。多くの場合、これはかなり困った状態になります。
  • hard, intr有り - 落ちたサーバにアクセスしに行ったクライアントプログラムは固まります。が、シグナルを送ればクライアントはファイルアクセスをエラーとして処理します。
  • soft - 落ちたサーバにクライアントプログラムがアクセスするとエラーが返ります。

とのこと。


2006年03月22日(水) [長年日記]

  • 今日もバイトの成果物のチェック。

[dev][unix] 「ひらメソッド」 (読学のススメ)

増井俊之さんのブログのコメント欄より。Wikiに記録を残しながら関数をボトムアップで読んでいくことで大量のソースコードを読める、という話。

近年、多くのソフトウェアのソースコードが公開されていますが、そのほとんどは1万行を軽く超えているようなものばかりです。「読みたい→規模がでかい→ 自分では無理だ」このような状況が出来上がっているように感じます。しかし工夫次第で、天才でなくともこうしたソースコードを読めると私は確信しています。その私なりの工夫、つまりひらメソッドを紹介します。

このサイトにはLinuxカーネルを読んだ記録もあるので、それも参考になるかも。

[web][soft] Seleniumを使った

やっと使った。とはいえテストをバリバリ書いたわけではなくて、Selenium IDEで記録してそれを再実行したりしただけ。

Selenium IDEを使えばウェブサーバにSeleniumをインストールしなくてもテストは実行できる。でも、たくさんのテストケースを実行するには(Selenium IDEではなく)SeleniumのTestRunnerが要るみたい。Drivenてのでもできるのかもしれないが、こちらややこしそう。

Selenium IDEについては

の説明が分かりやすかった。

Seleniumについては

にシンプルな説明があった。

以前にメモしたSelenium関連サイトも書いておく。

やること

  • クリーニング

2006年03月26日(日) [長年日記]

[dev] 「レビューで手を抜く」 (steps to phantasien)

いい機会から, 以前私のいたチームがどんな風にレビュー(ピアレビュー)をしていたかを少し書いてみよう.

参考になる。おれはレビューが機能しているチームに属したことはない。

[tdiary] TrackBack spam対策フィルタを導入

TrackBack spamが山ほど来たので、linkcheck.rbを導入した。いつも対策が後追いだ。

やられた分はひとつひとつ手動で非表示にした。ハッカーの資質はななさそう。

やること

  • クリーニング

2006年03月27日(月) [長年日記]

  • 今日は操作説明書じゃなくてマニュアルの作成。存外にページ数が増えてしまった。

[php] 「推奨php.ini設定」 (wiki.ohgaki.net)

大垣さんによる。PHP 5.1.2の話みたいだけど、4系でも同様だろう。PHP-users MLより。

やること

  • クリーニング

2006年03月28日(火) [長年日記]

  • マニュアル出来上がった。
  • 明日はまた見つかった小さなバグの修正をする予定。
  • 遂に新しく出来たマンションの脇の道を通った。マンションは予想よりも立派だった。東京みたい、と思ってしまった。

[life] 歯医者終了

歯医者へ行った。前回水がしみていた箇所は、慣れたのかあまり感じなくなったのでそう伝えた。すると、これでしばらくは行かなくていいということになった。

おれは噛み合わせがよくないと言われ、うつ伏せや横を向いて寝るのはなるべく避けるよう指導された。そんなこと言われても、横向きでないと眠れんわい。

最後に全体的に歯を磨かれた。最後の最後に前歯の所をぐりぐり磨かれてもの凄く痛かったのだが、もう終わりなのだからと我慢してしまった。今でもまだ痛いんですけど。

費用は1000円くらい。次は4ヵ月後くらいにハガキが来たら来いと言われた。

[life] 図書館へ行く

  • 珍妃の井戸 (浅田次郎)
  • Javaプログラマのためのアルゴリズムとデータ構造 (近藤嘉雪)
  • サッカーマガジン 2006.2.21 「挑戦者小野伸二」

を借りた。また汚ねえおっさんが椅子で眠ってた。

やること

  • クリーニング
  • 家賃

2006年03月29日(水) [長年日記]

  • バグは直した。

[php] 「Custom Session Handling」 (Zend)

ZendのサイトにあるDBを使ったカスタムセッションハンドラのサンプルをなんとなくメモ。字が小せえ。PHP-users MLより。今のプロジェクトではMojavi2に付属していたハンドラをちょっと直して使っているんだけどね。

[web][soft][javascript] Greasemonkeyを使った

Greasemonkeyは面倒そうな気がして避けていたのだけれど、Software Design誌の記事を読んで使ってみたくなったので使った。

Greasemonkeyがやっているのはページの読み込み時にユーザが登録しておいたJavaScriptを実行することだけみたい。できることはBookmarkletと同じだと思うけど、URL別にJavaScriptを登録できてそれを自動実行してくれる所に意義があるのかな。

自分で簡単なGreasemonkeyスクリプトを書いてみた。document.evaluate()というメソッドを使うとXPathを使ってHTMLの要素にアクセスできるようだ(これはGreasemonkeyとは関係なくて、JavaScriptというかDOMの話かな)。XPaxhは以前XSLTを扱っていた頃に一度身に付けたはずだが全く覚えていなかった。ムズカシーと思ったけどそうでもないかも。ちゃんと理解できていないので曖昧にしか書けない。

やること

  • クリーニング
  • 家賃

2006年03月31日(金) [長年日記]

  • 物忘れが気になる。健忘症なのか?
  • 最近Googleのキャッシュが文字化けすることが多い。不便。
  • NSURくんとSTUさんの送別会に参加させてもらった。SKIくんが日ハム小笠原にもっと注目せよと熱く語り鼻血を出した。

[security] 「開発者のための正しいCSRF対策」 (JUMPERZ.NET)

セキュリティホールmemo MLより。CSRFについて丁寧に解説している。IEにはCSSXSS脆弱性があるのでCSRF対策として「セッションIDをトークンとして使う方法」はよくない、という主張が重要。困ったな。CSSXSSのことはよく知らないので調べないと。

高木さんの見解を待望している人は多いだろうな。

(追記)

リンクしたページが読めなくなってしまった。後日書き直されたものが公開されるようだが。

ページが読めないと関連MLのアーカイブのURLが分からなくなってしまうので、履歴に残っているうちにメモ。

freemlのアーカイブってちょくちょくエラーになる。そのときはURLの後ろに付いているsessionidを削除すると読める。どういうバグなんだ。

あと、関連した話題をちょっとメモ。

ややこしい。整理して考えないと間違える。

(追記2)

件のページはリライトされ再公開された。高木さんの文章が公開されたのでメモ。

[dev][db] 「PostgreSQLにおけるJIS X 0213サポートに関する考察メモ」 (PostgreSQL Information Page)

PostgreSQLでは(8.1現在),JIS X 0213はサポートされていません.このページでは, PostgreSQLでJIS X 0213をサポートする際の問題点などを検討します.

というページをなんとなくメモ。pgsql-jp MLより。

[java][ruby][db] 「境界を越える: アクティブ・レコードを探る」 (developerWorks)

正直に言うと、私はRailsを最初に試した時、かなり傲慢でした。アクティブ・レコードなど丸で役に立たないと思い込んでいたのですが、実は一部の問題に対しては、あらゆるものが用意されていることを知ったのです。

読んでない。メモだけ。

やること

  • 家賃
  • 稼働
  • インストーラ生成
  • テーブル生成
  • ダミー測定