Has Microsoft created an "open" technology in Active Server Pages?
Active Server Pages or JavaServer Pages -- is there a better choice?
Is it possible that another Microsoft technology, Active Server Pages (ASP), has emerged as the standard for server-side Web server programming? For the supporters, the answer is a comfortable yes. For the naysayers, the answer is a resounding no. Here, we try to reveal a glimpse of the possible truth for you to decide. (1,700 words)
As the technology has matured on the Microsoft Internet Information Server platform, Microsoft has enhanced the product for performance and support of objects developed in Java, Visual Basic, and C++. Of course, the catch was that to run this technology you needed a Windows NT platform. Feedback from sources like Netcraft (http://www.netcraft.com/survey) make it clear that the majority of the Web runs Unix solutions. Netcraft's Web server survey shows Apache dominating the field, with just under 50 percent of the servers on the Internet. Microsoft trails in the dust at 22.7 percent, and Netscape et al fill out the rest. Microsoft's ASP technology draws so much animosity in part because it is seen as proprietary and isolated in its application.
But another trend has also emerged. The rapid pace of Internet development has forced developers to find better ways to prototype new applications and proof-of-concepts. This demand for rapid turnaround on projects has been growing. Developers have been looking for something more effective than client-side development, and more effective than existing server-side scripting and programming tools like Perl. At first, many developers turned to Windows NT and ASP to get the proof-of-concept and system designs completed in the fast turnaround time demanded by their clients and users. But then came the dilemma: The application, if it was to be migrated to a production phase, needed to be ported to Unix for the reliability and performance Unix represents.
A source that wished to remain anonymous has a large Sun-based Web service, and began developing applications under Windows NT for two reasons. The company's clients were bringing prototyped solutions to them on that platform, and that platform made it easy to get the proof-of-concept and site designs done quickly and effectively. But when the application proved itself, it then needed to be ported to Solaris to take advantage of Unix reliability.
Then, Chili!Soft contacted this developer with the intriguing idea that it was possible to port Windows NT ASP applications, with no rewrite of the ASP code, over to a Solaris server running Netscape FastTrack. The door was opened to a new development model. Early testing with the product revealed that Chili!Soft has gotten off to a good start -- many of the tested applications have ported as expected. While the ASP technology transfers well, any calls to COM objects require a port to a functionally-equivalent object on the Solaris platform.
Before we go into more details about ASP technology and what Chili!Soft has done to make ASP a cross-platform solution, let's look at what was missing on the Java side. Sun has been slow to bring out a competitive solution based on Java. When the large Sun-based Web developer quoted earlier was asked about the forthcoming release of JavaServer Pages, he was unfamiliar with it. The same response came from several other development shops interviewed for this article. Dan Pumphrey, system administrator for Access Indiana Information Network, had not investigated JavaServer Pages either. He indicated that because his shop is a heavy Java user, they would certainly use JavaServer Pages -- but the cross-platform support of the Chili!Soft ASP product would open the door to making an application-by-application decision on the best combination of technology to develop and deploy.
Sun has approached server-side scripting with the same Java ideal -- the need for an open standard for all to follow. JavaServer Pages (JSP) specifications are undergoing review in the public forum of the Web. The last revision (.91) of the specification was removed from the Web on June 18, 1998, and is undergoing an update to include the recommended changes. Sun is aggressively working towards a 1.0 release specification to bring the technology out as a production tool for general use.
JavaServer Pages will be supported on all platforms that run the Java Development Kit (JDK), which would include the Microsoft Internet Information Server. To this end, it appears that JavaServer Pages will be the cross-platform solution that the industry is looking for -- but is this actually true?
JSP or ASP? Where should you go?
To answer that question, it is necessary to look at the robustness of the two solutions, ASP and JSP. The fact that both will now run on other platforms doesn't really paint an accurate picture. For example, JSP provides support for Java directly, and for other languages only when third-party developers include that support in their implementation of the JavaServer Pages. Chili!Soft, following Microsoft's lead, provides support for Java, Visual Basic, C++, and any other language that can be accessed as a COM object. Yes, this support for a COM object under Unix does require a port of that object, but the performance and functionality gains that are derived from a native piece of code on the host server far outweigh the issues of developing modules in this manner.
JavaServer Pages will debut on a wide variety of systems and servers, as it is incorporated into the Java offerings of each unique platform. This certainly gives Sun a lead in the market over the Chili!Soft offering, but the timing may be moot as it appears that the 1.0 version of JavaServer Pages may hit the streets at about the same time as additional platform support from Chili!Soft.
Chili!Soft has entered the market with a technology that is intended to extend the range of systems that Microsoft's ASP technology can operate, and this certainly expands the reach of the large number of Microsoft developers who create solutions using ASP. Mickey Friedman, vice president of marketing at Chili!Soft, has confirmed that development of the Chili!Soft ASP will extend beyond the Netscape FastTrack server to include the Internet-leader Apache server platform by year end, and a number of platforms following that. Chili!Soft for Netscape FastTrack 3.0.1 and Netscape Enterprise 3.5.1 for Solaris 2.5 and 2.6 is currently in beta. (Update: Chili!Soft announced on August 17 that ASP will be available for IBM's S/390 and RS/6000 during the fourth quarter this year.)
Despite the argument that a Java programmer is a highly-mobile and platform-independent sort of person, this type of mobility seemingly means little in the world of existing programming shops. There are a significant number of Visual Basic programmers who can step into an ASP arena with little training, while there are fewer people who can make the transition into the Java environment. Sun claims that JavaServer Pages will not require a Java programmer to develop the code -- but the heart of the JavaServer Pages environment is Java, and it will require knowledge of Java to effectively harness the power of a server-side script technology.
Going further into the technology, the upcoming release of JavaServer Pages 1.0 promises support for JavaBeans, through the collaborative efforts of Sun and IBM. JavaBeans availability would be a powerful extension to server-side components. But Chili!Soft is right on their heels with its announcement that its ASP product will support JavaBeans late this year -- this will push the timing of the JavaServer Pages release.
A clear choice?
No, there really isn't a clear choice at this time. Chili!Soft looks very promising, based on reports we're hearing from its beta sites. Certainly, the rationale -- a solid path for Microsoft ASP-based solutions to move onto the more robust and reliable Unix platforms -- is a compelling argument for Chili!Soft's product.
On the other side of the coin, JavaServer Pages are the natural extension for those organizations committed to and moving down the path of Java-centricity. If Java is the core foundation for development, maintaining that focus makes all the sense in the world.
The consensus opinion appears to be one of fitting the tool to the task. Each circumstance can sway the decision in either direction. To help you in your effort to find your personal truth in this issue, take a look at the resources listed below. Let the smoke clear a bit from the initial releases of these technologies so that you can more clearly decide which direction to take.
About the author
Robert E. Lee is a technology consultant, speaker, columnist, and author who has been in the computer industry for 20 years. He specializes in networking, Internet strategies, systems analysis, and design activities, and has participated in the Windows NT and Internet Information Server betas since their respective beginnings. His most recent features for SunWorld were "Caching to relieve bandwidth congestion," "Cobol programming in the Java world," and "Untangling network wiring."
If you have technical problems with this magazine, contact firstname.lastname@example.org