Firebug integrates with Firefox to put a wealth of development tools at your fingertips while you browse.

通常、WebページやWebアプリケーションの開発に必要なツールは、特定ブラウザに限定されることが多い。このため、複数のブラウザで動作するWebページやWebアプリケーションの開発を進める場合、ブラウザごとに提供されている開発ツールを使ってデバッグする必要がある。結果として、普段は使わない不慣れなデバッグツールを使った作業を強いられることがある。

こうした状況を改善する取り組みのひとつとして、IBM Researchの研究者であるMichael G. Collins氏およびJohn J. Barton氏の『Crossfire』がFirebugのブログにおいて紹介された。Crossfireの取り組みについてはCrossfire - Multiprocess, Cross-Browser, Open-Web Debugging Protocol [PDF]という論文に詳しい。

Crossfireの取り組みは、デバッグツールをサーバとクライアントという2つのモジュールに分割し、マルチプロセスおよびマルチプラットフォームでのデバッグを可能にするというもの。Crossfireそのものは分割されたサーバとクライアントが通信するためのプロトコルとなる。このようにツールを分離して動作させることで、たとえばフロントエンドはFirebug/Firefoxで動作させ、バックエンドをEclipseで動作させるといったことができる。内部構造は異なるものの、従来通りブラウザ内部ですべて済ませることも、複数のブラウザ間で動作させることも可能になる。

Crossfireのアイディアはすでにいくつかのプロダクトで実現されている。リモートデバッギングとしてはOpera DragonFlyが、マルチプロセスにおけるデバッグとしてはChromeのWeb Inspectorなどがすでに実装を提供している。同一UIでマルチブラウザに対応する開発ツールとしてはdynaTrace softwareの「dynaTrace Ajax Edition 3.0」などが、Crossfireの想定する「アプリケーション内部JavaScriptデバッグアーキテクチャ」に近い動作をすでに実現させている。Crossfireという共通のプロトコルを採用することで、こうした取り組みがより多くのブラウザで実現できるようになる可能性がある。