Which Way Internet?
Tuesday, March 13, 2001 by Dave Winer.
A whole day
I spent all of today talking with people inside and outside of Microsoft, about Microsoft.
Nothing new, the world's largest software company commands quite a bit of attention.
But communicating, really communicating with and about this company is quite difficult.
So much of the discussion is about intention, the quality or color of their heart, but this is a ridiculous thing to discuss. It's a teenager's argument, or a young man's argument, it's not something for adults to talk about.
A company has no heart. We like to anthropomorphize everything, but geez, this is a collection of 45,000 people of all ages, from lots of backgrounds. We could talk about the people as individuals, but that would be meaningless too. None of them have any power to change the thing we call Microsoft. They can try, I can try, and it's for nought. Nothing can change them, so nothing will change.
Nonetheless, I have to make a decision. I've sought help with this decision from people in Silicon Valley, from friends outside the industry, and no one can help me, it seems. I think few people think I actually have a decision. I'll try to explain.
What about SOAP?
I know people are paying attention to SOAP in Silicon Valley, more than I ever thought they would. But what is it that they're paying attention to?
Is it a way to hook into Microsoft's next generation of software? Or is it something greater?
Another way of asking the question -- is it the next generation of COM, one that runs over the Internet, or is it the next layer on the Internet itself?
Ponder that for a moment.
The COM branch
Let's say it's the next generation of COM.
What do I do then? This is a no-brainer. It's easy. Just kick back and let Microsoft's evangelists and technical diplomats do their work. My company will support it, of course, as we support Windows, and so will many others. But it will be up to Microsoft to make it work in the market, I can't help them do this.
So if the answer is that it is the next version of COM and nothing more, then I know what I have to do. But I hope it's more.
The next layer of the Internet branch
Think of the Internet as an onion. At its core are the ancient protocols, the lizard brain of the Internet. TCP is at the core (maybe something is even deeper than that, but I have no idea what it is). The next layer out is DNS, which is an application of TCP.
At the next layer are SMTP, FTP, POP, which depend on both TCP and DNS. More layers until you get to HTTP, and then HTML and GIF and JPEG, to the inner layers these look like mere content, but to the people working on outer layers they look like substrate, the basic ingredients that form the next level.
Now near the outermost layer of the onion is XML 1.0. It's truly a marvel. A lovely specification, frozen in time, never-to-change, and it's so damned flexible, and so completely specified. Every day I work with XML I thank the gods for their gift. It works so well. Thank you. But XML 1.0 is no longer the outermost layer, there's another layer flickering into existence.
There are two forks. One is called XML-RPC, and the other is called SOAP.
Which one will be the next layer of the Internet, or will either of them be?
Now the big companies, Microsoft, IBM, Sun, Oracle, etc, see the world one way, one which I don't understand or want to understand. I made a choice early in my career not to be a company man. I like to create cool stuff and sell it, but I don't fit in at big companies, I don't even like them.
I like the Internet because it always seems to screw with the BigCo's plans for world domination. It's like Bugs Bunny or the Roadrunner cartoon characters. The Internet is always too fast and nimble to ever really get captured and eaten by Elmer Fudd or Wile E. Coyote, although in the middle of each episode it *looks* like it's all over.
I've learned this much, when a BigCo tells you that they "get" the Internet, what they really mean is they think they've figured out how to own the Internet. And so we go around the loop one more time.
Let's get real
No one is excited about SOAP because it gets them connectivity to my products. I wish it were otherwise, I think my products deserve that kind of recognition, but I'm a realist, I know that it's Microsoft that's the draw to SOAP.
Because of that, I am wholly impotent to influence the direction of SOAP. Until a few weeks ago, when the number of implementations started exploding, that was my theory. But then something happened, I got inspired and put up a validator app, and then people started asking me questions about interop, and people asked me to organize an interop event for May, and I got confused, and thought this meant somehow that I had some say in the future of SOAP.
Now I think that I've been asked to be Bert Parks at the Miss America pageant. A contest, rigged perhaps, with blushing runner-ups and here she is, Miss America, I would sing, as a beautiful young woman accepted a crown and a bouquet of roses, with the orchestra playing along and everyone in the audience beaming in delight.
This is what I promised I would never do. If I ever get on a stage with Microsoft, it would mean something. I wouldn't stand up and say this is an Internet standard when it's nothing of the sort.
Even more real
Internet standards happen quickly while no one is looking.
I don't know the actual history of each layer, but I'd bet my Master's degree that it's true of every standard we use now. Done in the quiet, dark, somewhat fetid room of a Lone Geek, programming into the wee hours, only interrupted by the occasional janitor or trip to the fridge for another caffeinated drink.
Now this is not the story of SOAP. It's been a political football for three years, and the struggle shows no signs of abating. We now have 39 implementations that are not known to interop. And the BigCo's are acting like BigCo's and to their credit, are showing impressive signs of working together, among themselves, but there aren't many Lone Geeks in the loop.
What is the Internet saying?
I have a very small company, so small that in contrast to the BigCo's I'm basically a Lone Geek. I have tried the best I can to get them to work with us, but it's entirely been a one-way street -- they leak to us the things we're supposed to do, long after they've started doing them. And when we propose things we should do together, there's not been a response since the first query in early 1998. There's a remarkable imbalance, and of course since I'm not a BigCo, and don't work for one, what I want to do matters not one bit, net-net.
Sometimes I think this is the Internet saying to me "Your work is done here."
Chicago's Cubs fans
Sidebar. I grew up a Mets fan, always in the cellar of the of the National League, unless the Chicago Cubs were there. We Mets fans had a bond with the Cubs fans, and in some ways they had a cooler stadium because they had outfield bleachers.
When an opposing team hit a home run, the tradition at Wrigley Field was to throw the ball back on the field, as if rejecting the home run. "We have better things to do, we're too busy to deal with this now" the Cubs fans seemed to be saying. Of course if Shea Stadium had bleachers like this we would have done the same, I'm sure.
Now what I love about this is the arrogance of the disempowered. We have no power, us cellar-dwellers, us independent developers. But we can be arrogant anyway. ;->
So here's my query
What is SOAP?
Is it a Microsoft spec, or is it a layer of the Internet?
Do we join XML-RPC with SOAP, or simply use XML-RPC and throw the SOAP ball back onto the field. Or do we take ownership of SOAP, thanking Microsoft for their contribution, and make it the next layer of the Internet, including the BigCo's, but not allowing them to call the shots. Or do we remain in the gutters and under the bridges grousing about the BigCo's and their greed. Or do we do something fun and empowering and out of character?
It's a remarkably fluid point in time. I think the BigCo's are confused. If the Internet has something to say about this, please say it.