Built for the Web
When I started writing what would become ChemWriter back in April 2007, I had some very specific ideas about how this structure editor should work. One priority was that ChemWriter must respect the Web as a unique software platform.
One example of ChemWriter's Web friendliness: its deployment footprint is just over 100K, enabling fast page loading. As a result, you can put ChemWriter right on your site's front page, without driving your users away with a slow page load.
Another example of how ChemWriter embraces the Web: no scary security dialogs. Any user would have the right (and in many cases the obligation) to avoid any site that shows a dialog indicating that their system is about to be exposed to a security risk. Other companies may not see it this way, but we do. Security matters a lot on the Web, and no user should have to sacrifice this precious commodity just to use a structure editor.
Goodbye Java Applets
ChemWriter is currently offered as a Java applet, and nearly every other structure editor that can be used within a browser is based on the same technology. I would maintain that applets are still useful, but they come with some significant downsides. These tradeoffs work against ChemWriter's purpose, which is to offer the very best chemical structure user experience for Web applications. The four most important limitations of applets in this context are:
- Plugin Dependency. Every user must have a functioning, properly-configured version of the Java plugin to draw structures. In some cases, this is not a simple matter. Even if the operating system supports it, most chemists are uncomfortable installing and configuring any software. Even if a chemist is willing and able to install/configure Java, their IT department may not let them. Even if neither consideration is a problem, things can still go wrong - resulting in additional support costs.
- Future Support. Sun Microsystems has been an extremely poor steward of its Java applet technology over the last decade, leaving developers on their own to work around numerous problems. Oracle, Sun's new owner, has said little about the future of applets, but given the low regard applets have among Web developers after years of neglect, I would not be at all surprised to find the entire technology discontinued by the database giant in the near future.
- LiveConnect Doesn't Work Reliably. LiveConnect allows objects created in a Java applet to be used within a browser and vice versa - in theory. In practice, support across browsers has been too patchy to do anything significant with this otherwise promising technology. The newest releases of the Java plugin address this issue, but it's too little, too late. The upshot: applets live in their own self-contained world within the browser, limiting the amount of control developers have in using them as first-class citizens of the rest of the page.
- Tablets: The Future of Laboratory Informatics. iPad forced many to re-consider the tablet as a viable computing platform. It seems very likely that the laboratory information systems of the future will be based on computers with a tablet form factor and operating system. Neither iPad, nor its closest competitor, Android, support applets, nor are they likely to ever support them. The success of the iPad, a platform that supports neither Java applets nor Flash, raises serious questions about the need for browser plugins going forward.
In addition to these applet drawbacks, the browser itself has advanced in sophistication by leaps and bounds over the last five years:
- Vector Graphics Now Work on All Browsers. One of the Web's best-kept secrets is Internet Explorer's longtime support for vector graphics in the form of VML. Taken together with the support by standards-compliant browsers for SVG, it's obvious that interactive graphics of the kind needed to create a structure editor are well within reach on every modern browser. Even better, the next version of Internet Explorer will directly support high performance SVG. A number of desktop-like user interface elements for the visualization and manipulation of complex data types in chemistry are not just feasible, but compelling.