[Biojava-l] Java Resource Management [a semi troll...]

Phillip Lord p.lord at russet.org.uk
Mon Feb 10 14:08:12 EST 2003

  Ewan> For guys who do run Java as part of their production code in
  Ewan> bioinformatics,

  Ewan> (a) do you have versioning problems over time?

Versioning with Java is a pain in the ass. We seem to get repeated
problems with different versions both in terms of point releases, and
versions on different OS'es.

There is no intrinsic reason relating to java, why this should be the
case, at least not as far as I can see. It just seems to happen. Also
libraries seem to expand massively and in duplicate, and often in
multiple versions. Part of the problem here is that (for redhat users
anyway) the RPM's they ship do not advertise their dependencies
correctly, and there is no standard installation scheme. If Sun took
on board the work done by jpackage.org things would be much
better. Sadly building jpackage RPM's for the JDK is a pain, and
jpackage can not release these directly as binaries because of silly
licensing issues.

  Ewan> (b) are there resource problems or not?

  Ewan> If so, how do you deal with these?

I have found this to be much less of an issue, or rather, I have found
this to be much less of an issue as time has gone on. You can set up a
swing GUI app now, without flooring the OS (which wasn't the case when
I started using swing in 1.2 beta days). And you can do reasonable
amounts of computation. The problem comes if you try and use Java like
perl. Setting up a JVM is expensive. If you have lots of little
scripts, as is common with perl, and run each in its own JVM you are
going to have problems. 

My experience with perl (using bioperl, and the go database API)
was that running a database, and blast at the same time, took up far
more resource than perl did. If I had used java instead, then this
would still have been the case. I only used perl because there was no
replacement for go API. Perl is a nice language in some ways, but I
just hate coding in a language whose syntax looks like Snoopy



More information about the Biojava-l mailing list