Summary
This is the first of a set of blogs
made from the Seventh Jini Community Meeting
held in Cambridge, Massachusetts March 23-25, 2004.
Advertisement
The Seventh Jini Community Meeting I
This is the first of a set of blogs
made from the Seventh Jini Community Meeting
held in Cambridge, Massachusetts March 23-25, 2004.
I've not blogged here in a while and for that I'm sorry.
Please accept these next few blogs from this event as
a kind of "warm up" for me. I've got some other essays
on software engineering in the works which I hope to
publish in the next couple of weeks. In the mean time,
please enjoy these notes from the Jini Community meeting.
-- Scott
caveat: I should remind everybody that these are
my observations and thoughts and not necessarily of those
of my employer, any other member of the Jini community,
or indeed anyone else on the planet. I'm a member of the
Jini development team so these next few blogs will be
"a little closer to home" than the essays I've done for
Artima previously. Well, consider yourself warned! <grin>
Managing Growth
Ken Arnold, Chief Architect at Event Monitor, Inc., began
his talk by confessing that he'd begun working on his slides
after midnight, just hours before he was to give his keynote.
What font did he choose for his slides? It was a mock-handwritten
font adding to the illusion it was a thrown-together presentation.
That's Ken: outwardly rebellious, off-handed, gregarious, and
a perfect choice for launching the 7th community meeting for
users of Jini Network Technology.
Ken's presentation was polished, as usual, leading me to believe
his claims of procrastinating on the preparation of his talk were
probably overstated. After walking through some of the early
history of the Jini project, Ken led the audience through the
history, and intent, of the Jini license. License? Usually, such
a topic would be a real sleeper as a keynote but the
Jini project has been interesting in several ways and the
licensing aspects of this technology illuminates this nicely.
Before going any further, it might be good to just mention what
Jini Technology does. Here's my definition:
Jini is a distributed computing model for Java. With Jini,
collections of computing resources can collaborate and
interact to produce highly-scalable, reliable, and flexible
solutions that would be difficult or impossible to create
any other way.
In short, Jini helps programmers create solutions with
computers working together in dynamic ways. That's the
technology half of this. Ken's other interest is the
people half of this. How can we get people
working together in dynamic ways?
That's the point and
purpose of the JDP, the Jini Decision Process, and the
SCCL, the Sun(TM) Community Source License. Getting
the community involved in the continued development
of Jini is something Ken is passionate about. The SCCL's
intention is to protect the rights of those who use
(and contribute) to the technology, and the JDP provides
the rules of the game for those who wish to participate
in the planning for Jini's future.
Guess what? There's no consensus that the license or
the JDP are perfect. What a surprise! The Jini
community is filled with bright, energetic people
with strong opinions. Then again, what (successful)
project and team doesn't have such folks?!
I'm reminded of a quote:
"In a room full of top software designers, if any
two of them agree, that's a majority."
-- Bill Curtis
In this regard, the Jini community is simply suffering
from the same maladies that afflict all popular technologies:
the problem space addressed by the technology is constantly
changing, the platform the technology is deployed upon
(Java, in this case) is changing, the scope of the technology
is increasing as it is used to solve more-and-more diverse
problems, and some of the decisions we've made in the past
may not have been satisfactory and we need to fix some things.
The fact that there are now
passionate advocates agitating in the community is a
testament to the success (albeit a somewhat quiet success)
of the technology itself. The question now is how do we
manage what we've created?
"Good management is more important than good technology."
-- Alan Davis
I think I'd like to expand upon this. Perhaps it is possible
to create great technology at first in the absence
of management, but the growth of
that technology would be impossible without good management
orchestrating that growth. Engineers, by their very nature
I guess, rebel at any management... and Ken Arnold
exemplifies this notion at least as well as anyone I can
think of! I believe its ironic that Ken, the ultimate
coding nerd and anti-manager, took up the cause to
create a management structure to manage a community
of developers destined to take Jini forward!
This is not to say that Ken was the entire engine behind the
SCCL, JDP, or the Jini Community. Quite the contrary, while
Ken's participation has been instrumental, there are many others
who have dedicated years at this point to ensure that this
model of community development works and that a sense of
fairness pervades the system. Jim Hurley, who also led
the organizing effort for this event, is another architect of
the Jini Community and its license and there are many more
folks I don't have time to name that should also be applauded.
Jim's involvement
has made him a "popular" guy. For example, Jim was accosted even
before start of this conference on licensing issues. If you
want to make Jim squirm, just walk up to him and say, "Do
you have a minute to talk about licensing?" Really. He'll
break out into a cold sweat. Let me know when you're going
to do it. I want to watch.
It's a sign a technology has come of age
that one of the concerns people bring to an event like this
is licensing and growth management. What a nice problem to
have! While we might grouse about all the things not currently
permitted by the licensing system, the truth is that many
use the technology, for free, to create impressive solutions
that I'm sure they've charged top-dollar for. Further, Sun's commitment
to the technology is occasionally questioned but a quick
run-through of the numbers tells me that Sun Microsystems
committed millions of dollars over several years which
yielded an important technology you can use in your custom
solutions basically for free. Not bad.
There might be changes in the licensing structure
for this technology someday. Certainly, the openness of the
process makes it possible for you to participate in the
system to help bring such a thing to fruition. But I think
we shouldn't lose sight of the fact that the technology
and licensing structure, as it exists today, is a powerful
asset that is available to you now. And, while the
manager in me wants to know how we'll be growing
Jini in the future, the nerd in me wants to see what
new cool things we can build right now with what we've got.
Of course I've got an axe to grind on this issue.
I'm a member of the Jini Technology team and have
watched my colleagues put an enormous amount of work
into this technology. Artists want their works viewed.
Architects want their buildings built and
bustling with people. Software developers want their
systems used and expanded. With passionate folks like
Ken, and others, leading the way, I think we'll see
just that.
If you've not checked into Jini Network Technology,
now's a great time to do so. If you're already a
member of the Jini Community, I encourage you to
work with Ken and the many others involved in taking
this technology to the next phase.
Facts and Fallacies of Software Engineering, Robert L. Glass.
This is the source I used for the Bill Curtis quote and is an
excellent work. My review for Amazon is forthcoming.
201 Principles of Software Development, Alan Davis.
This book is, alas, now out of print... and I think that's
a shame.