http://martinfowler.com/bliki/PostIntelliJ.html

よく、ソフトウェア開発ツールを試用してくれないかというオファーを受ける。 残念ながら見る時間があまりないのだが——正直言って、いつも失望させられてばかりである。 私がツールに惚れ込むことなど滅多にない。

2000年の後半、私はツールに注目していた——特にJavaのリファクタリング ツールにだ。 その頃、まともなJavaリファクタリング ツールは存在しなかった。 Smalltalk Refactoring Browserによって実証されてはいたが、 私はRefactoring Rubiconを超える者を待っていた。 それは(現在JetBrainsと呼ばれる会社の)IntelliJ IDEAを最初に触ったときに表れた。

そのリファクタリング機能には感動した——Javaにおける最初のリファクタリング ツールであった。 しかし、私が注目したのはそれ以外の機能だった。 このツールの機能のエッセンスは、編集時にメモリ内に解析ツリーを作成することだった——この解析ツリーを使ってユーザーを支援する。 この時、静的型はコンパイラによって警告されるものではなく、 エディタが正しい型のメソッドを補完してくれるものとなった。 私が入力しようとしているものを推測してくれるというのは、時折、気味悪く思えた。 しかし、それ以来、何かおかしいと思ったらすぐに「ALT-ENTER」を押すようになった。

IntelliJの最大の支持は、ThoughtWorksの開発者から出てきた。 ThoughtWorksでは、誰かがプロジェクトで使う標準IDEを提案すると、 暴動をおさえるための催眠ガスが必要だった。 JBuilder信者、textpad信者、slickedit信者がいたからだ——頼むからemacs信者は刺激させないでくれ。

しかし、6ヶ月以内に、ほぼすべての人間がIntelliJを使うようになった。 自発的に使っている者もいれば、一生懸命使おうとしている者もいた。 Simon Harrisも諦めて使うようになった。

私は「SmalltaklのIDEはどんなものよりも優れている」と言ってウザがられていたのだが、 もうそんなことはない。 私にとってIntelliJとは、Smalltalk以来のIDEとなった。 そのパワーとユーザビリティは、他を寄せ付けなかった。 我々はポストIntelliJ時代に突入したのだ。

IntelliJがこの世界の唯一のIDEではない。 Eclipseが非常に早いスピードで後を追っている。 Eclipseには、IntelliJを好きになった機能の多くが搭載されている。 だが、Eclipseのことも敢えて「ポストIntelliJのIDE」と呼ぶことにする。 Eclipseがどんなに優れていようが、ThoughtWorksではIntelliJの方が好まれているようだ。

( Visual Studioは、前IntelliJ世界に囚われている。 幸運なことに、JetBrainsはVisual Studioを新しい時代に持ち込んだReSharperを開発している。 )

IntelliJとReSharperがどれだけ愛されつづけるか私には分からない。 ツール ビジネスは残酷で、開発者は飽きっぽいものだ。 しかし、今後、いかなることがあっても、IntelliJのことをIDEの変曲点(マイルストーンとなるツール)と見なすことは変わらないだろう。