« 2008年2月 | トップページ | 2008年4月 »

2008年3月の9件の記事

2008年3月29日

Windowsの英語メッセージを簡単に知る方法

海外のエンジニアに問題を報告するときは、当然ながらエラーメッセージも英語で書かなければならない。LinuxやUNIXは、ロケールを英語にしておけばCLIコンソールの表示はすべて英語になる。メッセージファイルもほとんど英語だから、これも問題ないだろう。

やっかいなのはWindowsである。日本語版Windowsを英語モードで動かすことは(私の知るかぎり)できない。英語版Windowsの環境で再現テストするのは面倒だ。日本語のメッセージを自分勝手に翻訳すると、英語版Windowsのメッセージと似てもにつかないメッセージを「創作」してしまう。

こんな時はマイクロソフトのサポート技術情報を活用すればよい。

  1. 日本語のエラーメッセージで日本語サポート技術情報を検索する。技術文書がいくつか見つかるはずだ。
  2. 次に技術情報のオリジナル(英語)を探す。英語版マイクロソフトサポート情報を検索対象にして文書番号で検索するか、URLの最後の「ja」を「en-us」に変えればよい。
  3. 日本語と英語の技術情報を見比べれば、対応する英語版Windowsのメッセージが分かる。

エラーメッセージだけでなく、メニューや設定ダイアログの項目名もこの方法で英語に変換できる。例えばエクスプローラのメニュー「ネットワークドライブの割り当て」は「Map Network Drive」であることが技術文書308582でわかる。

Windows XP でネットワーク ドライブの接続および切断を行う方法
http://support.microsoft.com/kb/308582/ja

How to connect and disconnect a network drive in Windows XP
http://support.microsoft.com/kb/308582/en-us

| | コメント (0)

2008年3月27日

システムダウンの英語表現

最初に断っておくと、この記事は、私が海外とのやりとりやインターネットで見聞きした表現をベースに書いているが、ネイティブにチェックしていない。

英語の「System down」は、「System is down」であり、システムがいま使えないという状態を表す。したがって、「The system was down yesterday」は「昨日、システムが使えない状態だった」である。

Your computer’s down. Who you gonna call?
「System down: send in the geeks」より
http://technology.timesonline.co.uk/tol/news/tech_and_web/personal_tech/article1936893.ece

「システムがダウンした」という日本語は、ある特定の日時にシステムが停止したという状態の変化もしくは動作を表している。これに当てはまる英語表現は、「The system failed」であり、名詞句なら「system failure」であろう。私の上司(アメリカ人)やアメリカのユーザが「The system went down」というメールを書いたことがあるので、これも使える。おそらく「system failed」はフォーマルな表現で、「system went down」はカジュアルな表現だろう。

Servers don't go down that often, but they do go down.
「System down? No problem: KVM-over-IP remote-access solution brings network back up quickly - Remote Access」より
http://findarticles.com/p/articles/mi_m0CMN/is_7_40/ai_105516122

「The system went offline」という表現もよく見かける。オンラインシステムのダウンが元の意味だが、現在のコンピュータシステムのほとんどはなんらかのオンライン処理をやっているから、ダウンとオフラインはほぼ同義だ。

Dallas' new sophisticated multimillion-dollar emergency dispatch system went offline for nearly three hours Friday morning,
「Dallas' upgraded dispatch system down for nearly three hours」より
http://www.dallasnews.com/sharedcontent/dws/news/localnews/stories/DN-911_22met.ART0.North.Edition1.45ee543.html

日本人が書いた英文で「The system downed」という表現を見たことがある。動詞用法のdownは他動詞であり目的語をとる。「The system downed the component X(システムがコンポーネントXを停止した)」という表現はできるし、海外ベンダーのサポートメールで見たことがある。しかしシステムがダウンしたという意味で「The system downed」と書くのは明らかに誤用である。

システムダウンによって実際に業務サービスに影響が出たことを伝えたいときには、「outage」や「disruption」を使う。

Research In Motion's ubiquitous BlackBerry experienced a "critical severity outage" on Monday afternoon
「RIM reports "critical" BlackBerry outage」より
http://www.reuters.com/article/businessNews/idUSN1114968920080211

The Memphis hub and flight operations experienced substantial disruptions last night and this morning due to heavy rain and thunderstorms.
「FedEx News : National Service Disruption」より
http://www.fedex.com/us/update2.html

「crash」もシステムダウンを表すときに使う。言葉から受けるニュアンスはハードウェア障害のイメージだが、ソフトウェアによるダウンに「crash」を使うのはごく普通で、Wikipediaにも載っている。

