メモの日々


2006年04月05日(水) [長年日記]

  • 仕事が暇になった。素晴らしい。
  • テスト項目の作成を手伝うよう頼まれたので作成している。

[link][work] 「年金は本当に破綻するの?〜若者のための年金講座」 (吉田社会保険労務士事務所)

年金の話題が色々ある。でも国民年金基金の話はなさそう。他に健康保険や労働法に関するページもあり参考になる。登 大遊@筑波大学情報学類の SoftEther VPN 日記より。

やること

  • インストーラ生成
  • テーブル生成
  • ダミー測定(やめ)

2006年04月10日(月) [長年日記]

  • 仕事暇なのはもうおしまい。

[xrea] xrea.com全体が見れなくなっていた

土曜日から。今(10時)見たら復旧していた。

XREAからのアナウンス:「xrea.com」を含むURLのアクセス障害について

「xrea.com」を含むドメイン、URLの名前解決が不安定になっています。

原因は、上位レジストラ、レジストリにて、誤認情報に基づいたドメインの停止が行われた事であり、現在、弊社側と解決に向けて、法的問題を含め交渉中です。

その問題について、上位レジストラにおいて、8日(現地時間7日(金)昼頃 )の時点で「弊社が対応しない、未解決である」と誤認し、停止措置を取られております。

8日未明(現地時間7日(金)夕方)から何度となく連絡しておりますが、「法務担当部署は、週末で既に休業中であるため対応できない。月曜日にあらためて対応する。」という対応になっております。

(追記)

このページ、職場からは見られたのに家からは見られなかった。

XREAから新しいアナウンスがあったので一応メモ。

○経緯

・4月5日(水)
 フィッシング詐欺サイトについて、上位レジストラからメールで警告。  同日中に調査、当該アカウントを削除。非公開に。  ユーザー様サイト内において、セキュリティホールが存在するPHPBBを、外部の者が改竄し、フィッシング詐欺サイトを公開した事によるものと判明。

というのがそもそもの原因のようだが、文章を読む限り、上位レジストラの対応が変。

[web] 「デフォルトスタイルの差異をなるべく無くすCSS」 (Bazooka)

各UA(ブラウザー)は、それぞれ微妙に違ったデフォルトスタイルシートを持っている為、この差異が原因で「こっちは揃っているけど、あっちのブラウザーでは、なんかずれてる」なんて事がよく起こります。

なので、まず最初にUAのデフォルトスタイルシートの各エレメントの見栄えを制作者のスタイルシートで再定義して上書きし、各UAの表示のデコボコを出来るだけ埋めてからCSSデザインし始めるというやり方が楽チンだ。

このエントリで公開されているdefault.cssは参考になるのかなあと思ってメモ。はてなブックマークより。

やること

  • テーブル生成
  • バインダー
  • クリップ
  • 歯ブラシ
  • 洗顔
  • 小型テープ

2006年04月11日(火) [長年日記]

  • 今週はずっと雨みたい。
  • 今は打ち合わせ用の資料を作っている。

[java] 「Exception-Handling Antipatterns」 (java.net)

Should you throw an exception, or return null? Should you use checked or unchecked exceptions?

12コのアンチパターンが書かれているようだ。英語で今は読む気がしないけど、後で読みたくなるかもしれないからメモ。字が小せえ。オレンジニュースより。

[windows] Wordでマウスを使わずにスタイルを変更する

MS Wordでスタイル(「見出し3」とか「標準」とか)を変更をする際に、書式設定バーの左にあるコンボボックスを使っているがこのマウス操作が面倒。選択肢が多すぎて目的のものを選ぶのが大変だからだ。

調べてみたらキーボード操作だけで書式を変更できることが分かった。

[ツール]→[ユーザー設定]→[キーボード](ダイアログ下部にボタンがある)で出る「キーボードのユーザー設定」ダイアログで、分類の「書式」に色々なコマンドが登録されておりキーストロークを設定できるようになっていた。デフォルトのキーストロークで使えそうなものをピックアップしておく。

見出し1にするApplyHeading1Ctrl+Alt+1
見出し2にするApplyHeading2Ctrl+Alt+2
見出し3にするApplyHeading3Ctrl+Alt+3
箇条書きにするApplyListBulletCtrl+Shift+L
標準にするNormalStyleCtrl+Shift+N
規定値に戻すResetCharCtrl+Shift+Z

