In-Depth

Who's who in Java

In the year or so since the SunSoft division of Sun Microsystems Inc., Mountain View, Calif., brought out its Java Workshop, the software industry has rushed to embrace the new universal language of the Internet with a fervor rare even in the volatile world of business computing.

Companies with object-oriented products quickly reworked them to generate Java code. Visual environments have been reborn as visual Java environments. Small businesses have emerged to sell Java applets. Consultants are offering newly acquired Java skills to publishers, advertising agencies, retailers and manufacturers. Everywhere, businesses are rushing to join the Java juggernaut.

Meanwhile, programmers who were happily working in C++ a year ago are buying new Java textbooks, downloading Java tools from the Web and teaching themselves the new language. Even mighty Microsoft, with its own vision of the application development future, is acknowledging that Java may be too great a phenomenon to ignore. In August, Visual J++, Microsoft's entry into the competition with SunSoft's Java Workshop, began getting positive reviews. It is too early to say whether Microsoft will move in and dominate yet another market first developed by a rival, but the arrival of Visual J++ indicates that even the big chief in Redmond, Wash., is taking Java very seriously.

While finding ways to profit on the World-Wide Web remains an elusive goal for traditional publishers ranging from The New York Times to Playboy, it is a mistake to write off the Internet as an environment only for game vendors and E-mail junkies. Companies ranging from staid IBM to relatively young Internet giant Netscape Communications Corp., Mountain View, Calif., are all making strong bets on Java.

IBM over the past few months has regularly released new Java tools for accessing legacy business information on its mainframe computers, operating systems and databases. The IBM tools aim to make business critical mainframe data available via the Internet and corporate Intranets.

In late 1996, IBM began shipping a Java Gateway to enable end users to access CICS transaction systems. Having learned a few marketing tricks from Netscape and other Internet software providers, IBM has made available the Java Gateway for CICS as a free download through its Internet site. In addition, IBM is now shipping Net.Data, a Java-enabled gateway into corporate DB2 databases. Net.Data runs on AIX, Windows NT and OS/2 platforms.

At its Web site, seen by millions of Netscape Navigator users daily, Netscape offers Java developers its AppFoundry components based on Java and JavaScript. The collection of reusable business applications are available without charge. Netscape built the product line by simply collecting components developed by independent software vendors and systems integrators. The downloadable starter applications include: documented; commented source code; documentation; online help; and administrative functions. And Netscape says that because these application components are based on Netscape ONE technologies, such as Java, JavaScript and HTML, they can provide numerous Java applet-type benefits to developers. Such benefits include the ability to:

  • run on any platform;
  • work as a front end to most popular databases; and
  • be modified for changing requirements.

Industry giants SunSoft, Microsoft, IBM and Netscape are not alone in opening the pipelines to create a flood of Java products. Looking at software companies offering Java products and services, developers find a dizzying range and depth of business development tools, applications and services for a language few programmers had heard of two years ago.

Vendors utilizing Java

"We look at Java as basically an almost new computing environment, and we are moving into it the same way we all moved our products to the PC over the last 10 years," said Ralph Meyer, vice president of Technology for Adra Systems Inc., Chelmsford, Mass.

Adra, which develops product data management (PDM) software to manufacturers, is an example of a company in the midst of moving an established C++-based application to the Java world. Meyer is charged with developing a Java strategy for Adra's flagship product, Matrix, an object-oriented CAD/CAM parts database.

Meyer said that Adra is not embracing Java because it is the trendy language du jour, but rather to respond to the demands of its customers, which include: aerospace manufacturer TRW Inc., Cleveland; tractor maker John Deere & Company, Moline, Ill.; and electronics giant Motorola Inc., Schaumberg, Ill. These companies are looking to move access to mechanical parts databases to the Internet, so customers like the U.S. Department of Defense, can use Netscape Navigator to search and price replacement parts.

Adra's customers view Internet development as something Meyer called a less complex solution than the much touted, but rarely realized client/server promises. "As a matter of fact," he said, "we had customers who very quickly figured out that the lightest weight solution you can come up with today is a Web client. We started looking at was what we needed to do to get our product to run in that environment."

The speed with which Java was accepted caught even an early supporter like Meyer by surprise. "We started out in March [1996]," he recalled. "We first thought Java would be a year away. But the progress it had made from the first of the year to March convinced us that we needed it and that Java would be robust enough to deliver a real product."

What makes Java special

"What Java gives us is the ability to take Matrix and divide it up from what used to be a client/server application into a three-tier application," Meyer said. "One tier is running on the Web browser, the middle tier is running on the Web server, and the third tier is running on the old server where your database resides. We are moving Matrix to a Web-based platform. And Java today, from our perspective, is head-and-shoulders above any other way of doing that."

Meyer and his programmers started working with SunSoft's Java Developers Kit (JDK), but quickly moved to Café from Symantec Corp., Cupertino, Calif. The development staff at Adra found it superior to developing the old fashioned way, or in their case programming in C++.

In part, Meyer said, programmers are sold on Java because it works. "One of the nice things about Java from the developer's point of view is that once you get the program written it tends more often to work the first time than programs ever did in C++," he said. "There seems to be a lot less time spent debugging. So far we have had a very positive experience with Java. The things that are said about it being a more productive programming environment do appear to be true."

Innovative applet development

One reason observers cite for Java's rapid advance is that most programmers working with it love it, warts and all. For example, Dale Gass of Mortice Kern Systems Inc. (MKS), Waterloo, Ontario, Canada, sings its praises. Gass was a winner of the 1996 Java Cup International contest sponsored by Sun to promote the creation of innovative applets. Gass created his Java Cup winning applet in four days, first for an internal contest at MKS. Called CyberAgent, it provides home real estate marketers with the means to hold an open house on the Web.

 