A crash in computing is a condition where a program (either an application or part of the operating system) stops performing its expected function and also stops responding to other parts of the system.
「Crash (computing)」より
http://en.wikipedia.org/wiki/Crash_%28computing%29

私が過去に関わったフォールトトレラントシステムは、複数のプロセッサボードを搭載して、それぞれのボードが「クラッシュ」したときに他のボードが処理を引き継ぐという仕組みだった。実際のクラッシュ原因はほとんどソフトウェア障害だった。余談だが、自動車業界での「クラッシュ」は自動車事故を表す不吉な言葉なのだそうだ。このシステムを自動車メーカに売り込もうとしたときに、ちょっと問題になったらしい。

| | コメント (0)

2008年3月23日

robocopyでデータ移行、そしてフォルダ同期

ThinkPad T42のハードディスクが手狭になってきたので、500GBの外付けハードディスクを買ってきた。ThinkPadのハードディスクを換装したあとに残った40GBと80GBの2.5インチハードディスクをHDDケースに入れたものもある。この3台を使い分けることにした。一番容量を食っているのがiTunesのライブラリだ。40GB近い。これを80GBに追い出して、80GBに入っていた諸々のバックアップを500GBに移すことにする。

データ移行はエクスプローラのドラッグ&ドロップでやっていたが、これでは芸がない。Windowsリソースキットツールのrobocopyをこの機会に覚えることにした。日々のバックアップはxcopyやMFSyncでやっていたのだが、robocopyのバッチも作った。バックアップ方法は差分バックアップとする。T42やiTunesライブラリで追加・変更されたファイルだけを500GBにコピーする。

robocopyで差分バックアップするときのパラメータはこれが基本だ。

/e /xo /log+:<ログファイル> /np /tee


  • /e:空ディレクトリも含めてサブディレクトリをコピーする。
  • /xo:コピー先のタイムスタンプが新しい場合はコピーしない。どういうわけか、robocopyでコピーした先のタイムスタンプが元のファイルより古くて(エクスプローラの表示上は同一だが)、バックアップのたびに同じファイルをコピーするという現象が起きた。これを回避するためのオプション。
  • /log+:ログファイルに追記する。ログファイルは日付時刻を含んだ名前にする(下記参照)。
  • /np:コピー進捗率をログに表示しない。デフォルトでは、コピーした割合が10%、20%と表示される。画面で見る限りは便利なのだが、不要な行がログファイルに大量に出力される。これを回避するためのオプション。
  • /tee:デフォルトでは、ログファイルに出力すると画面に何も表示されず、進捗がわかりにくい。/teeを付けるとログファイルと画面の両方にメッセージが記録される。

差分バックアップ運用を続けていると、コピー元から削除したがバックアップ先に残っているというファイルがだんだんたまってくる。だからバックアップなのだが、バックアップ先の容量が肥大化しすぎないように、ときどき整理する必要がある。

コピー元とコピー先を同じディレクトリ構造に同期するには、/purgeオプションを使う。ただし、いきなりコピー先のファイルを削除するのは危険なので、どのファイルが削除されるかをチェックしてからにしたほうがいい。そのためのオプションはこうなる。

/e /xo /log+:<ログファイル> /np /tee/purge /l /nocopy


  • /purge:コピー先だけに存在するファイルを削除する。
  • /l:ログ出力のみでコピーしない
  • /nocopy:/lで十分と思われるが、念のためにコピーしないオプションも付けておく。

ログで「EXTRA」とマークされているファイルが削除対象だ。確認したあと、/lと/nocopyをを付けずに実行すればよい。

バックアップのログファイル名は、日付時刻を付加した「backup_20080322_130401」の形式にしたい。Windowsバッチファイルでこういうファイル名を使う方法は、@ITの次の記事を参考にした。

「バッチ・ファイル中で日付をファイル名に使用する」
http://www.atmarkit.co.jp/fwin2k/win2ktips/419batchdate/batchdate.html

以下の3行をバッチファイル先頭に記述し、robocopyに「/log+:%FNAME%」オプションを指定すればよい。

SET DT=%date%
set TIME2=%time: =0%
SET FNAME=D:\backup_log\itunes_%DT:~0,4%%DT:~5,2%%DT:~8,2%_%time2:~0,2%%TIME2:~3,2%%time2:~6,2%.txt

| | コメント (2)

2008年3月20日

当たり前のことをあえて文章にする

ブログをやっていると、何か他の人が思いつかないものや、今まで誰も書いていない画期的なことを書きたいという「色気」が出てくる。この罠にはまると、書こうと思っても書けない。「こんな事を思いついたが、当たり前すぎてブログに書く気が起きない」とか「検索してみたら、同じようなことを書いている人がいた」と。

