« #define SEIJIN_NENREI 20 | トップページ | ダウンタウンの「擬似ヤラセ」に見る「演技する精神」 »

VNC による家庭内シンクライアントの勧め

 パソコンでの翻訳作業に関して、以前から悩んでいたことがありました。それは、参考資料をどうやって表示するかということです。 翻訳対象の文書自体は、もちろん作業用の PC の画面に表示するわけですが、文書を翻訳ソフトや翻訳支援ソフトに取り込むと、元の文書のレイアウトは再現されないことが多いので、元のレイアウトを確認したい場合には、印刷イメージのに近い形で表示できる WYSIWYG のソフトでも文書を表示したいわけです。あるいは、元の文書に関係する別の参考資料を見ながら作業したいこともあります。

 このような場合に、参考資料を表示する方法としては、次のようなものが考えられます。

  1. 翻訳対象文書と同じ PC の同じディスプレイの中に表示する
  2. デスクトップを拡張し、ディスプレイを増設して、翻訳対象文書と同じ PC の拡張ディスプレイに表示する
  3. 翻訳対象文書とは別の PC のディスプレイに表示する
  4. 文書をプリントアウトして閲覧する

 1の場合、全画面表示ではウィンドウを切り替える手間が生じますし、ウィンドウを小さくして並べて表示すると、画面上の作業領域が狭くなってしまうのが欠点です。2の場合、画面上の作業範囲は広がりますが、PC 上のメモリその他のリソースはニ文書分とられるので、画面を切り替えてスクロールなどをするたびにメモリスワップが起こって余計な時間をとられる可能性があります。3の場合、PC 上のリソースの負担は分散されますが、画面を操作したい場合に、操作中のキーボードやマウスからいったん手を離して別のキーボードやマウスに移動しなければならないので、作業効率が悪くなりますし、翻訳文書中の特定の単語を検索したい場合などに、コピー&ペーストを行うこともできません。4の場合、特定のページに移動するのに手間がかかりますし、単語を検索したりすることもできません。

 というわけで、どの方法も帯に短し襷に長しだなあとずっと思っていたのですが、先日、このような問題をすべて解決する素晴らしい方法を発見しました。それは、LAN で接続された別の PC に表示して、VNC を使って表示・遠隔操作することです。

 この方法なら、アプリケーション自体は別の PC で動いていますから、ウィンドウを切り替えてもそれほどリソースはとられませんし、ウィンドウを切り替えるのが嫌なら、別の PC の画面をそのまま見ることもできます。また、画面の操作もキーボードやマウスから手を離さなくてもできますし、翻訳対象文書からのコピー&ペーストももちろん可能です。つまり、先にあげた問題点のすべてが見事にクリアされるのです。

 この方法を試してみてつくづく思ったのは、こんな簡単なことを、なぜ今まで思いつかなかったのかということ。デスクトップとノートブックは前から LAN でつながっていましたし、VNC というソフト自体の存在も数年前から知っていて、折にふれて使っていたのに。

 考えてみると、やはり、いろんな固定観念が邪魔していたんですね。

  • ネットワーク間での情報転送は遅い
  • ビットマップ転送は必要なところだけを再描画するより遅い
  • リモート操作は、離れた場所にある PC 間で使うものだ

 ぼくはインターネットならモデムの速度が 9800 bps ぐらいの時代から使ってますし、イーサネットだって昔は 10BaseT、つまり 10 Mbps が最高速度でしたから、ネットワークというのはボトルネックになるという意識が染み付いてるんですね。だから、ネットワーク経由でビットマップ転送を行うようなソフトが速い訳がないという先入観がありました。でも、今では無線 LAN ですら 50 Mbps 出る時代ですからね。

 また、ぼくはグラフィック関係のプログラミングを専門にやっていたので、グラフィック関係の処理は計算量を食うというイメージが頭に染み付いているんですね。ぼくが初めて書いたグラフィック関係のプログラムは、BIOS の点を描画するという機能を呼び出して長方形を描くというもので、当時は PC 自体が遅かったせいもありますが、長方形 1 個描くのに何秒もかかったものです。それではあまりに遅いというので、アセンブラを覚えてフレームバッファを直接書き換えて、少しずつ少しずつ処理を高速化するというようなことを長年やってきた人間なので、しつこいようですが、描画命令だけを転送するならまだしも、ビットマップ自体をネットワーク経由で転送するようなソフトが速いわけないと思ってた (^^)。

(昔 NTT とかが一生懸命やってたにもかかわらずまーーーったく普及しなかった、ビデオテックスとかキャプテンとかいうのだって、いかにビットマップ転送せずに、描画命令だけをやりとりして画面を再現するか、というのが一つのテーマでしたからね。)

 また、VNC のような遠隔操作ソフトを、わざわざ目の前にある PC に対して使うというのも盲点でした。でも、そうしたおかげで、キーボードやマウスを2セットならべてとっかえひっかえ使うことによるストレスがあっさりなくなったのです。

 つまり、イノベーションの障害になるのはやっぱり先入観や固定観念である、という当たり前の結論なんですけどね (^^)。

 この経験から思ったんですけど、最近のウェブ・アプリケーションで流行りの Ajax なんかも、画面全体を再レンダリングしなくても、必要なところだけ再描画できるというのが一つの利点じゃないですか。でも、光ファイバーが普及して、途中の回線の速度がメチャメチャ速くなったら、そういうのもみんな無意味になる可能性もありますよね (^^)。そんなややこしいことしなくても、画面全体ビットマップ転送した方が速いよ、なんて (^^)。

 ともあれ、この方法、予想以上に作業効率を改善できますし、翻訳以外の業務にも応用できると思うんで、家庭内や SOHO 内で LAN を組んでいる方は、一度試してみてはいかがでしょうか (^^)。

追記: Windows の場合、UltraVNC の最新版で [Video Hook Driver] (NANASI さんの日本語版では [ビデオフックドライバ])というオプションをオンにして使うことをお勧めします。このオプションを使うと、サーバーの負荷が劇的に減ります(少なくともウチの環境では)。これ以外の VNC を使用したり、このオプションを有効にしないと、 やっぱりまだまだ重いかもしれません。なお、UltraVNC の場合、なんらかの日本語パッチを当てないと、(UI が英語なのはいいとしても)全角・半角キーが効かないという致命的な欠点があります。

余談: Ajax を使ったサイトは、YouTube にしろ del.icio.us にしろ、同期のタイミングがよくわからないものが多い。YouTube のプレイリストなんかも、削除しても消えないことがあって、何度も何度も削除操作を繰り返していると、やっと消えたりするし、del.icio.us のコメントなんかも、書き換えてからしばらくして再表示すると元に戻っていたりする。あれってなんなんだ? ただのバグ?(^^)

 

|

« #define SEIJIN_NENREI 20 | トップページ | ダウンタウンの「擬似ヤラセ」に見る「演技する精神」 »

パソコン・インターネット」カテゴリの記事

翻訳」カテゴリの記事

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/67762/13395539

この記事へのトラックバック一覧です: VNC による家庭内シンクライアントの勧め:

« #define SEIJIN_NENREI 20 | トップページ | ダウンタウンの「擬似ヤラセ」に見る「演技する精神」 »