Idea really is that good!

Dear IntelliJ Idea,

I apologize for I have cheated on you. Since beginning my new job I’ve downloaded and started flirting with MyEclipse. With its wizards and perspectives and the Groovy and Maven2 plugins I felt like I didn’t need you anymore. I felt… estranged. However, I see you have grown up into a beautiful editor. Your features were always cleaner and they shine much more brightly now with your integrated Maven support and soon to come Groovy plugin. I only hope that you can forgive me for my trangressions as I never meant to harm you.

With Love and Sincerity,

Wassup party people???!!! Today’s a good day to code with Idea. I’ve had my own share of success stories with the product and now I’m seeing others are having just as much fun. The if you haven’t tried it yet, the editor can actually read your mind. Honestly. Listen here. If you write Java for a living pony up the $200-$300 for a license and trust me, it’s worth every penny! You’ll be paying me for the time-savings and productivity gains resulting in my little suggestion. Let me tell you a little more about this gem of an IDE. It has the best refactoring support out of any other Java editor on the planet. That pays big dividends right there because as a Java developer 90+ % of your time either is or should be spent refactoring code. The editor stands right next to you when you practice TDD/BDD holding your hand and lying down it’s jacket so you can cross over puddles. This is one of those features you have to actually try to understand/appreciate. For instance, start a unit test for any Java interface right now in your preferred non-Idea editor. Go ahead and start, I’ll wait. With Idea I have Live templates for vanilla JUnit, XSLTUnit tests, and more. A couple of keystrokes and I have my test case stubbed out for me. I don’t even notice the JUnit boiler plate stuff. I can’t even remember how to start a unit test without auto complete. Which imports do I use? What should I extend? Instead I go straight to the usage of my yet to be created interface. When I do TDD/BDD in Idea I’m only thinking about how I use my objects. I define entire interfaces without ever writing them. I know, big deal right? Interfaces are only ever a few lines of code anyway right? But still Idea writes through the interface and skeltonizes your Java implementation too so you never hafta:

public class MyWhatzitImpl implements MyWhatzit {
   * Implemented method
   public void doThingAMabob(String word, DooHickey fuzzyLumpkin) { /* ... */ }

   * Implemented method
   public Midget doSomeOtherThingAMabob(Widget gidget, Gadget fradget) { /* ... */ }

Also after it stubs something it always remembers to put your cursor in just the right spot to begin some serious creative damage. (In this context “creative damage” is a good thing just as bad means good, stupid means super fly, and off the hook means …well it means that you better replace the handset on your telephone Mr.! The buzzing signal is starting to drive me nuts!) If that’s not enough, consider this. Idea gives you intentions. These are little lightbulbs that popup in various places at random times. These light bulbs give you bright ideas like, “Hey dummy! That method signature isn’t really overriding the method in the super class!” and “Hi genius! Your if else statement is waaaaay too complicated for all but the super prodigy ultra uber geek class of citizens you belong to. Try simplifying it with the following snippet (snippet omitted for brevity) and maybe you’ll see that why it always evaluates to false.”

Really Idea is all too savvy for writing code. Here’s a clip from another blog that inspired today’s post:

look closely
Look closely and you’ll see that Idea is warning us of a classic error. I’m sure there are lots of Idea magic stories out there. If you have one or know someone who has been touched by Idea share your testimony in the rectangle below.

4 thoughts on “Idea really is that good!

  1. Cliff;

    Thanks for the post. I’m glad you have found some tools that fit your specific needs so well. As an informational comment, you no longer need to feel like you are “cheating” when using MyEclipse. 🙂 We recently released a connector for IntelliJ IDEA that allows you to use some of MyEclipse’s most popular features directly within IDEA, or as seperate, lightweight, standalone application. I would invite you to check it out and see if it gives you the best of both worlds. No more need to be mutually exclusive!

    Best wishes, and good luck!

    – Jens

  2. Jens,

    Good info. However the connector does not cover two of MyEclipse’s better plugins, GroovyJ and Mattisse. Also, I believe most of the extensions covered by the connector have equivalent or better rival features in Idea. Groovy support has always been better in Eclipse and Mattisse is just off the chains! That’s not to say the connector is bad. If someone is used to the XML or DBMS browsing features in Eclipse and newly converting over to Idea they could prove rather helpful. (I still believe Idea’s Ant/XML/XSL editors are far more consistent and thus easier to use than the Eclipse counterparts.) In all honesty I may use the connector since everyone else on my team is still with Eclipse and I’ll need to be versatile.

    Gimme a “Big Up” if ya’ feelin’ this,

  3. Hey wait! The image editor looks interesting! I don’t think Idea has anything like that. Uh-oh… d’oh!

    SNAPs and Use-Anywhere Connectors are available for Windows only.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s