----- Original Message ----

> From: Michael McGrady <mmcgr...@topiatechnology.com>
> To: river-dev@incubator.apache.org
> Sent: Saturday, December 20, 2008 11:06:42 AM
> Subject: Re: Split JavaSpaces and JINI
> 
> 
> On Dec 20, 2008, at 2:54 AM, Dan Creswell wrote:
> 
> > Michael McGrady wrote:
> >> The idea of having JavaSpaces be dependent upon JINI rather than vice
> >> versa has no justification that I can see.  Why would you do that?
> >> 
> > 
> > Jini doesn't need JavaSpaces - JavaSpaces is merely one service built
> > atop Jini.
> > 
> > I've built a bunch of Jini systems that don't use JavaSpaces, I can't
> > build Jini systems with JavaSpaces alone because it doesn't do lookup
> > and underpinning discovery which is the Jini fundamental.
> 
> 
> What you say is agreed upon.  It does not relate to what I said.  Again, I 
> don't 
> think you have a good grasp of what architectural dependencies are all about. 
>  
> You think engineering.  There are two distinct disciplines: systems 
> architecting 
> and systems engineering.  They are related but very different.  Congress 
> mandates that in large scale systems, such as aerospace, they be so distinct 
> that the systems architecting be a nonprofit corporation, e.g., Mitre/CAASD 
> and 
> Aerospace Corporation.
> 

I'll say this then I'm pretty done. I would much rather Nick, Dan, Gregg, 
Michal, Jools, others and myself pull together and really start looking for 
actual issues and fixing things and moving on some of the ideas from the 
enumerated list plus some other things which has been talked about on the list. 
Those things will actually move us forward.

The fact there are two distinct disciplines has nothing to do with what we are 
talking about here. We can be engineering or designing a system. Right now, we 
are talking about the design and the architecture which I'm pretty certain most 
understand ;-). Within the architecture...design...of Jini is a set of 
concepts. There is Entry, lookup, lease, transaction, and spaces,. All 
concepts. 

We all have a general notion of the generic concept of what a lease is. It is 
not different in Jini. The concept of a lease is very general and not unique to 
Jini or anything for that matter.

A transaction is a series of steps which has a beginning and an end. It fails 
or it completes. Its changes are rolledback or commited. We all have a good 
idea of what a transaction is. I'm fairly certain all of us have a bank account 
or a credit card.

Entry is much more than a marker
interface. An entry is a special item which is written, read, and found
in a certain way; through special protocols. The design and
specifications detail how entry works. You can read it; I have already given 
you the link.

A space is nothing more than a given abstraction where information can be read 
and information can be written. It happens to use some of the other concepts; 
concepts by the way which are not unqiue to Jini.

To understand the architecture of Jini you have to first understand those 
concepts. There is no such thing as an architecture without requirements, nor 
in todays times are there systems not using common elements derived from 
concepts learned over time unless that concept is new; maybe someone gets cold 
fusion (energy not web technology) working today I don't know.

You keep talking about the bad design. But, what you have thus far failed to 
illustrate is where the requirements are filled by a specific design which is 
better. I can open up books and give you a thousand concepts in a thousand 
different contexts, but until we get down into the details what we are 
specifically talking about, vague notions of those concepts have no meaning.

Jini was designed to solve a specific set of problems. In that design lie 
concepts for some specific domains which some are mentioned above, and these 
have been the main areas of our recent discussions. Most notably entry. The 
problem with your argument for many of us is that you keep using words like 
cohesion and decoupling, which is pretty evident many understand, and yet you 
offer no valid reason why entry should belong in spaces, and have not even 
touched on why you keep ignoring folks comments that Entry is a common class 
and belongs in neither specific place other than entry itself, nor why the rest 
of the Jini APIs should depend on spaces versus spaces depending on some common 
ideas which other APIs also happen to depend.

Jini has at its core a goal to make distributed systems easier. Not all 
distributed systems need to rely on spaces. One can easily enough create a 
system which uses a single database to provide common data between different 
systems. At that point spaces becomes irrelevant. Now, to get proxied database 
connections spontaneously and emergently (yes I saw your other emails) they 
must ask something for those things or have a programming language with all 
that support built in. Since Java isn't that language at its core we have the 
rest of Jini. Enter lookup (sort of like Bruce Lee kicking butt) to allow 
resources to be obtained from In-JVM or some other system. Lookup allows those 
data services to be found in Linda fashion.

Now, you may content I'm just looking at this from an engineering perspective 
if you would like, but at some point the rubber has to hit the road. We have 
already detailed our concepts. We know from the concept of a space that 
something has to be written to it. Why not reuse the generic concepts we have 
defined to exist in multiple domains? That is logical, and you yourself believe 
it to be true because you are asking for Entry to reside in spaces, and at such 
a point in a debate I would have not written a single line of code, but indeed 
a good design has to be something which is able to be implemented and used 
without a bunch of complexity and duplication. 

If the architects do not understand the requirements, concepts, domains, and 
the resources which to implement solutions they can make the problem worse 
instead of better, and if the other concepts are not naturally dependent upon 
spaces why force that into a design? Spaces can logically and naturally be 
dependent upon those other concepts, though at this very moment it isn't 
dependent upon lookup unless one wants to use it in true Linda fashion. So, if 
one doesn't want to use the rest of Jini to use spaces they don't have to, but 
they still end up using common concepts such as entry, transaction, lease etc, 
and they can do whatever they like with the rest and to get a Linda system with 
spaces. Note the spaces specifications assumes the rest of Jini will be used to 
reach its true distributed capabilities (Linda).

Yes, I'll go ahead and say it even though I'll hear if from more than you...

Heh. After Jan., or before if President Bush gets on board with the crazy money 
flood again, Congress is also gonig to bail out an industry which is going 
belly up because of horrible executive decisions and being held hostage by 
unions. Anyone in business realizes they can't be saved if they can't make 
decisions based on the money they actually have versus some legal contract they 
never should have entered which has them spending more than they make. Too, 
there are too many times government contracts go way beyond their deadlines 
because someone who thinks they know how to architect a system that knows 
nothing about engineering one gets involved, is ingrained in the details, does 
nothing, is horrible at their job, and can't be fired either because of some 
silly contract or some kind of a nutty union or government deal; much like 
teachers unions.

Point being, we have a bunch of know nothings in Congress who want to whine and 
spend money they don't have because they don't really understand the situation 
in most cases, and this same ignorance spills over into everything else 
including the space agency (their buget comes to mind), so their decisions 
don't really hold sensible weight to be used well in an argument. 

They can take that money they don't have, waste it, and be no better off except 
for a nation in more debt for no good reason, or they can make some legal and 
binding changes which affects the way a business can be held hostage by people 
with no stake in them other than a job, make sure publicly traded companies are 
not giving bonuses to people in certain exceeds and never when nonprofitable, 
be darn sure that if the governemnt gives those companies money they have the 
right to make some changes across the board, and that government programs or 
funded programs are run correctly and transparent as it relates to tax payers; 
we'll see what they do, but at this point why should we think they can get 
anything right?

Wade

Reply via email to