覚えにくいな。ここにないスタイルを適用したい場合は、「キーボードのユーザー設定」ダイアログで分類の「スタイル」にあるコマンドに対し自分でキーストロークを登録すればよさそう。

あと、書式設定バーにある「インデント解除」「インデント」のボタンで見出しのレベルを変えられることも知った。これも便利かも(コンボボックスから選択肢を選ばなくて済むので)。で、これと同じ操作はTabキーでできるようだ。

手元のWordのバージョンは2003。

[net] 「Mobile IPv6 for Linux Guide (with USAGI patch)」 (USAGI Project)

Linux用のモバイルIPv6パッチの使い方の説明。モバイルIPv6のことはもうほとんど忘れてしまったな。戯れ言より。

[book] 珍妃の井戸 (浅田次郎)

珍妃の井戸(浅田次郎/著) 清朝末期の北京にて、英国海軍ソールスベリー提督をはじめとした英独露日の貴族4人が清朝皇帝側室珍妃殺害事件の真相を追う話。面白いがラストはイマイチ。この本は蒼穹の昴を読んだ後の方が楽しめたのかも。3.5点。

[dev] 「大規模プロジェクトにおける UML 活用の業」 (オブジェクトの広場)

oosquare MLより。以前にメモしようとしてし忘れていた。JAVA PRESS Vol.42に載った記事に加筆したものらしい。

本稿では,このようなケースから

  • エンティティとデータモデリング
  • 既存のコンポーネントを使ったシステム
  • 多チャネルのシステム
  • 音声自動応答装置
  • バッチ
  • いろいろなバウンダリ

をピックアップし,そのときにどのようにモデルとして表せばよいのかを紹介していきたいと思います.

やること

  • テーブル生成
  • バインダー
  • クリップ
  • 歯ブラシ
  • 洗顔
  • 小型テープ

2006年04月13日(木) [長年日記]

[security][unix][shell] シェルスクリプトにsetuidしてはいけない理由

が書いてあるページをちょっとメモ。

ついでにUNIX FAQもメモ。

[c][unix] 「シグナルハンドラを使わないでシグナルをハンドルする」 (memologue)

sigwait(3)てのがあるんですか。

この日記にはほかにもシグナル関連の記事が色々ありためになりそう。

やること

  • テーブル生成
  • バインダー
  • クリップ
  • 歯ブラシ
  • 洗顔
  • 小型テープ

2006年04月16日(日) [長年日記]

[life] 図書館へ行く

  • 魔術はささやく (宮部みゆき)
  • 幸福らしきもの (原田宗典)
  • Quick Japan Vol.62 「山下達郎」

を借りた。

帰りに100円ショップで文房具を200円分買った。見た目は安っぽいが、文房具屋で買うより大分安い。しかし、100円の物を買うのに少々悩みすぎたと反省。

帰ったらやたら疲れが出て、ひたすら眠った。やりたいことが片付かない。

[book] 博士の愛した数式 (小川洋子)

博士の愛した数式(小川洋子/著) 読んだ。記憶障害のある老数学者が家政婦の息子をかわいがる話。深い知識があれば「〜を知っているかね」と切り出すことでコミュニケーションが成り立つ。あまり盛り上がらないので3点。

解説を書いている藤原正彦との共著、「世にも美しい数学入門」という本があった。機会があったら読んでみたい。でも、数学の美しさばかり強調するのはいかがなものかと思うなあ。

やること

  • テーブル生成
  • バインダー
  • クリップ
  • 歯ブラシ
  • 洗顔
  • 小型テープ
  • ごみ袋
  • クリーニング

2006年04月17日(月) [長年日記]

  • 今日はスーツを着ている。
  • 昨日は夕方眠ってしまったことにより夜中に眠れなくなってしまった。職場への出勤中立ちながらうとうとしてしまい大変危なかった。職場に着きコーヒーを飲んで少し復活。

[net] traceroute

tracerouteコマンドの挙動を勉強した。たいした話じゃないけど、せっかくだからメモ。

流れ

  1. IPヘッダのTTLフィールド(IPv6の場合はHop Limitフィールド)に1を設定したパケット(プローブパケット)を送信する。
  2. 1ホップ目のルータが時間超過ICMPメッセージを返してくる。
  3. 1〜2を3回繰り返す。
  4. IPヘッダのTTLフィールドに2を設定したプローブパケットを送信する。
  5. 2ホップ目のルータが時間超過ICMPメッセージを返してくる。
  6. 4〜5を3回繰り返す。