たとえば、トラブルシューティングの基本はログ解析である。ログのなかから異常イベントを見つけ出し、前後のイベントから問題箇所を絞り込む。その過程で、それぞれのエンジニアが様々なテクニックを使っているはずだ。私は秀丸エディタの機能を駆使している。文字列検索はもちろん、正規表現の検索や強調表示も使うし、、そしてフォントサイズやフォント種類、そして一行の文字数なども変化させながら、ログを読み解いていく。マクロに組み込んでショートカットで呼び出せるようにしている。息をするようにやっているが、慣れない人が見ると、相当なテクニックが詰まっていると思う。息をするようにやっているだけに、これまで文章化したことはない。

しかし、自分で当たり前と思っていることが、実は経験の少ない若い人たちには目から鱗だということはあるだろう。自分の考えや頭の中を文章にすることで客観視できるようになり、考えを整理したり深めたりすることもできる。

サポートチームのミッションの一つとして、ナレッジベースや技術除法の拡充をあげることがよくある。私がいま所属しているチームもそうだし、前の会社でも半分ノルマのようにして技術文書を書かせていた。公開技術情報を充実させることで、サポートコール数を減らそうという意図である。このときも同様に、サポートエンジニアがごく当たり前と思って書かないでいることことが、ユーザには非常にありがたいノウハウだということはあり得る。

これは暗黙知の形式知化である。頭の中だけにある知識・知恵は、その人だけしか使えず、その人もいつも使えるわけではない。文章化して形式知化することで、他の人と共有し、自分も安定して使えるようにある。その際に、自分の経験に基づく具体例を入れておくと、それはユニークでオリジナリティのある文章になる。

当たり前のことを当たり前としてやり過ごさず、形式知化する。いかにも地味な作業である。しかし自分にとっても他人にとっても、きわめて有用な作業である。

| | コメント (0)

2008年3月10日

Wireless Zero Configurationサービス

「Security Now!」エピソード134で仕入れた話。Windows XPはWireless Zero Configuration(WZC)サービスがデフォルトで起動している。このサービスがより良好な無線LANアクセスポイントを探すため、無線LAN接続がときどき切れるという。

そういえば、自宅の無線LANが接続が切れて再接続することがときどきある。狭い部屋だから電波状態がそんなに悪いはずがない。ほかの電気製品の出す電磁波の干渉かと思っていたが、もしかするとWZCが悪さをしているのかもしれない。

WZCサービスを停止するには、コマンドプロンプトで「net stop wzcsvc」を実行する。もちろん管理ツールの「サービス」でWireless Zero Configurationを停止してもいいが、コマンドプロンプトで実行するのが手っ取り早い。Steve Gibsonのフリーソフト「Wizmo」をインストールして「wizmo wanlock」を実行してもいい。サービスを再開するには、「net start wzcsvc」か「wizmo wanopen」だ。

WZCサービスを停止したままだと、PCをサスペンド/休止状態から再開したとき無線LANアクセスポイントに自動接続できない。このときはタスクトレイのインジケータアイコンで「修復」を実行すればよい。WZCが動いていても再接続に失敗して「修復」しなければいけないことがたびたびあるから、最初から手動で「修復」すると決めておいたほうが精神衛生上よいかもしれない。

追記(2008年3月11日)
WZCを止めたままだと、「修復」で接続できないようだ。net start wzcsvcを実行する必要がある。
本当に電波状態が悪くて切断したとき、WZCが動いてない場合は自動的に再接続しない。

| | コメント (0)

2008年3月 9日

日米プログラマの自由度と地位

ポッドキャスト「@ITナナメ読みウィークリー」3月4日号の中から、@IT発行人編集長の新野淳一氏とIBMエバンジェリスト米持氏の対談の要約。
http://www.itmedia.co.jp/enterprise/podcast/naname.html

IT エンジニアの人気が日本の若い人たちの間で低下している。「3K(きつい、給料安い、彼女できない)」がその原因と言われる。実際にきつい仕事なのは確かだが、自由度が少ないことも問題である。

建築業界と同じような考え方で、一箇所に人を集めて拘束し、なるべく安くたくさんのものを作ろうとする考えが強い。会社の生産性は評価されるが、個人の生産性を評価しない。創造性をプログラマに求めていない。結果として、ゲームやアニメ業界に人材が流れる。

アメリカのプログラマは自由度が高い(日本と似た現場もあるが)。科されたノルマを達成すれば、いつどこで仕事をしようが関係ない。基本的な「モノの考え方」が違う。