CyberAgent from Mortice Kern Systems provides home real estate marketers with the means to hold an open house on the Web.

 

Gass built the real estate applet using the standard JDK, which he described as "more than adequate" for the project. While he does not like integrated development environments, he found Symantec's Café useful as a command line compiler, and maintains that itis faster than anything else for Java. Eschewing visual Java tools, Gass wrote all the code for his 2,000-line applet. "You get a lot more out of a line of code with Java," he said.

Gass insisted there is nothing unusual about learning Java and quickly becoming productive. "If you know C and C++, it's fairly easy to start writing in Java," he explained. "One of the harder things is to get into the object-oriented paradigm. A C programmer can probably write programs in Java within a day or two. But to properly design things, to do proper object-oriented design and analysis, which you need to do for larger applications, you need to familiarize yourself with object-oriented programming."

Gass hand-coded the page layout, writing the parameters, viewing the page and then did code adjustments. He would like a Java tool for laying out graphics in CyberAgent. He found the trial-and-error layout that came with using the JDK very frustrating, though he is still looking for a good visual layout tool.

One contender in this market is Builder Xcessory 4.0 from Integrated Computer Solutions Inc. (ICS) of Cambridge, Mass. Builder Xcessory addresses Gass' biggest complaint with JDK by allowing programmers to quickly design a graphical user interface for a Web application. It does, however, still require a developer to write the code that operates behind the screens.

Though Gass prefers to write code the old fashioned way, the current Holy Grail of Java are visual development tools that would allow non-programmers, such as graphic designers, to create Web sites without writing a line of Java code. This may be possible in the future, but no one expects it to put developers like Gass out of work.


Joe Keller


Opening the language to power users like graphic designers fits into SunSoft's Java marketing plans. "With a visual tool you will treat Java components like integrated circuits," said Joe Keller, SunSoft director of marketing development. "This will allow graphic designers, for example, to create Java programs."

Meanwhile, Keller said, "developers will continue to create more and more components. At some point someone has to understand the logic. You can build an application with building blocks, but you need someone to build those building blocks."

Thought on Java logic

Programmers at Thought Inc., San Francisco, concentrate on the logic of Java rather than the graphic glitz of the World-Wide Web. Among their creations is CinnaMoney, which refines the Java language so applications can make accurate financial and engineering calculations. With CinnaMoney, a financial institution doing calculations over the Internet using Java can keep track of and display trillions of yen or fractions of pennies accurately, according to Thought. Thought has several Java tools for developers including Nutmeg, a set of commercial class libraries available for the Java language, and VanillaSearch, a Unicode based, Perl-like regular expression grammar search class for Java.

ParcPlace-Digitalk Inc., a Sunnyvale, Calif., Smalltalk vendor, is picking up on SunSoft's building block idea with its Parts for Java visual development tool for building applets and applications. Tom Murphy, product marketing manager for ParcPlace-Digitalk, said the company used Smalltalk to build Parts, which incorporates a Smalltalk code generator that is used to generate Java code. "The main goals for this product were to get into the [Java] market quickly and to leverage the existing technology we had."

Parts for Java is supposed to provide a means for laying out the graphics, and to generate the Java code. "Java is still a fairly complex language," Murphy said. "It's not as hard as C++, but it is not as easy as Visual Basic. But the potential Java audience is much broader than for C++. We want to allow as wide an audience as possible to learn Java and to make use of Java. So we focused on how to make Java easy to use and easy to learn.

Java in business

Part of the early Java user base is the next generation of marketing and advertising agencies. Agency.com in New York City's self-styled Silicon Alley, for example, points to the Internet as the wave of the future in advertising and commerce. Agency.com creates Java-based interactive Web, Internet and Intranet applications for clients.

The two-year-old agency employs the usual marketing specialists and account managers, along with more than 40 Web interface designers, illustrators, digitizing specialists, Perl/CGI programmers, Unix administrators and database management programmers. Agency.com is currently developing Java Workshop-based Web sites that will push interactivity on the Internet by providing users with information based on their input.

Another Java creative agency is Art Technology Group Inc. (ATG), Boston, a media, technology and design firm. ATG has built applications for clients including MCI, Apple Computer, Chiat/Day Advertising, MIT Media Lab, Harvard Business School and MovieFone Inc.

For MovieFone, ATG built a nationwide Web-based movie schedule and ticket system, which allows users to select movie previews, find out when and where a movie is playing, and purchase tickets in advance for the show they want to see.

ATG has capitalized on its consulting experience with Java-based applications to create its own product, Dynamo 2, a Java-based Internet application engine for prototyping, building and deploying database-driven Web applications. According to ATG, Dynamo 2 is designed for corporations, Internet service providers, or online services, as well as large-scale content publishers who are developing complex Web applications requiring tight integration with enterprise systems.

Examples of the range of Java applications under development using ATG's Dynamo 2 include:

  • An Internet-based electronic commerce application for Stream International to be used for the sale, distribution and support of software;

  • A communications and collaboration for NTT Data, a top Japanese provider of Internet access in Japan; and

  • A network-based educational system for the Harvard Business School, that includes a sophisticated, content-management framework.

As we open Year II of the Java Revolution, its claim to be a universal programming language appears to be more true than even the visionaries at Sun dreamed possible. Beyond Java's much touted ability to produce applications that can run across IBM compatible PCs, Macs and Unix-based workstations, it appears to be the first computer language that is usable by seasoned programmers working on the logic level and by graphic designers and Webmasters working at the component level. Java developers will create original applets, and Java users will use these building blocks to construct Web sites and applications. In this way, Java may be the development environment for business computing that brings it all together.