RE: Working Within the System

From: Billy Brown (
Date: Wed May 03 2000 - 10:15:16 MDT

Lee Daniel Crocker wrote:
> You don't get out much, and you certainly haven't checked the job
> market lately. What do you think those 6-figure Java programmers
> are building, toys? No, their building server-side distributed
> enterprize applications--the kind of software no one sees on any
> shelf, but that runs everything behind the scenes.

Actually, I thought all those six-figure Java programmers were working on
projects that haven't gotten out the door yet - and given the failure rate
for adventuresome new programming projects, something like 80% of them never
will. This is as opposed to the six-figure COM programmers (like me) who've
actually seen several major projects through to production at this point.

Mind you, what I actually meant to refer to was Enterprise JavaBeans, not
Java in general. I know there are starting to be some straight Java apps out
there, although I haven't had the need to actually interface with one yet.

> Implying that Java is a "closed" system is about 170 degrees from
> the truth. Not quite 180, because Sun does retain the right to pass
> final judgment over the "official" status of new APIs, and they
> retain a trademark on the name. But the Java platform itself is a
> 100% public specification with no restrictions of any kind on its
> implementation or extension, with 100% freely available and
> redistributable reference implementations from Sun, 100% freely
> available source code from Sun, and 100% freely available and freely
> redistributable source code from several other vendors. Anyone who
> calls that "closed" has an agenda other than the truth.

Once again, I actually meant to say EJB. There are two important senses in
which EJB is a completely closed system from my perspective:

1) EJB has no provision for communicating with other software architectures
(aside from a token CORBA bridge that I'm told is essentially vaporware),
and Sun apparently has no interest in changing that. If you want to connect
EJB with a system based on someone else's technology (be it componentware,
TPMs or message queues) you have to go hunting for outside vendors with an
appropriate bridge, which quickly becomes very expensive and very messy to
deal with.

2) EJB requires everything to be written in Java. A language-neutral
standard would have been much more useful, since most of the world doesn't
speak Java and isn't going to anytime soon. Switching to a distributed
application architecture is hard enough without having to switch languages
at the same time.

In other words, Java's 'openness' is entirely focused on portability (which
most people don't need), while interoperability (which everyone needs) is
given very little attention.

Now, I don't know all that much about Java (as opposed to EJB), but what I
have heard doesn't sound nearly as free-wheeling as what you describe. Don't
vendors need Sun's stamp of approval to call their products "Java"? They
certainly do to advertise them as an "Enterprise JavaBeans" implementation.
And if the standard is freely extensible, how did Microsoft get sued for
writing their own extensions?

My impression is that Sun retains the right to say who can sell Java
implementations and what features they can include, and uses this to make
sure no one does anything they don't approve of with the standard. While
this is a perfectly reasonable business practice, it does make their claims
to openness a bit dubious - they are only open to innovations that don't
hurt their own market position, which puts them in the same category as any
well-run proprietary standard.

Billy Brown

This archive was generated by hypermail 2b29 : Thu Jul 27 2000 - 14:10:25 MDT