|
Articles Index | Jini Index | Wireless Initiative Jini technology is an experiment in cooperative distributed computing. It is meant to destroy the idea of a monolithic application and enable the delivery of distributed services to clients everywhere on the network. For the technology to succeed, it needs a strong developer community: A strong community will give Jini technology the critical mass it needs to establish ubiquity while accelerating the development of innovative Jini services. Just as Jini's core strength lies in spontaneous assembly of distributed networks of clients and services. Sun hopes a core strength of the Jini community will be self assembly of developers and industry around mutually beneficial development projects. See Jini Technology in the Home and Enterprise for some examples of how this might work and benefit consumers as well as enterprises. This article describes how the Jini technology development community is growing and adapting its development process, and how you can participate. Plus a real-world example of the ease-of-use Jini technology brings to networked devices and services. Note: The next Jini Community meeting will be held in October 1999 in Annapolis, Maryland.
The Jini Technology Development CommunityUnder the process being jointly defined by community members, interested developers can join discussions, review and exchange source code, and become involved in working groups by registering on the Jini Community site (see Resources). To register, you must agree to the terms of the Sun Community Source License (SCSL), which is used to protect secured areas of the community site. To empower the community and enable rapid growth and acceptance of Jini, Sun is making core Jini technology, including the source code for Sun's implementation, available for download under the SCSL. The SCSL is an amalgam of open-source principles and many for-profit licensing models of the past. It has been crafted in the spirit of openness avowed in Eric Raymond's now-famous paper, "The Cathedral and the Bazaar." The protections provided by the SCSL are put in place so that community members can be free to share their innovations in a nonthreatening forum while also ensuring the value to the community of the Jini trademark is preserved. For more information on the SCSL or to read Raymond's paper, please refer to the related URLs in the Resources below. Note that when you "click through" the SCSL on the Jini site, you are asked whether you represent yourself or your company. If you accept on behalf of your company, all other employees of your company are subject to the license terms and conditions to which you agree. Make sure you read through the license carefully and check with management if you have any doubt about whether you're qualified to act on behalf of your company.
Support for the Jini CommunityTo help developers better understand the nascent Jini community, its processes and procedures, and the SCSL license and its implications, Sun hosted a Jini community birds-of-feather (BOF) session at JavaOne developer conference in June 1999. Prominent jini-user mailing list members and Sun representatives Ken Arnold and Jimmy Tores outlined Sun's ideas of how the community might structure and run itself, then answered questions from attendees. Arnold explained that the supporting framework for the Jini community comprises:
What, you might ask, is meant by having the development team of Jini technology act as shepherds? The idea is that Sun wants to help Jini projects run by other members of the community, such as the printer working group organized by a number of prominent printer manufacturers. Sun provides assistance by having one or more Jini technology experts assist the working group with any Jini technology-specific questions they might have. This allows the working group to focus on domain-specific issues, (in this example, the details of distributed printing), which they and their companies know much better than does Sun. In the end, shepherds are meant to foster the rapid development of sets of standard interfaces for various network services, such as printing or storage, that the entire community can agree upon, and from which everyone can benefit.
Example of a Jini Project LifecycleThere are three basic models under which community members can choose to run Jini development projects within the community.
Assuming a project is developed under the first model, publicly codeveloped with all interested members, the lifecycle might be something like this:
The Jini licensing model is deliberately more liberal than the Java SCSL licensing model. If a Java licensee breaks compatibility with core technologies (the Java Virtual Machine1 specification, for instance), interoperability is destroyed for all other licensees in a fundamental, damaging way. If a Jini licensee specifies a poorly designed interface, however, this will not directly injure other community members: the market will simply not use the interface and that licensee will suffer the consequences alone. So, the Jini development model encourages good, cooperative design that works well with other Jini services and clients.
ConclusionsThe Jini technology community is rapidly consolidating around an open and cooperative development model. As the Jini processes have solidified, working groups have begun forming to define Jini interfaces for many different types of clients and services. Jini technology will succeed to the extent that the new community model of development succeeds. Join the community today and help make it happen!
_______
Note: An earlier version of this article was first published by JavaWorld magazine in their JavaOne ShowDaily coverage, June 1999. This article has been revised recently by the author for the Java Developer Connection (JDC), and is published with permission from JavaWorld. Copyright Web Publishing Inc., an IDG Communications company.
About the Author
Bill Day is a
technology evangelist at Sun Microsystems. He writes a monthly
technical column, Java Device Programming, for
JavaWorld magazine as well as a
weekly Q&A column for Java Career Dispatch, JavaWorld's Career newsletter.
Bill has contributed feature articles to CNN.com, SunWorld, Gamasutra, and
Sun's Java technology site. He speaks frequently on Java technology-based
multimedia and consumer device programming.
| |||||||||
|
| ||||||||||||