JFC; Microsoft declares war

Mark Baker (mbaker@nortel.ca)
01 Aug 1997 10:04 EDT


[Day-old-bits, but since nobody else FoRKed them, I thought I
better.]

Anybody get the feeling that Microsoft's reacting a wee bit
prematurely in deciding what they are and are not going to ship
as part of the IE VM?

It's far from clear who's won in the MS v Sun battles. That
Microsoft would draw the line in the sand before they've really
extinguished the industry's hope/hype of "write once, run anywhere",
seems quite odd to me. And to do it in such a confrontational,
anti-customer, way seems ever more odd. Witness,

CW: But say there's an electronic-commerce application that
somebody wants to run cross-platform, and that's why they picked
Java. And they use the JFCs to write it.

Maritz: Good luck.

CW: It's not going to run in Internet Explorer.

Maritz: It may or may not. But the point is, that's Sun's problem. It's not
our problem.

"It's not our problem"?! Egads, dude. I'm sure that's just
what your customers want to hear. Maritz will be eating his
words shortly; IE will do JFC. That won't mean the war's
over, but Microsoft really shot itself in the foot on this
one, and hurt their credibility tremendously in the process.

They're not shipping JavaIDL and IIOP, but there's not enough
people who even know what those are to complain. On the other
hand, for the 97%, the user-interface *IS* Java.

http://www.computerworld.com/news/news_articles/970728moritz.html
http://www.computerworld.com/news/970730javah.html

Gotta love this comment too;

CW: Is there some reason you wouldn't want to ship them? Is there
something inferior about them?

Maritz: No. We don't want to put further bloat on top of the system. We
think that basically there isn't a lot of end-user value in them. And Sun's
trying to establish them as basically their platform. It's a competing
operating system.

Bloat?!?! Er, 'nuff said.

========================================
Maritz: Why Microsoft won't ship Sun's Java
Class Libraries

Microsoft Corp. last week indicated that it would essentially block
efforts to make Java a cross-platform development language, stating
that it wouldn't ship Sun Microsystems, Inc.'s Java Foundation Class
Libraries (JFC). (See related story: Microsoft declares war on Java).
Computerworld senior editor Carol Sliwa caught up with Paul Maritz,
Microsoft group vice president, at a company reception in Seattle and
asked him to explain the software giant's Java stance.

CW: There's nothing in the license that requires you to ship those
JFCs with Internet Explorer?

Maritz: Correct.

CW: Is that a contentious issue?

Maritz: No. The only reason I brought it up is just that some people like
to play hard and fast with the truth, and they like to say, 'Look, these
JFC class libraries are going to be a standard because everybody has
to ship them. Even Microsoft has to ship them.' And that's not the case.
We were very careful when we did the deal to say that we could have
the option of shipping them, but we do not have to include them in
Windows.

CW: Is there some reason you wouldn't want to ship them? Is there
something inferior about them?

Maritz: No. We don't want to put further bloat on top of the system. We
think that basically there isn't a lot of end-user value in them. And Sun's
trying to establish them as basically their platform. It's a competing
operating system.

CW: Do you feel your Application Foundation Class Libraries (AFC)
are superior to their JFCs?

Maritz: No. AFCs ... make it easier to write apps. But our real strategy
is J/Direct. So our answer to JFC is not AFC. It's J/Direct.

CW: It sounds like Microsoft is resentful at Sun for taking a
dictatorial role.

Maritz: The reason we brought it up is Sun likes to blur these two
things together. They like to blur the notion of Java the language and
Java the class libraries. They'd like to package them all into that
concept. We're just saying, 'Hey, there is a difference between the two.
Let's be clear on that.' "

CW: Do you think you're going to end up fragmenting the language
even more?

Maritz: Not the language. You're making the mistake. You're falling into
their mind-set -- [ignoring] the difference between Java the language
from Java the class libraries.

CW: But in the end result, a network manager will have to make sure
he has both sets of class libraries.

Maritz: Let me ask you this question: The fact that you can call
Windows [application programming interfaces] from C++, did that
splinter C++? It did not. It's the same issue.

CW: But if Java's promise is that it'll be a cross-platform language --

Maritz: No. No. Sun's trying to make it that.

CW: But say there's an electronic-commerce application that
somebody wants to run cross-platform, and that's why they picked
Java. And they use the JFCs to write it.

Maritz: Good luck.

CW: It's not going to run in Internet Explorer.

Maritz: It may or may not. But the point is, that's Sun's problem. It's not
our problem.

CW: Does it end up being companies' problems, too? Are you saying
they're foolish for buying into the theory that there can ever be
cross-platform language?