自由度もそうだが、日本でプログラマとSEを比べると、どうしてもプログラマの地位が低い。要件定義ができて仕様書を書けるSEが上で、仕様書に従ってプログラムを書くプログラマの方が下に位置づけられる。実際、平均給料もプログラマのほうが低い。私が日本のITベンダーでシステム開発業務に携わっていたとき、原価を計算する単価は三段階に分かれていて、一番下がPG(プログラマ)だった。

IT 業界の人気を回復し、IT産業を支えるプログラマの地位を向上するために、まず「SE」「プログラマ」という区別を止めるべきではないだろうか。少なくとも、プログラマはSEの下に位置するという序列を止めたほうがよい。よしんば「SE」としてシステム設計を行うとしても、プログラミングのスキルが基本である。いいシステムを設計するには、プログラムがどう動くかという理解が欠かせないはずだ。プログラマのチームを適切に導くにも、彼らの仕事内容をきちんと理解できる素養が必要である。

| | コメント (1)

2008年3月 7日

Google Calendar SyncでOutlook予定表を同期

Google CalendarとOutlook予定表を同期する「Google Calendar Sync」が公開されたので、早速使ってみた。しかし、動機の途中でOutlookが終了してしまい、一部のイベントしか同期されない。Google Calendar Syncのログファイルの最後にエラーメッセージらしきものがある

同じ現象で困っている人がたくさんいるようで、Google Calendar Helpのディスカッションに問題報告がいくつもある。さらにGoogle Calendar SyncのFAQページに、調査のためにログファイルを送ってほしいという依頼が出ている。いずれ修正されるだろう。

Outlookイベントの主催者や招待者にGoogleアカウントのメールアドレスが入っていない場合は、双方向同期で反映されないようだ。以下は「 Google Calendar Sync - FAQ」からの抜粋である。

Please note that it's not currently possible to sync events with Google Calendar Sync if you're not the organizer nor a guest.

双方向同期(2-way mode)の制限事項らしい。OutlookからGoogleカレンダーへの一方向同期では反映されている。もっとも、上記の問題で前イベントが反映されているわけではないから、同期できないものがあるのかもしれない。

この制限事項のため、個人メールアドレスのGoogleアカウントのカレンダーと会社のOutlook予定表を同期して一元管理するというわけにはいかない。FAQに書いてある回避策はこうだ。会社メールアドレスのGoogleアカウントを新しく作り、そのGoogle CalendarにOutlook予定表を同期する。そして会社アドレスのGoogle Calendarを個人アドレスのGoogle Calendarと共有する。Google Calendarを2つ持つことになるが、見た目は一元管理できる。

| | コメント (0)

Windowsタスクトレイのチップヘルプが隠れてしまう問題の解決策

Windowsのタスクトレイのアイコンにマウスカーソルを合わせると、プログラム名や処理の進行状況がチップヘルプのように表示される。しかし環境によってはチップヘルプがタスクバーの後ろに隠れてしまい、文字が全部読めない。下の画面ショットのようになる。

Photo

マイクロソフトはWindows XPの既知の問題というサポート情報を公開している。2006年6月9日が最終更新日付で、そこに書いてある解決策は再ログインや再起動。でも私のPCはいつまでたっても隠れたままだ。

この問題を解消する常駐ソフト「ToolTipFixer」がある。しかし常駐ソフトはいやなので、何か別の方法がないかと試行錯誤して、2つの方法を見つけた。

ひとつめは、「タスクバーをほかのウインドウの手前に表示する」をオフにする方法だ。ただし、私は画面を広く使うためにアプリケーションウインドウを全画面表示にして作業することが多いし、アプリケーションの切り替えやインスタントメッセンジャーの着信を確認するために、タスクバーを常に表示して作業するのが好みだ。タスクバーが表示されていないと、ウインドウを小さくするなどの手間がかかってリズムが悪い。

もうひとつは、タスクバーをデスクトップの上や左右に移動するという方法である。この画面のように、チップヘルプの文字がすべて見えるようになる。常に見えているタスクバーをひょいとドラッグして移動すればよいだけなので、それほど手間がかからない。タスクトレイのチップヘルプを頻繁に見ることはないから、この方法でよしとしよう。

Photo_2


(参考記事)
「ToolTipsFixer - ツールチップが隠れる問題を解決するソフト(WinXP)」(混沌とした日常)
http://chaoticalways.blog85.fc2.com/blog-entry-343.html

「Windows XP ベースのコンピュータで、タスク バー上のアイコンのヒントがタスク バーの後ろに隠れることがある」(マイクロソフトサポート技術情報)
http://support.microsoft.com/kb/912650

