Hi Gary,

I appreciate your comments and have no interest in a "best language" war as well. There are certainly many others that are quite interested in that and we can leave it to them.

I guess my bottom line is that for me Java works very well. I do write compute intensive applications, often using the Colt library ( http://dsd.lbl.gov/~hoschek/colt/ ) and for my applications I find the performance very good. There are certainly circumstances where performance can suffer, but generally find that for my use these do not outweigh the benefits I find in using Java.

cheers,

Bruce


On May 12, 2005, at 12:00 PM, [EMAIL PROTECTED] wrote:

Just a couple of comments that you can take for whatever they are worth, and not intended to start a "best language" war:

I can well imagine that relatively direct Java access to Metakit databases would be welcomed by a significant number of Java developers.  I encourage this effort.  There is more than a small possibility that we may need to implement some applications in Java, and I would be very happy to be able to use Metakit in that event.  Java has its place, and it is a very large place in web environments and web-delivered applications.

However, in my experience, for seriously compute-intensive applications or for applications requiring computing over substantial amounts of data, it is not the implementation path of choice.  Performance is seriously lacking.  I could give a few examples, but (again in my experience with both internally developed applications and with some very good commercial applications implemented as native Java apps), this can be a serious show-stopper.

To characterize Java performance as "really very good" is, of course, a relative characterization.  It is very often "good enough" for its intended use, and it is very often good enough that a user of a particular app wouldn't notice the difference if it were reimplemented in C.  But for other applications, this will not be the case.  I assure you, it will not.

Your observation that many Metakit uses are via a scripting interface is correct but, in this context, not compelling .  It is not the speed of the *interfaces* that is the issue since very little time is spent in the interface code.  Even then (in the most common case for Python, for example) the underlying GUI code (in such packages as wxWidgets and PyQT) or database code (BSDDB or Metakit) is in C or C++.  So this really doesn't suggest anything about the usability of a Java implementation.  The whole idea of building these applications in scripting languages is to use that as a relatively thin layer to take advantage of the high-performance libraries that are used under the covers.  You would lose this with a pure Java implementation.

I've recently seen a beautifully designed and implemented system for interactive gene expression analysis written by a colleague.  He loves Java -- for GUI purposes.  The GUI is implemented in C# (which I take to be the (im)moral equivalent of Java), but all the work (statistical analysis, processing of data, graphing, etc.) is done in C.  He said he would not have even attempted to do that in Java since the performance of the resulting system would have rendered it unusable.  My concern is that a pure Java implementation of Metakit would have the same result -- and that would be a shame because it would limit its usability and use.  It just looks to me as though there is too much to lose and nothing obvious to gain.


<unknown.jpg><mime-attachment>_____________________________________________
Metakit mailing list - Metakit@equi4.com
http://www.equi4.com/mailman/listinfo/metakit

Bruce A. Johnson, President
One Moon Scientific, Inc.
839 Grant Ave.
Westfield, NJ 07090

Phone 908 517-5105
Fax 908 517-5107
Email [EMAIL PROTECTED]
Web www.onemoonscientific.com
_____________________________________________
Metakit mailing list  -  Metakit@equi4.com
http://www.equi4.com/mailman/listinfo/metakit

Reply via email to