On May 13, I followed up on the April 8 interview, just before the photo shoot for the June issue of Linux Journal, where the first interview would run. While little more than a month isn't much time to measure distance on an evolutionary path, I thought Internet Time might accelerate things a bit, so I began by asking Tom how things now stood.
DOC: I'm interested in seeing how the conversation looks different than it did a month ago when we still had muzzle blast. Back then we were talking in evolutionary terms: "betting on Darwin" was how you put it. Have you seen any new life forms start to emerge?
TOM: Some life forms have begun to emerge, but there haven't been too many tyrannosaurs stomping out of the muck. There have been some interesting life forms, though. I'm really happy with the XML parser that was donated. I'm pretty happy with a couple of low-hanging fruit for external ownership. I think that's moving along. On the whole it's been very pleasing; but I don't think it's fair to say the initiation phase is complete. We haven't really gotten the entire Communicator out there yet. For example, the Messenger source mail, news and all that is just flowing out now, starting yesterday.
MARC: There hasn't been a snapshot of the code that's ... done, or anything like that. A fully stable release. So we're still early here.
TOM: We're way, way away from a fully stable release.
See, most public sources work by a process of piling on to something that works but isn't complete. Somebody goes out and says "Here's something that works, everybody. Let's all pile on." As opposed to "Here's a pile of code that's early in its development, that we're going to turn into something."
So some people are piling on, diving in, and what we're seeing at this early stage are chunks of code that are not tightly interwoven with the existing code. The XML parser is a perfect example. A guy writes an XML parser on the side, and says "Here it is. It parses XML. It produces a data structure. You can take the data structure and do stuff with it." Okay, that's really valuable and straightforward. It contributes, and it's a good thing.
What we haven't had is, say, ten guys from IBM popping up and saying "Okay, we thoroughly understand this product now. We're ready to do everything we can to make it do what we want it to do." It's too early for that. And it's a little hard to say when and how that will happen. What I've been beating on in my shop is: "Let's get this thing to a point where people feel like it's a product that needs polishing, as opposed to a pile of code that needs to be turned into a product." When we're at that stage, we'll get more people contributing.
Meanwhile, we're not starving for contribution; but we're working on a chicken/egg problem that has to be solved one way or another. Our goal is to to toss a chicken in the ring and give it away. And that's pretty much what we've been doing all along, though not all at once. We've got parts of the source out, and we're finishing other parts. The Communicator 5.0 team is working away.
DOC: Let's take an example of something that might come from the outside that we touched on in our last talk. At that point you didn't have an ORB (Object Request Broker). Has anybody come up and created one?
TOM: I don't think anybody has done an ORB yet.
MARC: We had the Visigenic ORB, but I think it's gone now. We've been trying to keep the client pretty small.
TOM: The problem wouldn't be the ORB, it would be getting it to behave in a useful manner.
DOC: In a world of all possibilities, and this may not be possible, what would happen if somebody came along and created a DCOM (Microsoft) ORB? Would you care?
MARC: Contribute it.
DOC: So you're agnostic about object models at this point.
MARC: On the application server side, it's both DCOM and CORBA.
TOM: I'm not agnostic if you produce an object model that binds me to a platform. So, when any proposal is made to Mozilla that is not going to migrate to a cross-platform universe, including platforms I don't know about today, I won't take it on. For example, if somebody says, "I want to contribute this thing to Mozilla; but I don't want to contribute the source. I only want to give you a binary. It'll run on all the platforms you're currently supporting." That's not really what Mozilla is all about. I may have to make trade-offs I can't see today; but that's not really what we're for. What we're for is platform independence. Any suggestion, object model or otherwise, we're open to. If you've got a platform issue, I want to solve it. But guess what: we can pile a million people on solving it.
Now the Raptor thing that was contributed halfway through April, they have a thing they call XP/COM, which is a small, lightweight component model thing... I really don't know what kind of mapping that has; but I think it tries to solve the same kind of problems: load a module, unload a module, interrogate a module for supported interfaces, blah blah blah.
MARC: But it's not OLE, it's just COM. That is, it's built on the COM primitives. It uses the COM ideas, but it's not OLE.
TOM: He knows more about it than I do.
DOC: This interests me because this is one of those areas where we've got a large delta between the real and the ideal. A year ago we were all talking about how the world was going to be objects, and that one object model would take care of that, and it looked like a big argument was brewing between two different object models. Now we're you're saying it's still too early in the evolution toward this thing even to talk very much about it.
MARC: I would argue that it's happening, but from the bottom up. Much as to say that C++ and Java intrinsically programs to consist of objects; but it's a programming tool more than a concern right now. But a distributed object world is quite a ways off. It presumes the existence of everything from management systems to application servers, a whole new generation of APIs and many other things that still don't, for the most part, exist. So it has to be built incrementally.
DOC: And you expect the Open Source world to deliver that.
MARC: It could, but it's a little bit tricky. There are sort of three worlds that are relevant here. One is the Open Source world. Another is the professional commercial software development world. The third is the theoretical world where you find most of the people who are passionate about creating a world full of distributed objects. Most of these guys are coming from a relatively intellectual orientation. And so there needs to be an intersection between those three worlds. The intellectuals have traditionally tried to appeal to the commercial software developers, with limited success. They could attempt to appeal to the Open Source developers, perhaps with more success. We'll see.
Meanwhile the main problem is that your average commercial software developer is far too busy trying to put products out the door to try to create a world full of distributed objects.
TOM: On the other hand, there are some objects that they find themselves constantly revisiting. So if they could agree on a nomenclature and interface and get it well-known that, okay, a color-picker is a color-picker, and we can spell it "c-o-l-o-r" or "c-o-l-o-u-r" so let's make a decision move on with it. That's how it could grow up. Incremental agreement based on the need for everybody to move on. But when you sit down and say "let's come up with an object model to solve the planet's problems," it ain't gonna happen in an afternoon.
DOC: Since the dawn of time there have been ideals, and this is the one of the latest of these, I suppose. Looking back, I can remember when "machine independent software" was one of those. It's still with us.
MARC: Machine independent software happened with FORTRAN.
DOC: I remember it from, like, 1980.
MARC: At one of these Java events somebody played a video of an IBM promotional film from 1954, about one of the structured programming languages of the time, and the pitch was that you could write it once and run it anywhere. (laughter)
DOC: Let's look at the Open Source thing for a moment. There's a population out there of Open Source guys that you say is moving toward, or already has, critical mass. The statistics work such that somewhere in this larger population there will emerge some original solutions to problems. But solving problems and pursuing ideals are very different things. One tends to be incremental and trial-and-error while the other tends to be theoretical. Now I'm curious about what brings the Open Source world this practically-oriented problem-solving population into the market conversation.
I just saw an interesting story in Interactive Week (http://www.zdnet.com/intweek/printhigh/51198/nt511.html) about how Linux is in the intranet OS conversation, but not at the top executive level. It tells how this IDC guy went to the chief financial officer at a bank in New York, and the guy said they weren't using Linux, because "they didn't want to run the bank on unsupported software." But when the guy talked to the IS staff, they said they had a hundred servers running on Linux. So when this guy told the staffers what the CFO said, they said he's the guy who gave them a mandate with no budget, so they went out and got Linux." That kind of thing got no coverage before, and now it's getting some.
So where has the browser conversation moved? Has it changed from "hey, they've released the family jewels" to "Hey, isn't it interesting what's happening with those jewells?"
MARC: People are still trying to figure it out. There's quite a bit more knowledge of the product that needs to gather before the understanding breaks through.
TOM: There are some cutting edge people who we'd rather not name who get it, and who are saying "Netscape did that? Yup. Let's go." But they're still in the minority.
MARC: And there are some people at the Department of Defense who are responsible for some of their investment directions. Internally they find a lot of this highly attractive. Because historically they've built all their own systems, and they can fix them if something goes wrong. But since that's prohibitively expensive, they've moved to commercial off-the-shelf hardware and software. The problem with that, however, is that when it needs fixing they have to call a Microsoft 800 hotline just like everyone else. And they're not happy about the idea of building the entire U.S. military infrastructure just on Microsoft products, for obvious reasons. So the prospect of an Open Source world for them is a very exciting one. The prospect of Linux specifically is exciting because it gives them something that gets them the benefit of commercial off-the-shelf software without the risks they see with single commercial sourcing.
The whole point of commercial off-the-shelf for the military is a much broader base of investment happening by a broader community that they can take advantage of, rather than having do it all themselves. Open Source gives them many of those benefits, plus some new ones, like: they can fix it when it breaks, and they're not dependent on an outside vendor. And they certainly have the technical ability to do what they need to do to an existing piece of code.
All of which is why they are getting extremely interested in this development, and in Linux especially. Which is why I think we are going to see the intelligence community be an early adopter of this stuff.
DOC: How much do the Linux and Open Source conversations overlap?
MARC: The Open Source conversation is mostly around specific examples. Linux, Mozilla, Apache. Because the world doesn't yet know is how to extrapolate Mozilla, Linux and Apache to more things. So your commercial IT world looks at it and says "this is never gonna fly with an Oracle database, or with SAP manufacturing applications. So we say fine, let's concentrate on the areas where it's easy to apply the kinds of things we can do today.
DOC: This conversation is so far away from what's going on at Microsoft that it might be worth visiting the difference. Marc, tell me more about how you understand Microsoft's vertical integration strategy especially since what you said about it last time got munged by my tape recorder.
MARC: Well, what I said before was spontaneous. I'm not sure I can repeat it exactly.
TOM: Maybe we can reconstruct from what led into it.
DOC: Okay, I remember a scenario. What would happen if the whole client world is running on Explorer?
MARC: Yeah, if the world goes 100% Microsoft clients, then Microsoft locks down the protocols and the APIs and the access methods to the servers, and then takes over the servers.
TOM: As well as the content creation tools.
MARC: As well as the tools, and then the next step is the content services themselves. Basically I think what we were talking about was, you see over and over again in unrelated industries, a pattern. Historically, computer industries were totally vertically integrated. IBM, DEC, Apple and other companies all built verticalized businesses and then found they were under attack by vendors like Intel and Microsoft and Dell and others that came in with a more open approach at some horizontal level. So if you've got someone who's a vertical provider, with the cost structure implied by that, in a rapidly exploding market, and it's not able to fulfill the market demand fast enough, then that vendor is subject to attack by horizontal providers who are coming in with fundamentally better economics, such as Microsoft with commodity software and Intel with commodity chips, and Dell with commodity PCs.
But then what happens is you get into these situations specifically the one Microsoft is in today where, due to increasing returns and a series of other developments, you have a monopoly, for example with the operating system. So, at that point, for to grow faster than the market's growing, the logical thing is to leverage your monopoly vertically up into adjacent spaces in the stack.
TOM: It's required.
MARC: It's required. They have to, or at least they have to try, to grow faster than the market is growing. That is Microsoft's big problem right now. And they thought they were well on their way to doing exactly that. They thought they were going to leverage the client straignt onto the server. If the world was using a Windows desktop and not all these browsers, they would have been done with this by now. But this browser thing came along between Windows and the user, so they have to establish control of what turned out to be a new level: the browser level, the network user interface level. If they can successfully go to 100% on that, then they can by inference lock down the protocols on 100% of the servers.
In a networked environment, the desktop/browser is the moral equivalent of the TV tuner for content and services. They're going to leverage up into those spaces exactly the same way. So what they're basically doing is going from a horizontal strategy to a vertical one: from a position of monopoly in one horizontal slice where they have monopoly profits and using those monopoly profits to subsidize verticalizing.
And they have a fundamental economic advantage in that they have all this monopoly cash coming in. So they can arbitrarily subsidize losses in other markets.
DOC: Which is why they could nail the KMPG/Peat Marwick deal. (Essentially giving away something at a loss in this case service that Netscape needed to charge for, and winning the business that way.)
MARC: Right. They can write a check to get whatever business they want in a new market, because they have all these monopoly profits coming in from existing markets where their control is absolute. Which is why in the Senate hearings, Senator Cole's questions to Gates about his profit margins were actually very relevant. One of the ways you can tell when a company really has a monopoly is by their profit margins. Because normally competitive technology markets tend to have ten, twenty, twenty-five percent profit margins, net profits. Not forty to sixty percent. So that's one of the ways to see if a monopoly exists.
They actually have so much cash coming in the door now that they actually have a problem nobody has ever had before in this market, which is to find ways to burn as much cash as fast as possible, and in as many creative ways as possible: ways that are going to lose money in the short term. So it is in their interest to burn cash. This is an interesting position to be in.
DOC: And they can do it.
MARC: Yes, but it isn't just that they can, it's that they need to. Because if they don't they'll report even bigger profit margins and the regulators will get real interested. They don't want to prove they have a monopoly. Burning cash is one way to reduce the appearance of monopoly.
Now, this strategy only works as long as you have your core monopoly. The minute you lose that monopoly, you have to compete in that core horizontal slice, and your margins go down. And every other part of your stack becomes vulnerable to attack because you can't sustain your tactics. You don't have all this cash coming in, subsidizing everything.
DOC: I see you compete with that monopoly by changing the game. You did that with the browser in the first place. You made the browser the network interface; and since most of the real business of computing happened on the network, you changed everything. Suddenly what you saw at every trade show, regardless of platform, was a sea of monitors all with browsers that masked the OS in each case.
DOC: And in '96 you did the same thing with LDAP. Changed the game.
MARC: Um hmm.
DOC: The way things were headed before that, Microsoft was going to squeeze the world into the Cairo directory.
MARC: Right. ODSI. Open Directory Services Interface (a Microsoft protocol), was going to be the way everybody was going to do it. Same with mail: MAPI on one side versus POP and SMTP on the other.
DOC: So I'm wondering if you imagine something will arise out of the Mozilla conversation that's a game-changer like the browser itself was, or LDAP was.
TOM: It certainly will. It's a question of when.
MARC: My guess is that there will be a grad student somewhere, say the Netherlands, who's doing a Ph.D. dissertation on a new advanced user interface. And instead of just building something that nobody will ever see, they'll build it on the Mozilla source code base and release it to the Net. Why not? It's not going to sell anyway it's a Ph.D. dissertation, after all. They're going to want as many people as possible to see it, and to get as many job offers as possible. And it's going to change the world. So my guess is we're going to see stuff like that popping up over the next couple of years. No reason not to. We've got something like critical mass here. We have virtually the entire world of computer professionals, especially in the highly creative areas of research and computer science.
TOM: And imagine the alternatives. Here we're going to have this public source and all these people will have the freedom to work in this space, in a space that a hundred million people use in their daily lives all the time. Can you say there won't be any such innovations in the next five years? That's almost ludicrous.
MARC: It's interesting that one of the changes that has happened in the market over the last five years is that client software is now free. Not just browser software and email software, but personal organizers and word processors, spreadsheets. It is now impossible in the software market to make money doing client software of any kind for anything. Microsoft Outlook, for example, is wiping out the independent personal information management (PIM) market.
So you can't expect new innovations to emerge out of the commercial software world that will be highly relevant to end users that come in the form of client software. You can expect them to come as on-line services, perhaps. Or as server software, perhaps, because you can still make money on those without being Microsoft. But innovation in end user software is only going to come out of the Open Source community. It's not going to come out of Microsoft. They don't do innovation here, and they don't have to. And you know the venture capitalists are not going to fund the next company to do the next computer interface, because there's no way to make money on that. And that could end up being the biggest threat to Microsoft two, four, five, ten years from now. Because that's when its core monopoly comes under attack by something that is technologically far superior, with a business model that's far superior. That's when they're really in trouble. Because free is a pretty good business model.
DOC: And you're counting on that grad student out there, writing in Mozilla code, to come up with the killer paradigm shift on the client side.
MARC: First, it would be better for that to happen than for it not to happen, regardless of whether or not we benefit directly. De-stabilization and the heterogeneity of the market is good for us. Stabilization and homogeneity is bad for us. So that's the first part of the decision tree. The next part of the tree is that as these things happen presumably there will be ways for us to make money, either through online service offerings or server software offerings or programming tools or something that wraps around that and provides commercial support.
DOC: So it's wrong to believe it was ever in Netscape's interest to have stabilization occurring around itself.
MARC: That could be true.
DOC: People default to thinking that every company wants a stable situation where they've locked something down and don't need to do anything new in that space for a long time until something comes along that changes the business so totally that they have to start all over again.
MARC: Yeah. Let me put it this way. Every company would like to be in Microsoft's situation, a completely stable situation, with abundant money flowing in. But if that's not reasonable, then the next best thing is to have a constantly de-stabilized situation. It means you have to keep running and doing new things. But that's what makes it fun.
DOC: And you want Microsoft's tractor trailer to chase your four-wheel drive all over new landscape.
MARC: Sure. Definitely.
The Netscape Open Source White Paper provides an excellent background on Netscape's approach to the open source movement.
"New Rules for a New Economy" is an outstanding piece that ran recently in WIRED.Most of Netscape's moves have been in complete alignment with Kelly's rules which makes sense because in many ways Netscape wrote them. Or at least discovered them.
A Platform is a Chinese Household givesDave Winer's alternative software community metaphor.