I would like to share some thoughts with you on future directions of computing. Basically, I see the software industry relying heavily on Component Object Modeling, as successfully marketed by Microsoft. What this entails is the development of small modules which are linked at run-time and behave as an interconnect software module. Some of the greatest advantages of this approach are that it allows a component update to be easily implemented without having to update the entire executable. While I was working at Intergraph on their CAD/CAM product SolidEdge, I saw the advantages of this approach when development team embarked on setting a standard called OLE for Design and Modeling (www.dmac.org). SolidEdge concentrates on an assembly-centric modeler which allows the updates of various components. SolidEdge demonstrated the value of this approach by changing its underlying boolean engine from ACIS to ParaSolids going from release 3 to release 4. This became the start of a trend in the CAD industry where not only SolidEdge, but its competitor, SolidWorks, began to set standards which could be used by third parties (which developed analysis tools) to interact with the CAD modeler. Furthermore, users could extend the capabilities of the modeler by writing Visual Basic code which would control the modeler and perform automated tasks. One early example was to illustrate motion analysis by showing how the part would interfere with parts in an assembly. Microsoft supports the branching of these standards into industry specific solutions. I know that there are other COM standards in the banking industry.
Similarly, I believe that such standards can be set in the biotechnology industry by far reaching visionaries. Since so much progress has all ready been accomplished by the CAD industry, it is possible to build on top of all ready made progress because many of the ideas coincide. By publishing and exposing interfaces, we could set the standard in the biotech industry just as Microsoft has set the standard in document architecture.
One advantage OLE has over Java is that it is a binary interface standard which uses fast platform specific code without having to be byte code interpreted at run-time. As I learned during my tenure at Intergraph, one difficulty with COM is to slice up the problem into such an arrangement where the server lag does not render the approach unfeasible.
Please let me know of what you think of my ideas.