| | コメント (0)

2008年3月 6日

HandBrakeでDVDビデオをiPod用に変換

iPodやPSP向けのMEPG-4もしくはH.264の動画ファイルをDVDから生成するのは、DVD Decrypter携帯動画変換君を使うのが一般的のようだ。この方法の欠点は、DVDからVOBファイルを取り出してから変換するため、途中で人間が介入しなければならず、作業用のハードディスク領域が5GB程度必要ということ。そしてもっと致命的なのは、長時間の映像を1ファイルで変換すると映像と音声がずれてしまうことだ。

このずれはffmpegの不具合という情報を見かけたが、真偽のほどはわからない。変換に使ったPC(ThinkPad T42、Pentium M 1.6GHz)の性能が関係しているかもしれない。チャプターごとに区切って変換した5分程度の映像では「ずれ」を感じることはないが、しかしチャプターの切り替わり部分で映像と音声が一瞬途切れてしまうのが興ざめだ。

代わりのツールとしてHandBrakeを使ってみた。参考にしたのは次のページである。

HandBrakeで字幕つきDVD/動画ムービーもiPod/iPhoneへ一発変換(All about iPod)
http://www2k.biglobe.ne.jp/~t_muto/ipod/howto_video_handbrake.htm

Handbrakeを使ってiPod touchでDVDを見る(字幕付き)
http://macfox.blog113.fc2.com/blog-entry-60.html

ミュージックDVDをiPodで見るための方法
http://www.kenkyuu.net/whatsnew/2007/09/dvd_ripping_for_ipod.html

HandBrakeはCSSを解除できるはずで、Mac OS X版は単体でリッピングと変換が可能だった(MacBook、Mac OS X 10.4)。しかしWindows版はうまくいかない(ThinkPad T42、Windows XP)。しかたなくDVD43を使ってCSSを解除した。DVD43はドライバとして動作する暗号解除ソフトウェアだ。ドライバ系ソフトは下手をするとシステムクラッシュを引き起こすので、新しいものを使うときはちょっとどきどきする。いまところ問題はない。

All about iPodの記事に書いてあるように、解像度はファイルサイズにほとんど関係がない。もっとも影響するのはビットレートだ。iPodの小さい画面で見るなら192kbpsで十分である。プリセットでiPod High-Rezを選択して、ビットレートを192kbpsに変更し、別の名前のプリセットで保存しておけば、次回から設定を調整する手間が省ける。iTunesで見ると粗が目立つものの、ひとまず実用にはなる。

iPod classicのビデオ設定「画面に合わせる」がデフォルトのオンのままだと、画面高さ方向をiPod画面に合わせるため、左右が切れたセンター部分の映像だけになってしまう。この設定はオフにしておくこと。

字幕入りの動画ファイルを生成することもできる。しかし、iPodの画面で字幕を読むのはかなりつらい。英語のヒアリング教材と割り切って、字幕なし英語音声だけで楽しむのも一興である。

HandBrakeで作った動画ファイルは、2時間以上のファイルでも映像と音声のずれを全く感じない。さらに、1ファイルで出力してもチャプターごとにマーカーを入れられる。見たいシーンの頭出しがiPodの早送り・巻き戻しボタンで簡単にできて便利だ。

■2008/12/14追記

1月23日にHandBrake 0.9.3がリリースされた。プリセットがかなり入れ替わっている。0.9.2で保存したプリセットファイルを読み込む方法がないので、もう一度作り直す。Legacy iPodが、0.9.2のときのiPod High-Rez(幅640ピクセル1500kbps)に相当し、iPodがiPod Low-Rez(幅320ピクセル、700kbps)である。どちらかを選択したあと、ビットレートを192kbpsに変更し、Addボタンを押して新しい名前で保存する。そのあとSet Defaultボタンをクリックすれば、その設定が次回起動時に選択された状態となる。

iPodとiPod Legacyのどちらも「iPod 5G Support」が指定されている(CLIの-I、-I or --ipod-atomオプション)。iPod 5Gで再生するには、iPod UUID atomをMP4ファイルに付加しなければならない。そのためのオプションである。これをチェックせずにエンコードしたMP4ファイルは、iTunesからiPod classicに転送できなかった。

Changeset 1084
http://trac.handbrake.fr/changeset/1084

Gives the CLI a separate option for adding the iPod UUID atom to mp4 files, instead of it just being a side-effect of using the x264b30 encoder. It's called with -I or --ipod-atom .

| | コメント (0)

« 2008年2月 | トップページ | 2008年4月 »