Lee Gomes, writing in Monday's Wall Street Journal, claims that "Jini flopped" because Jini-enabled consumer devices are not currently "found just about everywhere." While it's true that Jini-enabled devices have not yet proliferated, it's wrong to conclude that Jini has flopped.
Jini, a general-purpose network infrastructure, helps developers deal with such complex distributed-systems challenges as failure, change, and scalability. At its most basic, Jini technology enables services on the network to find and use each other.
Jini is not just about devices, and saying so is akin to saying that Java is just about applets. When Sun Microsystems first introduced Java to the world in 1995, the company demonstrated it by showing animated applets running on Webpages. As a result, many people erroneously believed Java meant applets.
Yet today Java powers a world far vaster than mere applets, a world that comprises many of the Internet's critical systems, along with next-generation mobile phones and handheld devices. Indeed, just because Java applets have not succeeded in a big way in no way means Java has flopped.
Likewise, when Sun first introduced Jini in 1999, it demonstrated the technology by showing consumer devices spontaneously providing and consuming each other's services. While it's true that spontaneous networking of consumer devices represents one Jini application, Jini technology is far broader than just consumer devices. For example, Jini helps PersonalGenie Inc. use cognitive modeling to study consumer preferences; and Valaran uses Jini for application integration, primarily in telecommunications.
Two weeks ago, Mr. Gomes interviewed me for his article. Unfortunately, in the finished product, he mischaracterized my statements. Mr. Gomes wrote:
Bill Venners, an independent software developer well-known in the small Jini community, says Jini was a bust in consumer devices because it was a bulky software system that required a huge load of related software to work -- far more than can fit onto most consumer devices outside of PCs.
During our interview, I did suggest several reasons why Jini has not yet appeared on a multitude of consumer devices. I stated that Jini client software doesn't currently fit on most consumer devices because of resource constraints such as limited memory or battery life. The current incarnation of Jini sits on top of the Java 2 Platform, Standard Edition (J2SE) -- a platform targeted at desktop systems, not consumer devices. For resource-constrained devices to participate in Jini networks, they require something like the Surrogate architecture currently being defined by the Jini community.
As we spoke, I mentioned to Mr. Gomes that less than two months prior I had seen a GemPlus International SA SmartCard, an extremely resource-constrained device the size of a credit card, running Jini using the Surrogate architecture. I also mentioned that an RMI profile being developed for the Java 2 Platform, Micro Edition (J2ME), which is targeted at consumer devices, will enable Jini to run on smaller devices without a Surrogate approach.
Unfortunately, this discussion was transformed into the passage cited above. In our interview, I never uttered words like "bust," "bulky software system," "bloated," or "huge load of related software." Those are Mr. Gomes' words, not mine.
Indeed, despite a dearth of Jini-enabled consumer devices on the market, Jini is alive and well. According to Frank Romano, the group marketing manager in Sun's Jini Technology Group, there are more than 80,000 Jini developers and more than 60 commercial Jini licensees shipping products today.
Moreover, as a consultant I have helped clients incorporate Jini into their products. From the beginning, I have been active in the Jini community, which includes researchers, product developers, and technologists from all over the world. The community is a group of people who are vibrant, stimulating, and just plain fun. In the Jini community we are quietly and steadily working to move Jini technology forward, and we will continue to do so.
(Bill Venners has been writing software professionally for 14 years. Based in Silicon Valley, he provides software consulting and training services at Artima Software. He is the author of Inside the Java 2 Virtual Machine (Enterprise Computing, October 1999) and creator of Artima.com, a resource for Java and Jini developers. He is charter member of the Jini Community Technical Oversight Commitee, and led the Jini Service UI project, which defined a standard way to attach user interfaces to Jini services.)