"The software revolution hasn't begun yet but it will soon." David Gelernter, "Mirror Worlds" (1991).
A development project disclosed by Sun Microsystems Inc. last month called Jini comes with three wishes, but unlike those bestowed by the genies of legend, Sun's wishes are not guaranteed.
The first wish was granted the day Sun publicised that it was tying several of its Java development projects into a new architecture called Jini: the company's stock price shot up from just over US$46 that Wednesday morning to close out the next day near $50.
Securities firm Merrill Lynch & Co., in a report the following week, explained why, saying that Jini "should further Java's adoption" which is finding its way into ever more large companies' information networks. Merrill maintained its long term "buy" recommendation on Sun stock.
Though Sun, predominately a seller of high-end workstations and servers, currently garners little revenue directly from Java, the programming language has helped drive the company's share price to record levels in recent years. Sun is being rewarded today for the promise that Java in future will help grow the overall market for computers and in turn, demand for Sun's hardware, according to the Merrill report.
Stock price magic aside, and more just an interesting project from Sun's labs, the Jini development, draws on years of research into distributed systems, which aspire to blend traditional networks and computers into one single system. Similar work is also underway at Microsoft under the code name Millennium, while other vendors including Lucent Technologies and IBM are also trying to make distributed systems a commercial reality.
"It's (Jini is) a beautiful integration of a lot of ideas from a lot of people and that's the way you progress in this field," said David Farber, Moore professor of telecommunications at the University of Pennsylvania and an early pioneer of distributed systems. "In the short term, I think we'll see the Jini activity is correct -- you want to go down a path of distributed computing and it will push that further along."
The long term future for Sun's development project however is still open to question. Could Jini grant Sun's remaining two wishes -- redefine the model for computing that has held for the past 20 years as well as give birth to a new world of electronic markets?
"Someone has to make the bet," Farber said. "When you bet, sometimes you win and some times you lose... You need people who will go out and do it. I hope Sun has that courage to do it."
The key attribute of Jini, according to Sun, is that the software will make it easier for developers to build distributed systems. In the Jini world view, anything connected to a network -- be it hard drive, person, or software -- is represented by a software object and Jini provides a way to label those objects.
The combination of several Java-related technologies enables the objects -- which contain both data and code -- to move across a network from place to place and employ each other to perform tasks. An object representing a camera, for instance, can find and then output its images to a printer. With code and data describing a device able to move freely over the network, Jini devices can use, and be used by, any other device on the network in a fluid way, Sun officials said.
Singles Bar Model
Objects in the Jini system do not have to be centrally managed and instead, are matched by a sort of electronic bulletin board that lists the objects' attributes, according to the company. Sun's Chief Scientist John Gage likes to call Jini "the singles bar" model of computing since the process mimics people looking for partners in the real world.
Sun believes Jini could be used as a foundation for connecting large numbers of machines into distributed systems that are self-monitoring and able to move and replicate data automatically. If Jini achieves its second wish of redefining the computer, users of any device from a smartcard upwards could be freed from concerns about the location of data and where computations are performed. The operating system as we know it today could quietly retire. Sun Co-founder and chief Jini architect Bill Joy admits this distributed systems dream will take "a quantum leap in thinking."
But there is more. If Jini enables objects to communicate in a similar manner as we do in the real world, why not use it to migrate real world transactions and interactions into software on the network? The long term future for Jini could be as a building block for networked markets and software "mirror worlds" of the one we know today, some observers said.
This third and final wish sounds straight from ancient tales of magic lamps and flying carpets, but draws on the research of David Gelernter, a Yale University computer scientist who pioneered the concept behind JavaSpaces, one key piece of the Jini project, Sun officials said.
"Like a child-sized play village modeled precisely on a real town and tracking reality's every move, the Mirror World supplies a software object to make and track every real one," Gelernter wrote in his 1991 book "Mirror Worlds." "Each visitor will zoom in and around and roam through the model as he chooses at whatever pace and level of detail he likes. On departing he will leave a bevy of software alter-egos behind to keep tabs on whatever interests him."
Now that Jini is public, Sun's Joy is reportedly investigating such alter-ego software, delving into the social and technical aspects of software agents. Joy is also co-chair of a committee appointed by U.S. President Bill Clinton that in a soon-to-be-released report will recommend federal funding of IT research projects that are "based on assumptions not true today," according to a draft copy of the report. The committee specifically cites Gelernter's "Mirror Worlds" as an example area of research.
But behind such blue sky visions lies a fledgling technology that many within Sun still don't understand. Developed quietly in Aspen, Colorado, and the Boston suburb of Chelmsford, Jini is the brainchild of Joy and a cadre of Sun insiders not involved in the day-to-day grind of the company's Silicon Valley headquarters. As a result, when Jini surfaced last month, a host of Sun executives were at a loss as to exactly what the technology is and how to explain it.
Is Jini an R&D project or a product? Is the core Jini code 24K b or 48Kb in size? How much of Jini's source code will be released? Is that source code finished? These questions and others were flying around Sun even as Jini was being let out its bottle, officials said.
Asked about Jini at Sun's earnings announcement two days after news of Jini broke, President Ed Zander looked to his boss, Chairman and CEO Scott McNealy for help. "Scott and I are trying to flip a coin here and see who's smarter on this," Zander confessed. McNealy, however was not much help, simply summing up the work as "exciting and compelling."
Even Jini's name is still in question. The name was originally taken from a program Joy wrote to generate all words that start with "J" (for Java) that can be pronounced in English. "Jini" sounded good to Joy and sounded like the magical spirits in the ancient tales "Arabian Nights' Entertainments," a Sun official said. Sun is now trying to decide what that name means. Is it Java Intelligent Network Infrastructure? Java Information Network Infrastructure? Or, Jini Is Not Initials?
Names aside, Jini's future is now in the hands of developers. Sun said it will give away Jini sourcecode for free.
Sun hopes opening the sourcecode up will jump-start development of Jini-enabled software and devices, company said. The vendor already has about 30 partners working with Jini including Computer Associates International Inc., L.M. Ericsson Telephone Co. and Toshiba Corp.
Jini Takes Its First Steps
The first step for Jini will likely be a small one: as the simple glue for enabling devices such as printers, storage systems and cameras to more easily interact and cooperate over a network than they do today, company officials said.
At Sun's semiconductor unit in Sunnyvale, California, the company is demonstrating to potential Jini users its claims of how Jini-enabled machines can seamlessly connect to a network and easily create an ensemble of devices working together.
One of Sun's demonstrations is a camera that when plugged into a LAN (local area network) automatically configures itself to the network without the usually necessary device drivers. Controlling the camera from an icon displayed on any of several screens, a user can store images on a networked storage system or tap the power of a workstation to edit the image.
And if Jini can indeed be used to connect appliances around the home and tools at the office, Sun hopes the architecture can scale up to the level where the tasks of thousands or even millions of users and devices are managed by Java objects zipping around the network without the central control of an operating system.
Windows, and all major operating systems -- Sun's Solaris Unix OS included -- manage all of a system's resources-memory, storage, processor, under one roof, a PC or workstation. The operating system loads data and programs, handles all input/output operations and manages memory, keeping track of where data and programs are stored. The key point is that all of these components are in one location and managed by one "boss."
The Jini vision is to take all of those pieces and toss them out across a network. Java objects could travel the network and carry out the same communication between components that today is handled by an OS.
"This is the next level in the evolution of (computer) systems," said Sun's Gage. "Today people think about a system as being in one place, right here but it is a very simple step to imagine you break it up - cut the computer up into all its little operating pieces."
Suppose a manager on the road with just a PalmPilot, or a similar handheld device, is suddenly asked by his or her boss to translate a document from English to Arabic. Though the Pilot has limited capabilities -- no storage, low processing power and little memory -- the user in the new Jini world can tap into the network, move the document from a storage system at work to a machine with translation software and processing power. When the translation is done, the manager can print the document to a colleague's printer for a proof-read. In this example, the Pilot acted as portal to the Jini network that enabled the manager to remotely access all of the resources as if they were right in front of him or her.
Part of the evolution, Sun hopes, is the birth of "Jini marketplaces," virtual markets where services can be offered for money and where third parties might fashion new services by mixing and matching other services like Lego building blocks, according to Sun officials. If a lone disk drive can be a "storage service" on a Jini network, why can't an entrepreneur with a archival tape drive in his or her living room build a business offering storage to the world of Jini devices and users?
Sun has already released application programming interfaces (APIs) for Java that ensure that all events occur in a transaction before the whole transaction is finished. Also available are APIs for adding to Jini "leasing" -- the ability for objects to negotiate with each other the period of time a particular service is available for use.
In the world of Jini marketplaces, the manager with the translation task could use Jini businesses to handle his or her task. The manager could send the document as part of an object into the Jini network with the question "can anyone translate this for less than $50 by Friday?"
A translation specialist, meanwhile, has "registered" its service and prices on the Jini marketplace. The matching of the two and the resultant transaction would be handled on the network. The matchmaking could also be handled by a Jini broker who brings buyers and sellers-represented by objects-together and mediates an agreement. Another business -- the tape drive in the living room -- for a fee may offer the manager secure storage for the document until it is needed.
Clearly, such examples constitute little more than crystal ball gazing at the moment, Sun officials admit. But if Sun can spread Jini as it hopes it can, we might come closer to the seemingly radical world that distributed systems researchers have envisioned for years.
"You will look into a computer screen and see reality. Some part of your world -- the town you live in, the company you work for, your school system, the city hospital will hang there in a sharp color image -- abstract but recognizable," Gelernter wrote in "Mirror Worlds", back in 1991. "You stuff the huge multi-institutional "ratwork" that encompasses you into a genie bottle on your desk."
(Additional reporting by James Niccolai in San Francisco)
Sun, in Palo Alto, California, can be contacted +1-650-960-1300 or at http://www.sun.com/.