[Biojava-l] Re: 1.0 release

hilmar.lapp@pharma.Novartis.com hilmar.lapp@pharma.Novartis.com
Fri, 30 Jun 2000 13:15:01 +0100



Anyways, as much as i'd hate to see an incompatible change like this
happen in (lets say) one of the java.* packages, i'm not sure whether we
should be so strict about BioJava. Absolutely prohibiting incompatible
changes in BioJava is probably a bit premature because it hinders what
is still a bit of a work-in-progress (definitely no offence intended,
Matthew!).

     I think you should be very strict about changing *interfaces*
     (implementations are not such a problem) in a public class library. While I
     have no problem with being flexible enough to allow for real improvements,
     I still think that introducing incompatibilities should always be justified
     by the significance of what you gain by doing so.

     Concerning the release, I think this is very good idea, because it makes
     statements that the core sequence interfaces are rock-solid (which was made
     only a few weeks ago) more official. To this end, I'd suggest to
     explicitely document which packages are supposed to be stable, and which
     may undergo incompatible changes in the near future (see, there's no real
     problem with instability as long as you know where to keep your fingers off
     if you need stability).

     I'll try to send a few pieces I've coded a couple of weeks ago. I migrated
     my own sequence analysis modules to delegating as much as possible to
     BioJava, not because it didn't work, but rather because I had to extend it
     anyway, and this was an opportunity to move code no-one here would be able
     to maintain (because programmers proficient in Java are still an exception,
     at least in the pharmaceutical industry) to code largely relying on
     BioJava. The whole experience showed that the BioJava core can be
     successfully integrated into existing and grown packages, making the source
     more concise, better structured, allowing you to focus on your specific
     needs, and the whole thing easier to maintain. It is useable, and in large
     parts very well designed. So, a big appreciation for the whole effort to
     Matthew and all others that were involved, and keep up the good work. There
     were a few bugs though, and I'll try to package them up within the next
     days in my freetime.

          Hilmar