• NeXtMidas Design:
    • NeXtMidas was designed by Jeff Schoen who had been one of the primary developers of X-Midas.
      • NeXtMidas borrows a lot of the design features from X-Midas.
      • NeXtMidas incorporates the "lessons learned" from years of X-Midas development.
    • At times NeXtMidas sacrifices Object-Oriented design to be "X-Midas'ish".
      • This makes it easier for X-Midas users to transition to NeXtMidas.
      • This also facilitates interoperability with X-Midas.
    • Prior to the release of NeXtMidas 2.0.0 in May 2005, NeXtMidas was required to be Java 1.1-compatible (even though Java 5 had already been released).
      • This was a customer requirement due to continued use of Netscape 4.7 (which was used to run some NeXtMidas applets).
      • This restriction played a major role in many design decisions.
        • NeXtMidas had to use AWT rather than Swing.
        • NeXtMidas could not use Java's New-IO (NIO) package.
        • NeXtMidas could only use a subset of the Java Collections Framework (this is why NeXtMidas has its own Table and KeyVector classes).
    • New versions of NeXtMidas generally support Java versions that Oracle supports at the time of the NeXtMidas release. Usually this is the current version of Java plus two back versions.
      • As of September 2015, NeXtMidas 3.6.0 will run on...
        Java 8     <-- Current Version
        Java 7     <-- 1st Back Version
        Java 6     <-- 2nd Back Version
        
        e.g. When Java 9 is released, later versions of NeXtMidas will add support for it.
      • This policy parallels Oracle's policy for supported Java versions.
      • This gives the customer several years to upgrade systems before they need to upgrade NeXtMidas's single dependency, Java.