Maritz: No. We're saying it's no different from any other cross-platform
[strategy]. This isn't the first one -- [there was] CBT, Appware, etc. We're
just saying that, 'Hey, you should realize that when you're doing that,
you're dependent upon Sun to get it to work.'

CW: But if you bought into the JFCs, then you wouldn't be in this
particular case. If you shipped JFCs, you'd help foster the idea of
cross-platform.

Maritz: And I don't want to ship another operating system on top of our
operating system and burden every copy of Windows with all of that
extra weight.

CW: Do you agree that it makes developers have to make choices
and it makes them have to do more work and it makes companies
have to install both sets of classes? So in the end, it makes life
difficult for everyone, doesn't it?

Maritz: But we think that that's reality, because you either get this thing
to become a heavyweight thing, in which case it's going to perform
badly. Or you have to make it something very small. So we're not trying
to be parties to perpetuating the myth.
=====================================
Microsoft declares war

Microsoft Corp. last week formally declared war on Sun and its Java
Foundation Class Libraries, making clear its intention to block efforts to
make Java an industrywide, cross-platform development language. (See
related story: Maritz: Why Microsoft won't ship Sun's Java Class Libraries)

"[Sun Microsystems, Inc.] is trying to turn the JFCs into the Sun operating
system," said Steve Ballmer, Microsoft's executive vice president of sales
and support. "It's sort of the next chance for Sun to be a desktop operating
system player. The first one was Unix, and that was a strikeout. Now they
are trying again with JFC, and we hope they don't win.

The crux of Microsoft's battle plan is its rejection of the JFCs, which it sees
as the real threat to Windows. "They are trying to get this to be a runtime
layer to which application vendors write their applications. Those are the
APIs they want people to write to. We want them to write to the Windows
APIs."

Hence Microsoft's decision to not ship the JFCs.
Also describing the Java Foundation Classes as "a competing operating
system" to Windows, was Microsoft Group Vice President Paul Maritz. He
insisted in a separate interview that the company isn't legally required to
include Sun's JFCs with Windows, Internet Explorer or any Microsoft
product.

"We have no intention of shipping another bloated operating system and
forcing that down the throats of our Windows customers," Maritz said.

MAKING A CHOICE

That means developers will either be forced to choose between Sun and
Microsoft class libraries or have to write separate applications. And end
users will have to make sure they have both sets of class libraries on their
systems if they want quick access to those applications.

That effectively defeats the "write-once, run-anywhere" appeal of Java.

Sun officials rejected the description of JFCs as an operating system, and
a bloated one at that.

"It's clear that Microsoft wants to stop Java," said an information technology
development executive at a Fortune 200 company who asked not to be
identified.

It is really shaping up as Microsoft vs. a consortium of Sun, Netscape
Communications Corp. and IBM, the executive said. "And [Microsoft] clearly
doesn't care about their users, because it would be easy for them to just
pick up the JFCs and make that part of their virtual machine," he said.

"It feels like this is the school yard, and Microsoft is that tough guy on the
other side of the fence," said Scott Hanselman, a senior software engineer
at Portland, Ore.-based Step Technology, Inc. The company recently
developed a Java customer service application for an international apparel
maker. "Microsoft is trying to sell us crack, and the first taste is free. But
what's it going to mean when we're addicted to this?"

WHAT LIES AHEAD?

Worse yet, Hanselman said, is what may be coming in the future. He said
he envisions a day in which everyone will need multiple virtual machines in
their browsers to run Java applications. The virtual machines will have to
be updated like software, Hanselman said.

Ballmer, however, insisted Microsoft doesn't have a problem with the Java
language. "We think there's a lot of good stuff that's coming out of the Java
development environment. We're going to support that ... to let people do
great Windows applications in it."

"All of our licensees have to ship the core part of Java, and JFC is part of
that," said John Kannegaard, vice president of software products at Sun's
JavaSoft's division.

Sun officials, meanwhile, expressed surprise at Maritz's comments.
"Microsoft has always shown they will deliver when developers want
something, and I'm confident developers will want JFCs," Kannegaard
said.

But other users said they had always been skeptical of Java's ability to
deliver on its cross-platform promises. "Java is not purely cross-platform,
and it never will be," said Dave Schrier, director of product development at
Black Diamond Consulting in Portsmouth, N.H. "That's just philosophical.
Everyone wants to do their own thing, so Java will never be cross-platform."

"It's like telling Ford to use the same parts as GM. They both have tires and
use gas, but other than that, it's just not going to happen," Schrier said.

MB