のようにしてTTLを増やしながらプローブパケットを送信していく。デフォルトではプローブパケットにはUDPが使われ(WindowsのtracertはICMPエコーリクエストを使うみたい)、パケットを送信する度に宛先ポート番号を1ずつ増加していく(ポート番号の初期値のデフォルトは32768+666)。

プローブパケットが宛先IPアドレスに指定したノードへめでたく到着すると、そのノードがポート到達不能ICMPメッセージを返してくる(はず)。もし終点ノードが宛先ポート番号をリッスンしているとこのメッセージは返ってこず、tracerouteはうまくいかない(それを回避するために毎回プローブパケットのポート番号を変化させ、1ホップにつき3回パケットを送信していると思われる)。

ホップ毎に送信するパケット数

Linuxのtracerouteコマンドはデフォルトで1ホップ毎に3パケット送信するが、このパケット数は -q オプションで変更できる。-q オプションはマニュアルのSYNOPSISには書かれているのにDESCRIPTIONに説明が見当たらない。でも皆このオプションの存在は知っているみたい。

実装例

UNIXネットワークプログラミングの25.6節にtracerouteの実装例が載っている。

やること

  • テーブル生成
  • 歯ブラシ
  • 小型テープ
  • クリーニング

2006年04月18日(火) [長年日記]

  • 昨日は出先での回りの対応のグダグダ振りにあきれて脱力した。帰ってから寝込んだ。

