5 Things You Might Not Know About IntelliJ

Conductor R&D Team
Conductor R&D
Published in
4 min readNov 21, 2013

--

Most of you know that IntelliJ is a kick-ass Java editor. And most of you are right — it is! It kicks ass. But what many of you may not know about our beloved IDE is that it has much more to offer. At Conductor we’ve seen IntelliJ adoption grow from a single lone wolf developer into an army of mavericks. I think the reason for this is simple: IntelliJ does the work of many tools in one. There are many former Eclipse users among us who have discovered that keeping their workflow in a single context helps them stay focused. Some never knew what they were missing. Let’s take a journey down the stack, from data to display, and discover…

5 things you might not know about IntelliJ (that IntelliJ may know about you…)

1. IntelliJ knows your data…
IntelliJ has a nice set of database tools and support for executing SQL queries. You can configure a data source using the instructions here, or down here…

Once you’ve wired up your data source you can execute queries in the IDE like so…

IntelliJ Data Support

The autocomplete feature is particularly useful for lazy people like you and me!

2. IntelliJ knows your repository…
If you do a lot of branching or have a repository with many contributors it can be helpful to incorporate version control into your development environment. Whether you use git or Subversion, you can integrate your repository with the IntelliJ workspace using the instructions here.

I find the annotate feature to be particularly useful for troubleshooting…
VCS annotation
When you click on a line’s annotation you can see the commit message and files associated with the commit.

Another nice feature of IntelliJ’s version control integration is being able to see the revision history for your repository…

The ability to look at changelogs from multiple branches makes cherry-picking quick and easy.

3. IntelliJ knows your markup…
Lets face it, folks: Writing HTML is tiresome. IntelliJ takes some pain out of the process with a few nice autocomplete and navigation features.

I used to find surrounding large chunks of markup with opening and closing tags to be both tedious and terrifying at the same time…
HTML Autocomplete
Now I just press Command-Alt-T to wrap a tag around my code and I move on with my life.

I hate when I don’t know which element I’m in because my HTML spills out of the window…
HTML out-of-frame preview
No problem. I can find the opening tag for any closing tag that my cursor is on even if it’s outside of the window.

Sometimes you just want to know where to add some markup without having to parse the document line by line…

What better way to see the overall DOM structure than to collapse elements to get a larger perspective?

4. IntelliJ knows your JavaScript…
JavaScript is dynamic, which makes it flexible, but which also means you don’t always get the safety net of compile-time type checking and optimization as you code. So it can be easy to let errors and bad code slip through.

No worries! IntelliJ will parse and validate your JavaScript as you write it, to give you back some of that warm, fuzzy precompiled feeling…
JavaScript Autocomplete
I let the IDE keep track of my variable namespace and offer suggestions when I autocomplete. If I declare a variable that never gets used, IntelliJ will let me know I should delete it.

Once you’ve written some JavaScript, the JSHint feature in IntelliJ is a great way to validate your code before pushing it…
JSHint
JSHint will warn you about errors as well as violations of best practice, such as using the == operator instead of the === operator for comparison.

5. IntelliJ knows your CSS…
CSS has lots of rules, 🙄 almost too many to remember. I wish I were a walking CSS encyclopedia, but I need to free up the very limited space in my brain to use for other things (like blogging about CSS).

When it comes to CSS, I let IntelliJ do the talking with its handy CSS autocomplete feature…
CSS Autocomplete
CSS Autocomplete 2
Did you know that there are at least 22 valid declarations for the CSS display selector? Well, now you do.

It also helps to see the color you’re describing when you type a value for a color-related CSS property…
CSS color
CSS colors
I’ve even used the color display and my eyeballs to locate the CSS selector for a particular element.

Of course, this is by no means an exhaustive list of what IntelliJ knows how to do. There’s also great support in IntelliJ for Maven, Tomcat, Spring, Hibernate, Android, etc. Too many technologies to name! These are just a few of my favorite things. Check here for a full list of the latest features. As you can see, the good people at JetBrains have been working hard to make your life easier.

I don’t always explore several layers of the stack in one IDE simultaneously… but when I do, I use IntelliJ.

Stay thirsty, my friends…

--

--