JetBrains IntelliJ IDEA - Development Tool Review
March 23rd, 2006For a while now I’ve been doing the design and front-end development for an organization that runs a Java backend. The Java developers use a development tool called IntelliJ. Since we had licenses, I started using it, but wasn’t all that impressed. Then recently they released version 5.1.
Whoa. As a front-end developer, this thing has dramatically changed the way I work - for the better. A few things this does that no other tool matches:
First, You can view the structure of the webpage as you build it. It’s a view similar to Firefox’s DOM inspector, but it’s generated on the fly. You can enter you document at any point just by clicking on the element. This has dramatically increased the speed at which I can build pages. No more scrolling around looking for that SPAN tag:

Once you start writing code it does a ton of things that other apps just don’t do:
It marks tag pairs:

This is extremely helpful in complex documents.
Once you’ve set up a project, it recognizes all the interal files, which allows it to complete any path in your html:

So no more mistyping! It will do this for image paths, script includes etc. So if you’ve got 100 images, and can’t remember what you called that submit button’s image - this thing will simply tell you.
Once you’ve got a style sheet included (or inline), all the classnames are available for auto complete:

This saves a remarkable amount of time. No more opening the CSS to remember what you named that odd rarely-used class.
It also completes javascript for you, both built in functions:

As well as items you define:

It also does a ton of error handling as you write code. In html:

javascript:

and CSS:

And I’m just scratching the surface here. Check out their website for the full list of goodies. One of my favorite items is that along the right margin of the document, the application places tiny red tick marks anywhere that there’s an error. This allows you to, at a glance, see if your pages has any errors (html, javascript or CSS). If so, click on the tick, which will take you to the error and describe it. The amount of time this app has saved me in debugging is already immeasurable.
IntelliJ has been a favorite among Java developers for quite a while. But with 5.1 it steps firmly into the front-end space. I’ve used just about every html editor out there, and nothing comes close. You pay for it at $499 for a license. That price is due to the incredible functionality available to Java developers, so it may just be too steep for a front-end-only tool. But I have to admit, after working with this new version for a few months, I don’t think I could develop without it. It I went independent today, I’d drop the $499 in a heartbeat. That’s about the best endorsement I can give this thing!
[...] Although IntelliJ IDEA is a Java IDE in the first place, it also has a strong support for Web and J2EE development. And it’s not just what we think about our product. It’s what our users think. Here is a couple of reviews about HTML and JavaScript editing in IntelliJ IDEA: 1. Teaching Mr. Rails a Lesson on Productivity 2. JetBrains IntelliJ IDEA - Development Tool Review Except for the warm words for IntelliJ IDEA, both reviews contain useful tips&tricks and examples. So, if you use J2EE part of IntelliJ IDEA, these articles might be helpful. [...]
If you do much JavaScript coding, you might also want to check out Inspection-JS, a plugin for IDEA that adds 70 or so JavaScript code inspections, so that errors in JavaScript are found and highlighted during editing.
It’s worth learning all the shortcut keys that IDEA offers too, since there is a staggering amount of additional functionality hidden just beneath the surface. Eg F2 will take you to the next highlighted error in the current file, CTRL-B to navigate to the declaration of the item under the cursor (eg dropTabs.css), CTRL-SHIFT-F7 to highlight all instances of the item under the cursor (or selected text), F3/shift-F3 to navigate between the highlighted instances, CTRL-W/CTRL-SHIFT-W to incrementally select/deselect code blocks, CTRL-SHIFT-UP/CTRL-SHIFT-DOWN to move the current line/selection up/down, …
Have fun!
Chris,
whoa… thanks for this. I use a lot of shortcuts, but wasn’t aware of any of those… off to look around.
Additionally, the IDE interface is entirely customizable. All of the elements in a file are color-coded. These colors can be customized to represent different types of objects or even display differently.