I don’t think anyone in good faith can discount the navigation benefits of a modern IDE.  Yes my favorite is still written in C++, as is my favorite editor (put that vim and emacs shit down, son, it’s time to code…I KID), nothing beats speed when you just want to type code.  But JetBrains has shown how they can provide amazing IDE features for all kinds of code: C++, Python, Scala, etc. with their Java library stack.  Yes you pay a performance price and yes we’ve been burned by slow Java IDEs before, haven’t we, Eclipse… but JetBrains has really hit a critical mass of solid IDE functionality,  and I’m going to give it another good try.  Here are some rolling notes, made in cronological order…

  • the soggy keylag is KILLING me… but I love the navigation power… hrmph…
  • it’s not THAT laggy considering all it is doing… and my other dev environment is through a VM anyway (does that make it better or worse, not sure yet…) continuing…
  • on a VM, all hope is lost.  Even sublime is uselessly unusable.  Back to emacs.  Sad world.
  • The speed is now pretty good, I don’t know if it got everything indexed and it’s faster, or if I got used to it.  I think it’s faster!  Just in time for my open source license to expire… and JetBrains renewed it!  Yay, thanks guys.
  • Some things just take some adjustment.  Keymaps, panes, etc.  Also, don’t expect to copy/paste huge chunks of code as fast as you can in a dumb editor – it causes a ton of analysis to occur.  In a non-VM fairly-decent environment, CLion is humming along now.
  • CLion is undeniably faster than Sublime on my VM.  It is downright snappy at editing code compared to Sublime.  Happily shocked!
  • Uhoh… lots of clion lockups on laptop… doh, whoops, out of disk space.  Don’t let it happen!  🙂

Fun tips:

  • You can open a file into an existing clion session by running the startup script with a full path to the file, or do this:
    clion `pwd`/myfile.cpp
    or use the little bash script to do it for you:
    !/bin/bash
    # if $1 does not start with [/], prefix it with `pwd`
    MYFILE=$1
    if ! [[ $MYFILE =~ ^/ ]]; then MYFILE=`pwd`/$1; fi
    cd /home/m/apps/jetbrains/clion/bin
    ./clion.sh $MYFILE $2 $3 $4 $5 &
  • For the huge hirez monitors I have gotten addicted to using with i3, make sure you enable this (which is oddly disabled by default):

    File > Settings > Editor > General > [x] Change font size (zoom) with Ctrl+Mouse Wheel

  • CLion will auto-create projects from CMakeLists.txt, really nice.  It seems to auto-create Debug config using ./cmake-build-debug.  To create Release config too, go to:

    File > Settings > Build… > CMake > click +, it will auto-create Release (a little weird but it was what I needed)

Using Eclipse 3.4 for Java work on Windows, working without a hitch on our fairly large code base. It was actually easier to set up the project than with 3.3. The correct Java version was selected based on the code, the correct libraries were included – I had to do both of those steps manually for our code base using Eclipse 3.3.

Also using the CDT perspective for C++. Haven’t actually built or debugged anything yet, but it’s nice for browsing code. Upwards and onwards.

To get around this, just turn off “automatically select mirror” and you’ll get the nice full list of mirrors to select from. In my case, it was repeatedly selecting software-mirror.com, even though it was not up-to-date and kept failing. Switched to a Georgia Tech mirror and I was golden.

Window->Preferences->Install/Update->Automatically select mirrors-> uncheck
Help->Software Updates->Find and install...->Search for updates->Finish
(the mirror selection screen appears)

I’m not a fan of java, but I am a firm believer in using the right tool for the job. Eclipse CDT is turning out to be the IDE of choice these days. I’ll update this as I get deeper…