Note: this post was updated in light of discussion on the Advanced Installer forum.

At work, we use Advanced Installer to create easy-to-use Windows installers for internal and external customers. I wrote a short Ant script for building the installer to save time and minimize mistakes.

If you use Advanced Installer with your Java projects, be sure to read my post on using the Advanced Installer licensing feature within a Java application.

Here is a partial Ant script for executing Advanced Installer builds. It’s not fancy, but it gets the job done. Continue reading »

 

Following Java Posse Roundup 2008, Bruce Eckel wrote an excellent article outlining six things that you should test for when hiring someone.  It contains the collective wisdom of the conference attendees, as articulated by Bruce, which I could not hope to improve upon.

The original points are numbered, one through six, but are not listed in any particular order.  Were I to give them an order based on importance, they would be arranged as follows.

  1. Are you toxic?
  2. Can you learn?  Can you solve problems?
  3. Critical thinking.  Can you change?
  4. Technical knowledge.

Ok, I cheated; it’s hard to put them in an absolute order.  All are important and relate to each other in some manner.  All software developers — and managers thereof — should read the original!

 

One month ago I wrote about the benefits of using Java’s built-in garbage collection logging.  With it, you can find answers to important important questions such as “how much memory is my app using” and “how much time is being spent doing garbage collection.”

There is, of course, a hitch: for any non-trivial application or problem, you will be quickly buried by a mountainous log file.  The longer your application runs, the larger the log file.  It keeps growing, and growing, and…

GCViewer

GCViewer

What will you do?  Write a second Java app, one that parses the log file — attempt a homegrown analysis tool?  No!  Instead, I suggest you use GCViewer, a free open-source tool for visualizing the Java gc log file.

GCViewer helps you get a quick and comprehensive look at how your application is behaving.  Things like total heap vs. heap used and full GC events become very apparent.  Useful statistics such as time spent during GC are calculated for your convenience.

GCViewer is created by tagtraum industries and is available under an LGPL license.

 

You may be surprised to learn Ant requires GCJ when installed through Synaptic or apt on Ubuntu.  GCJ is GNU’s Java compiler.  When you’re using Sun’s JDK and compiler, GCJ can get in the way — at worst it creates conflicts; at best it causes confusion.

Here’s how I installed Ant on Ubuntu without GCJ. Continue reading »

© 2011 And now here's something… Suffusion theme by Sayontan Sinha