Archives ||  About Us ||  Advertise ||  Feedback ||  Subscribe-
 Home > In Person
 Print Friendly Page ||  Email this story
Java on the move

Java-driven technologies are widely adopted across enterprises and the World Wide Web. Dale E. Ferrario, Director, Product Engineering, Java Software, the man at the helm of the development activity at Sun Microsystems, talks about the role of Java-driven technologies to provide development platforms in future and means to extend enterprise network services to your hands through small devices. by Soutiman Das Gupta

“Enterprises want to extend its network applications to mobile devices so that its personnel can access information on the move. J2ME makes this possible”

What are the benefits of Java-driven technologies for enterprises?
The biggest benefit is that applications built on the Java platform will run across any platform. It is difficult to build an application that can run across diverse platforms without using Java. So an enterprise can have multiple OSs and port its applications easily between them.

There are many proprietary solutions available in the market but they do not let you build a common set of interfaces. You have to decide on a particular platform, build applications on that platform, and use a fixed set of interfaces. If you build applications on another platform you have to use a different set of interfaces. Java lets you agree on a set of interfaces that will be available across all platforms. Java lets you scale from small devices like smart cards all the way up to large enterprise servers. You can use your expertise on any of the devices to build applications.

How has the Java platform evolved into its present form?
I'll get back a few years to 1996 which was the year when Java was invented. We had many ideas regarding Java applications and there were a number of attempts to figure out the problems it could solve. But we were not sure where the technology would be very successful. The start however was good and we began to look at interoperability between small devices as a beginning.

We figured that the biggest problem that Java solved was that it allowed you to write an application that ran on different platforms. The failure of applications and devices to interoperate has always been a pressing issue among enterprises. Java was the immediate solution. And to complement these developments the Web turned out to be a very big opportunity for Java-based technologies.

We licensed Java to as many companies that offered systems implementations as we could. These companies provided Java support in all its implementations. This enabled Java to be available across diverse industries and platforms. Browsers became very popular with the advent of the World Wide Web and we licensed to Microsoft and Netscape to make sure that Java was there in the browser. It allowed enterprises to write applications that run on any platform and create applets that run on different browsers.

The next step was to make Java ready for the enterprise. J2EE (Java 2 Platform, Enterprise Edition) was formed as a result of the development initiatives that followed. J2EE provided the interfaces needed by an organization to deliver enterprise applications. The recent version 1.3.1 has performance enhancements like better integration with XML and support for legacy network systems.

Intelligent handheld mobile devices saw a very large growth in the last 18 months. And enterprises wanted to tie these devices into its networks. Companies wanted to extend its applications to small mobile devices so that its personnel are able to access information when on the move. So it was time to provide Java for small devices. We have recently launched J2ME (Java 2 Platform, Micro Edition) to address this need.

How will Java stand in competition with C#?
Java has multiple utilities. Java is a language as well as a platform. Java and C# (C# is developed by Microsoft) are similar because they are languages. But I don't think that the competition is between C# and Java. The competition is really between J2EE and .NET. If you want to develop on a core platform you can use C# and VB.NET (Visual Basic .NET) which are only the language you write your program in. What really matters is how the platforms work in comparison to the other.

A lot of the C# language has been derived from Java. But here's something interesting to note. There have been computer languages for many years. As we continue to build more powerful platforms the languages move to higher levels. For example, the C programming language was very advanced for its time. Along came C++ which allowed more flexibility than C. But there were many problems with C and C++ which generated errors that hurt. So Java was the next step to define an object-oriented programming language that allowed you to quickly write programs that are less likely to fail.

Although C# picked up a lot of the ideas from Java it's just a different implementation of the programming language. If you read the two and compare them, they do very similar things. If you also compare C and Pascal (an older programming language) you will see a lot of similarities. So languages have evolved. Java was an implementation of a language which is continuously evolving as well. The C# language has used the concepts from Java and created another version. If you follow the history of Microsoft, the company takes a standard, extends it, and makes it proprietary. And I think that's what they've actually done with C#.

How does the development team decide on interfaces for Java platforms?
There is an initiative called the JCP (Java Community Process) Program. The initiative invites other companies in the industry like IBM, BEA, and Oracle and many Java developers worldwide to sign up as members of the JCP program. The members propose interfaces that can become a part of the platform after they're passed by a vote. Anyone can join the JCP and have a part in its process.

The work of the Java community under the JCP program's procedures helps to ensure Java's standard of stability and cross-platform compatibility. So the direction that Java will take is completely defined by the industry and users. This provides better acceptability for Java-driven technologies. And within our team of 350 Java software developers there are separate groups working on J2EE, J2SE (Java 2 Platform, Standard Edition), and J2ME.

How will J2ME help enterprises to extend its applications?
J2ME will enable enterprises to offer the applications that run on its servers to users that have handheld devices. This is a very important utility for the IT Manager of today and tomorrow. The manager can provide access to its ERP, Data Warehouse, and various accounting applications for any number of users. Most enterprises have already developed a server back end with J2EE and other Java-driven technologies. J2ME will interface with the enterprise backend using a set of APIs (Application Program Interfaces) and deliver applications.

In the next year, more cellular telephones will ship worldwide than PCs. This presents a huge opportunity. We have over the last year announced relationships with several handset manufacturers and cellular telephone companies. Around 95 percent of the handset manufacturers worldwide have agreed to deliver Java on its phones. Enterprises can now build applications that may be delivered to these devices.

What are the hurdles to the development and widespread use of J2EE and J2ME?
J2EE did not face any hurdles, which is evident since it is so widely used now. The driving factor has been that CTOs do not want to be locked with a single solution. If a solution has quality or scalability problems the CTO wants to switch easily to a different solution. J2EE offers interfaces which are consistent across various vendors and platforms. That's a tremendous value. The CTO can tell the developers that they are not allowed to use interfaces which are not open standards. So the CTO can use applications that keep working regardless of changes in the network. This protects the investment the company has made in the network.

J2ME has a few challenges. The availability of devices that will deliver J2ME depends on the state of the market and the country you are in. In some countries the handset makers control the market while in others the service provider controls the market. The challenge is to get all the manufacturers and service providers to deliver the common platform. Most of them have signed agreements to deliver the platform but it's important that these companies are able to identify the potential revenue income paths.

Soutiman Das Gupta can be reached at

- <Back to Top>-  

© Copyright 2001: Indian Express Group (Mumbai, India). All rights reserved throughout the world. This entire site is compiled in Mumbai by The Business Publications Division of the Indian Express Group of Newspapers. Site managed by BPD