One Year Later
By Gregp on Apr 08, 2005
I vividly remember a talk in 1998 by Eric Schmidt when asked if the Internet was being over-hyped. He responded resolutely. "No, it's under-hyped." And, he went on to explain something that we know all too well in tech; most things are over-estimated in the short term and under-estimated in the long. The more extraordinary it is,the greater the spread in expectations.
Sun and Microsoft announced a year ago April 2nd that we were going to do something close-to extraordinary: cooperate. All kinds of things were freezing over, dogs and cats starting living together, the Sox won the World Series, and Sun and Microsoft engineers started communicating. They even have pictures!
The touchstone was pretty simple to state. "Focus on our mutual customers." And their messages were clear and scarily consistent. The lack of any substantial technical cooperation over the last decade has created needless cost and complexity. Something I have come to term "gratuitous incompatibility". At the top of everyone's list is all about identity, from directory synchronization to single sign-on. Right after that are issues around systems management, virtualization, and developer productivity for web services.
The issues, by the way, are not about some missing wad of software, but about getting our stacks to interoperate. In fact, the "interoperate" message is louder than even the "standardize" one. Simply put, everyone is fed up with getting our stuff to work together in the field as An Exercise Left to the Customer.
So what have we been doing? Systematically going through the places where our stacks touch one another, and then locking the respective architects into conference rooms until they figure how the stuff is really supposed to work together. And, at times, it has been really trying for both teams. Why? Because software architects are the Artiste's of the IT industry. Often, things are more driven by taste, judgment and perspective than they are by quantifiable technical tradeoffs. Imagine having to get Gaudi and Wright to agree on a doorway between two rooms. After raging debates they will likely settle on something that looks familiar from the perspective of each room. It's likely that the technical specifications of minimum height and width were agreed upon quickly.
So goes our relationship. Just look at the places where we are sitting at the table together, with some real architectural progress having been made in the areas of identity, web services and management. (As examples: WS-Addressing, WS-Management, WS-Eventing, WS-MetadataExchange)
And, we are now to the stage of publicly committing products around these agreements. Real Soon Now.
Of course, I've made all of this sound "new", but the fact is that we've both had to deal with interoperability and standards issues with one another for a long time. For our part, it's been things from StarOffice and OpenOffice, to mail and messaging to really well-integrated to WS-I web services as a core part of J2SE. The important difference now is that we are able to do a lot more --- more efficiently and effectively --- simply because our people are talking with one another.
On a personal level, the experience has been extraordinary. Everyone always asks me what it is like to have 1:1's with Gates, and the answer is not what most people expect. He's got two sides of his personality: a smart, genuine and very approachable geek (I found that surprising) and a hard-edged business guy (not surprising). I truly enjoy our interactions when we are in geek-mode. There is broad common ground on where things are going, what are problems with getting there, and why we need a relentless focus upon innovation. And let's just say I feel differently when his biz-mode kicks in. 'Nuf said.
The culture is also hard-working, and Gates surrounds himself with some very smart folks (I've had the pleasure of working with the likes of John Shewchuk and Andrew Layman). At an IQ level, it feels like Sun. People are passionate about what they do and have the grey matter to back it up.
All this being said, there is this deeply entrenched fundamental difference in perspective. Microsoft tries to perfect the closed system. And by this I mean in the "closure" sense, not in the interfaces sense. Longhorn is fashioned to be self-consistent, meaning that when all of the pieces come together, they are designed to create this uber-architected interlocking machine. The primary value is that it all works together. It's integration.
We (Sun) try to perfect the open one, meaning that we try to maximize
the value of innovation that occurs elsewhere. It's not the way the
pieces interlock, but the way that the new ideas of others layer. It's
inherently messier --- less Cathedral and more Bazaar --- but, in our
belief system, more robust future-proof-wise and more inclusive and
participative (e.g., the JCP
Once we set the emotional issues aside, it's actually pretty straight-forward to frame interoperability with the Microsoft architecture. There is a lot of it to be sure, but at a pragmatic level, it's simply another (important) set of protocols over which we federate.
What should you expect from the relationship going forward? Each of us will defend our approach and we'll compete like crazy. I'm a big believer in innovation networks and the perils of over-architecting, and (obviously) won't pull punches on the topic. But, shame on us both if we don't truly reduce the complexity of developing, deploying and assuring network services.