Gosling's Infoworld interview [was: Re: Stroustrup's Infoworld interview.]

I Find Karma (adam@cs.caltech.edu)
Fri, 13 Feb 1998 13:25:14 -0800


A minute or two ago, I wrote:

> [text and URL included below -- it's usually better to do that on FoRK
> than send just an URL so that way we know immediately what you want us
> to read -- which I found because Doug Lea posted just the URL to
> dist-obj in response to Ron's crosspost there of my post here on FoRK of
> the fake interview of Bjarne which I Cc'd him on because he's no longer
> a member here and I thought he'd enjoy it anyway... oh no, mr. bill,
> too many feedback cycles... brain... will... explode... :]
>
> http://www.infoworld.com/cgi-bin/displayStory.pl?/interviews/980211stroustrup.htm

And then I received from Rich Burridge in response to Doug Lea another
interview in Infoworld, this one from James Gosling at the Software
Development 98 conference in San Francisco:

http://www.infoworld.com/cgi-bin/displayStory.pl?/interviews/980212gosling.htm

One sentence I liked:

> Lots of people have been writing their full-blown middleware in Java.

Ahem. Who would do that?

http://www.infospheres.caltech.edu/

One sentence I disliked:

> We don't have a file system or an implementation of TCP/IP. What we
> have is interfaces to that. If you're a developer, what you see is the
> interfaces. You don't care what's on the other side of the interfaces,
> so from the point of view of a developer it looks like a platform.

I often care what's on the other side of the interface. Why wouldn't
most programmers?

The following sounds like something straight out of JoeK's mouth:

> I find it depressing that, as the guy behind Emacs, when it comes to
> writing an algorithm, Emacs is still the best tool around.

And I think the following oversimplifies the difference between CORBA
and DCOM:

> InfoWorld: So from your point of view DCOM and CORBA are transport
> mechanisms?
>
> Gosling: I don't care. It's how the bits get across. The CORBA stuff
> has been around for a long time. Microsoft, for whatever reason,
> decided to build their own thing that was exactly the same, just built
> differently.

What, no mention of HTTP-NG?
:) Adam

