WebObjects Leads the Way for Application Servers
When the Web began, it was seen as a publishing medium, not a vast electronic marketplace. Hypertext Markup Language (HTML), which allowed companies to put their documents online, could handle this task, working in much the same way as earlier attempts to tag information for digital dissemination.
But HTML is limited to rudimentary display and formatting. It can't connect to legacy data sources or serve as a transaction engine for e-commerce. To add these features, a new kind of Web platform and development tool has emerged: the application server.
Application servers sit between a Web server and the back-end database, integrating data from disparate sources into a unified user interface that is sent to the Web server. The key to a successful application server is the ability to talk to just about any database or source of information and to present it using whatever technology--HTML, Java, QuickTime or Flash--is appropriate.
All application servers share several key attributes: cross-platform compatibility, a componentized architecture and the ability to separate business logic from presentation logic. These capabilities suit the development of transactional sites, including online storefronts, exchanges and auctions.
"The key advantage is that they are designed to handle complex problems," says Peter Propp, formerly worldwide business development manager of WebSphere software at IBM and now managing director for business strategies at Digital Idea, an Internet consulting firm in Westport, Conn.
One of the earliest products to address the need for a truly sophisticated Web development environment was WebObjects, developed in 1995 by Next Software. It provides a data access layer, a set of object-oriented frameworks that promote development of reusable components and a cross-platform development environment.
This software focuses on delivering structured data over the Internet. Originally its data access layer dealt only with data in Oracle, Sybase or Microsoft ODBC-compliant databases. This capability has been expanded to include XML, directory services and other sources of structured data. The application server now has load-balancing and fault-tolerance capabilities that support multithreaded applications that can run across multiple CPUs. WebObjects can be deployed on Windows NT, Sun Solaris, HP-UX or Mac OS X server.
Apple inherited the technology when it acquired Next in 1996. Next had targeted WebObjects at the construction of custom applications that extract data from legacy systems, relying on frameworks and reusable code in the process.
Now in version 4.5, WebObjects has been proven over the years by large government agencies, the military and Fortune 1,000 corporations. Because of a low initial demand for enterprise orientation with the Macintosh customer base, Apple recently reduced the price for the WebObjects developer tools from $50,000 to $699. The lower price includes a license that allows unlimited usage on a single server.
This strategy makes sense now that businesses, no matter how small, are finding they must Web-enable their processes to compete. "All of our customers, whether they are schools, creative professionals or small businesses, want to put rich content on the Internet," claims Ernest Prabhakar, WebObjects product marketing manager at Apple Computer in Cupertino, Calif.
In late 2000, Apple will meet the competition head-on with WebObjects 5 for Java, a version of the product written entirely in Java. This version also will support Enterprise Java Beans for interoperability and JDBC for universal database connectivity. In addition, WebObjects 5 will be the first version that can be deployed on mainstream Macintosh computers running the consumer version of Mac OS X when it ships in the same time frame.
Apple also has announced iServices, a package of support, training and consulting services behind WebObjects deployment. "We want people to be able to do with these mass-market technologies what they once did with high-priced specialty technologies," says Prabhakar.
Casting a Wider Net
One such customer is GoFish of Portland, Maine, an online business-to-business exchange that connects buyers and sellers of seafood. CTO Peter Murray, himself a Next alumnus, considered and rejected a number of Web development tools before coming back to the software he knew. He looked at tools from RadX, which its developer describes as an exchange-in-a-box, and the more mainstream Allaire ColdFusion, but he says they lacked features, maturity and the ability to scale to a large volume of transactions.
Another package of platform and tools that made sense for Murray's application was Sun's Java 2 Enterprise Edition and products, such as IBM WebSphere, that are based on them. But Murray felt that Java standards were changing too rapidly and worried that he wouldn't be able to find experienced consultants.
"There are consultants that have years of experience with the WebObjects frameworks," he says. "We felt that its pure object-oriented model was something that we could leverage in this rapid innovation environment."
Using the frameworks, GoFish put online a sophisticated site with distributed authorship capabilities and the ability to support negotiated transactions in just two-and-a-half months. These frameworks also allow GoFish to release a new version of its site with new functions every two weeks.
Murray cautions that it is difficult to find programmers that are already up to speed with WebObjects and argues that those who have the skills are well worth the salaries they command. "WebObjects tends to attract the kind of people that understand the elegance of the architecture," he says. "This is a real programming tool, not just a scripting language, so you have to pay attention to both architecture and design."