I’m in the unaccustomed position of spending all my work time either writing software or in meetings about it. The current project is conventional big-system server-side Java. That’s not a landscape that anyone’s gonna wax lyrical over, but boy, have the tools ever come along while I was off Androiding and Go-ing and Rubying.

IntelliJ and Git work together smooth as silk; I reflexively drop into a shell now & then to reassure myself with a “git status” but near as I can tell the IDE is just Doing The Right Thing.

Also, YourKit shreds through sluggish code, shining the ruthless light of truth on that bad method. The built-in VisualVM profiler is a stinking turd though; I wasted a half-day failing to get it to do anything useful. I grabbed a YourKit eval because I was in a hurry; next time I need a profiler I guess they’ll get some money from me.

I even dropped into a debugger the other day for the first time in probably ten years. When I busted unit test #29 of 32, all of a sudden it was easier to set a breakpoint and peek at a variable than to start typing Log.whatever(). That IntelliJ debugger is pretty top-notch, you can do pretty well everything you need to with F7, F8, and F9. Three-finger problem-solving, you gotta love it.

At this point all you Java lifers are rolling your eyes because OF COURSE. Hey, I still miss Go’s channels and Ruby’s Enumerable and anything’s REPL. But life in the mainstream really isn’t that terrible.


Comment feed for ongoing:Comments feed

From: Marshall Pierce (Jan 29 2015, at 07:38)

Groovy's groovysh may be the repl you're looking for; there are others as well (beanshell, scala's shell, etc). I even wrote a little thingy to let you ssh into your jvm and get a groovysh: https://github.com/palominolabs/jvm-ssh-groovy-shell

As far as Enumerable / channels go, some mixture of java 8's streams, RxJava, and Guava may address the collection / communication needs you have.


From: David Taylor (Jan 30 2015, at 10:27)

I've been using Intellij IDEA for around 10 years in one form or another.

Their Community edition is free and probably one of the best bargains on the Web.

Highly recommended!


From: Justin (Feb 02 2015, at 05:55)

That's interesting. Over the last few years I've been opening YourKit less frequently in favor of just using visualvm. For our large Java/Swing project this was just a lot more convenient most of the time, because you could choose to profile an anomaly noticed while working on something else without having to start the app for profiling. In fact I mostly used YourKit to analyze memory dump files saved from visualvm.


From: Nobody (Apr 04 2015, at 15:27)

You should try idea's evaluate expression ad well.


author · Dad
colophon · rights
picture of the day
January 28, 2015
· Technology (90 fragments)
· · Coding (98 more)

By .

The opinions expressed here
are my own, and no other party
necessarily agrees with them.

A full disclosure of my
professional interests is
on the author page.

I’m on Mastodon!