> February 12, 1998
> The Java gospel according to Gosling
>
> By Michael Vizard
> InfoWorld Electric
>
> As arguably the most famous programmer in the software development
> business today, James Gosling is something of an icon. In that
> capacity, he now has tremendous sway with developers as the prime
> mover behind the development of Java for Sun Microsystems. Following a
> speech he gave today at the Software Development 98 conference in San
> Francisco, Gosling outlined his thoughts on Java's future in an
> interview with InfoWorld Executive News Editor Michael Vizard.
>
> InfoWorld: Java may be commanding a lot of our attention these days,
> but there are still other languages in wide use. How do you see Java's
> role in relation to other languages?
>
> Gosling: Well, if you're talking about Visual Basic and the Windows
> platform, Microsoft did a fairly good job integrating Java with COM.
> Building a COM component in Java is completely trivial because every
> interface is a COM component. It's a very interesting way for Visual
> Basic or C++ to call Java. On all the other platforms, there's a
> different way of doing that using JNI.
>
> But you can't avoid having some sort of conflict and comparison.
> You're never going to get rid of religious wars. There were a number
> of things done in Java because of problems people were having in C++.
> Some of them were artifacts of the way people tend to build compilers
> or the way C++ was built, such as the memory integrity stuff.
>
> InfoWorld: Can we simplify C++ by borrowing some concepts from Java?
>
> Gosling: In some sense that's what Java is, a simplified C++. At one
> time that's very explicitly what I was trying to do.
>
> InfoWorld: The folks who really like C++ take exception to
> descriptions of Java as being a simplified implementation of C++.
>
> Gosling: At one time that's what it started out being. It stopped
> being that relatively quickly.
>
> InfoWorld: What kind of progress are you making on the performance
> issues associated with Java?
>
> Gosling: They're pretty much gone now, if you are using the Microsoft
> VM or the Symantec VM. Actually, the Microsoft rhetoric has been
> pretty entertaining because it's sort of been like they have had two
> groups sending out dueling press releases. This has suddenly stopped,
> but you have the Visual J group who are really good engineers, built a
> pretty good VM, and a really good compiler, posting really good
> performance numbers. But then you have the corporate positioning
> people saying things like Java is a factor of forty slower.
>
> InfoWorld: What is the role for the Java for the Enterprise
> initiative. Originally, it seemed you guys where talking about
> wrapping Java around existing system services. Now people are talking
> about writing system services in Java.
>
> Gosling: That's certainly been the case. People have been pretty
> successful in writing wrappers around legacy stuff. But for people who
> are building new stuff, lots of people have been writing their
> full-blown middleware in Java. It's not that we're pushing one or the
> other.
>
> InfoWorld: What's the relationship between CORBA, DCOM and Java?
>
> Gosling: CORBA is the transport layer. It's how you express the
> interfaces between different components on different systems. But a
> lot of the comparisons that Microsoft's make are kind of crazy. They
> often compare ActiveX with Java. But ActiveX at its core is COM. Java
> is a programming language. COM is an interprocedural calling
> mechanism. It's a real apple and oranges comparison. But if you take
> DCOM and CORBA and lay them side by side, they are really very
> similar.
>
> InfoWorld: So from your point of view DCOM and CORBA are transport
> mechanisms?
>
> Gosling: I don't care. It's how the bits get across. The CORBA stuff
> has been around for a long time. Microsoft, for whatever reason,
> decided to build their own thing that was exactly the same, just built
> differently.
>
> InfoWorld: So is Java a language or a platform?
>
> Gosling: It depends on your point of view. And what does just a
> language mean. If you want to wax philosophical about it, a language
> provides a framework or a lens through which you see a problem. The
> answer to the question is yes and no. We don't have a file system or
> an implementation of TCP/IP. What we have is interfaces to that. If
> you're a developer, what you see is the interfaces. You don't care
> what's on the other side of the interfaces, so from the point of view
> of a developer it looks like a platform. It's lens through which
> developers get a consistent view of how to operate the platform
> underneath.
>
> InfoWorld: To hear Microsoft tell it, Java Foundation Class libraries
> are a Trojan Horse operating system layered on top of other operating
> systems?
>
> Gosling: Give me a break! I hope they don't confuse the user interface
> toolkit for an operating system. It runs perfectly fine on top of
> Windows and NT. Depending on what things you create, it often uses the
> facilities of the underlying platform.
>
> InfoWorld: So Microsoft is basically paranoid about Java?
>
> Gosling: Absolutely. And I don't know how much of it is paranoia. I
> think they are smarter than that. I think they understand perfectly
> well that it's an adaptation layer. But the issue is they want
> control. It's like the Web and the IETF. Microsoft has tried to
> takeover a whole lot of the discussions there and make them
> proprietary. On average, the people involved in that have not been
> receptive. The way we've been running the Java design spec is that
> it's very collaborative. We work with lots of people on it. Microsoft
> says that Java has all these people involved so it won't be able to
> keep up with them. But what you're really saying is that you go fast
> because you ignore everybody and do whatever you want. And that's good
> for us?
>
> InfoWorld: But people then say that the standards process is now as
> open as traditional standards because Sun still controls the
> specification.
>
> Gosling: I think you'd be surprised about how little
> control we actually have. But we are not running it like a traditional
> standards committee. Sun has a really long history with standards
> committees and kind of been burned a lot. A lot of standards
> committees turn into chaotic dogfights where nothing productive
> happens. We're really interested in making things happen in a timely
> fashion.
>
> So we do things on a more one-to-one basis. Sometimes we get a whole
> bunch of people in a room and play it out. But sometime because of the
> personalities and the competitive tensions, it often works better if
> we sit in the middle and talk to people independently so things don't
> turn into a cat fight. We do a lot of shuttle diplomacy. And that's
> been a tough thing for Java engineers because you have to get involved
> with lots of outside people so you have to take a crash course in
> shuttle diplomacy.
>
> InfoWorld: So what keeps you up at night?
>
> Gosling: I have a project "to do" list that is infinitely long. I
> could live a thousand years and still not run out of things to do. But
> one area I have been spending a lot of energy on is development
> environments. A lot of development environments don't actually help
> people develop programs. They have an interesting GUI builder or
> things for wiring components. But, if you are actually trying to build
> a component, what kind of tools are there for analyzing and
> manipulating algorithms? The answer is not very much. If you look at
> any development environment, you pretty quickly drop into an ASCII
> text editor that's the same sort of thing that's been around for the
> last thirty years.
>
> I find it depressing that, as the guy behind Emacs, when it comes to
> writing an algorithm, Emacs is still the best tool around. So semantic
> modeling of programs that will let you do semantic transformation to
> build production systems is something you could do some really cool
> stuff with. The problem is I can only find five people on the planet
> who actually understand this. The problem is how to do you build tools
> that understand your programs at a deeper semantic level.

----
adam@cs.caltech.edu

Some men go fishing all of their lives without knowing that it is not
the fish they are after.
-- Henry David Thoreau