[php] mbstring.http_output が機能するのは Content-Type が text/* のときのみ

みたい。php.iniでmbstring.http_outputを設定していても、header関数でContent-Typeを application/ナントカ に指定すると文字コードが変換されない。text/ナントカ にすると変換される。

そういう仕様であるのなら構わないが、マニュアルにはそのような記述は見当たらないので少し心配。ウェブを検索してもそれらしき情報は得られなかった。

PHP(バージョン4.4.1)のソースを見ると、ext/mbstring/mbstring.c の PHP_FUNCTION(mb_output_handler) 内に

if (SG(sapi_headers).mimetype &&
            strncmp(SG(sapi_headers).mimetype, "text/", 5) == 0) {

という分岐があるので、text/* のときだけ変換するという仕様のようだ。

[hard][mobile] WX310SAのファームウェアアップデートプログラムがリリースされていた

4月6日に。

前回のアップデートプログラムはインストールしなかったが、最近端末の不安定さが気になる(よく操作不能になる)ので、今回はインストールしたい。

やること

  • テーブル生成
  • 歯ブラシ
  • 小型テープ
  • クリーニング
  • PHSのファームウェアアップデート

2006年04月19日(水) [長年日記]

  • 5月以降のお仕事募集中です。

[javascript] 文字のエスケープ方法

「『JavaScriptを埋め込んだHTML』を出力するJavaScript」をHTML内に埋め込もうとして困った。次みたいな感じ。

<a href=
  "javascript:(function(){
    document.body.innerHTML=
      '<a href=\'javascript:alert(\"hello\")\'>alert</a>';
   })()">exec</a>

これだと「alert(\\"」にあるダブルクォーテーションの所で外側のhrefが切れてしまってうまくいかない。

次のように「\\"」を「\u0022」で置き換えるとうまくいった。

<a href=
  "javascript:(function(){
    document.body.innerHTML=
      '<a href=\'javascript:alert(\u0022hello\u0022)\'>alert</a>';
   })()">exec</a>

Under Translation of ECMA-262 3rd Edition 7.8.4 文字列リテラルの下の方にあるEscape Sequenceの表を参考にした。

[tdiary] Wikiスタイルでの \\" の出力方法

Wikiスタイルで「\\"」と書くと「"」だけが出力されるみたい。「\\"」を出力したい場合は「\\\"」のように\を余分に付ける。

[web][javascript] 「DHTMLリファレンス」 (マイクロソフト)

このページすぐ見つからなくなるのでメモ。

[dev] 「Objective-Cにおけるクラス命名パターン」 (トーフサロン)

Cocoaでのクラスの命名のされ方が少し紹介されている。ケントベックの本買おうかなあ。

やること

  • テーブル生成
  • 小型テープ
  • クリーニング
  • PHSのファームウェアアップデート

2006年04月21日(金) [長年日記]

[web][windows] 「Cookies Are Not Saved If the Host Name Is Invalid」 (マイクロソフト)

ホスト名にアンダーバーが含まれているとIEはクッキーを保存しないとのこと。クッキーが保存されない問題が発生したときはホスト名をチェックせよ。PHP-users MLより。

やること

  • テーブル生成
  • 小型テープ
  • クリーニング
  • PHSのファームウェアアップデート

2006年04月24日(月) [長年日記]

[javascript][web] HTMLのヘッダの内容を表示するブックマークレット

HTMLのHEADタグの内容を表示するブックマークレットを作ってみた。Yahoo! Japan上で動作させた場合のスクリーンショット

ページのタイトルやCSSファイルのURLをコピーしたいときなどに便利なはず。ただし、IE6では色々と問題があって動かない。

tDiary上ではブックマークレットのリンクをうまく記述できなかったので、ブックマークレットのページを作った。

hrefの内容はクリックできるようになっていた方がいいかな。後日改造してみよう。

(追記)

改造しました

[javascript] 「Bookmarklet - ブックマークレットを作成する際のポイント」 (小関健吾さん)

ブックマークレット作成の際にはこのページを参考にした。ブックマークレット・パブリッシュキットも使わせてもらった。

[javascript] 「好きなページのJavaScriptオブジェクトを参照するブラウザのBookmarklet」 (sawatの適当に作ったプログラム置き場(仮))

使ってはいないけど、たまたま見つけて便利そうだったのでメモ。ブックマークレットの中で外部スクリプトファイルを読み込んだりするのもありなのだなあ。

[security] 「ウェブアプリケーション開発者向けセキュリティ実装講座の開催について」 (IPA)

セキュリティホールmemoより。資料が公開されている。

高木さんの「「CSRF」 と 「Session Fixation」 の諸問題について」を読んだ。Firefoxは [ツール] → [プライバシー情報の消去] でBasic認証のログイン状態を破棄できるみたい。

[web] 「CSS Nite Vol.7 終了」 (CYBER@GARDEN)

色々な所より。益子さんの資料が公開されている。いくつかメモ。

  • 原則として(classではなく)idを使う
  • id/classには要素タイプを付ける
  • 子孫セレクタではツリー構造を省略しない

[ruby] 「Ruby Library Report 【第 6 回】 正規表現と構文解析」 (るびま)

Ruby用のパーサジェネレータが色々紹介されている記事をちょっとメモ。字が多いからか字の小ささが気になる。

やること

  • テーブル生成
  • 小型テープ
  • クリーニング
  • PHSのファームウェアアップデート

2006年04月27日(木) [長年日記]

  • 5月以降もなんとかなりそうです。
  • PHPとの蜜月は終了。これからはIEEEの仕様書と格闘しないといけない。言語はCだな。

[javascript][web] HTMLのヘッダの内容を表示するブックマークレット (2)

livedoor上で動作させた場合のスクリーンショット

ヘッダ内に出てくるhref属性とsrc属性の値はクリックできるようにした。 ブックマークレットなのに長いプログラムになってきてしまった。

置き場はこちら:

やること

  • テーブル生成
  • 小型テープ
  • クリーニング
  • PHSのファームウェアアップデート
  • 家賃

2006年04月30日(日) [長年日記]

[c] 「GNUプロファイラーによるコード処理速度の向上」 (developerWorks)

gprofの解説記事。読んでない。

[unix] 「/procファイルシステムを使用したLinuxカーネルへのアクセス」 (developerWorks)

/procのことよく知らないのでメモ。読んでない。

[link] 「Ctrlキーをどうやって押すか?」 (思考のエンジン)

ブックマークされてた。

「ん? Ctrlキーは手のひらで押すんだよ」

ひとつ付け加えておくと、Ctrlキーを手のひらで押す、という方法は外付けキーボードでは可能だけれど、ThiinkPadだとかPowerBookのようなノート型の場合、まず不可能だ。この場合は、少し難しいのだけれど、小指を折り畳んで指の背(というか第1関節)で押すようにすれば良い。大丈夫、すぐに慣れる。

キーバインドの変更はしたくない。試してみるべし。

[work] 「法人税調査はここを見る」 (ゼイタックス)

税務調査のことが色々書かれていて興味深い。

やること

  • テーブル生成
  • 小型テープ
  • クリーニング
  • PHSのファームウェアアップデート
  • 家賃
  • デザイン変更
  • ネットバンク
  • 雑誌