Congratulations to Tim on his new position at Sun.

In an interview he gave about the move, he said something interesting that I’d like to comment on. When asked whether he’d looked into peer-to-peer technologies, he said;

Only trivially. That has some roots of its thinking in the old Linda [parallel programming coordination language] technology that [David] Gelertner did years and years ago, which I thought was wonderful and which I was astounded never changed the world. But I have been working so hard on search and user interface and things like that for the last couple of years that I haven’t had time to go deep on JXTA.

Linda – or something very Linda-like – did change the world; the World Wide Web.

I’d really love to get Tim’s views on Web services. He’s said a handful of things on REST/SOAP, etc.. , almost all of which suggest that he totally gets the value of the Web (unsurprisingly). But he’s also said some things which have me wondering whether he appreciates the extent of the mistakes being made with Web services.

BTW, I wonder what’s going to happen on the TAG now that both Tim and Norm are at Sun, given that the W3C process document doesn’t allow two members from the same company? Either way, it will be a big loss to the TAG. Bumber.

Update; Tim resigns

I stumbled upon an “old” paper by Dan Larner yesterday that I first read when it was published back in ’98, but had forgotten all about. I find it poignant today not because I agree with its conclusions (I don’t), but because it so well describes the tension between specific and generic interfaces, albeit without actually acknowledging the tension 8-O

I liked this image in particular;

At the top you see the generic objects/interfaces, while at the bottom are the specific interfaces; Printer, Scanner, Copier (this is Xerox, after all). But why do those services require specific interfaces? Check out the methods on Printer; Print, CancelJob, Status. Why is that needed? Why can you just not call GET on the printer to retrieve it’s status, POST to the printer to print a document, and DELETE on a job resource (which is subordinate to the printer) to cancel a job? Simple.

Many of the folks behind HTTP-NG were from PARC where ILU, a CORBA ORB with some funky extensions, provided the impetus for their W3C contributions. Like Web services proponents, their backgrounds were with systems which didn’t constrain interfaces, and so it was pretty much an implicit requirement that HTTP-NG would need to support specific interfaces by basically being a messaging layer ala SOAP. It’s too bad they didn’t take the time to study what was capable with the HTTP interface specifically, or even constrained interfaces in general. I think that’s a big part of the reason why HTTP-NG flopped.

The W3C has published (amoungst other things) RDF, RDF Schema, and OWL as Recommendations.

Bravo! A job well done by everybody involved.

Bill de h&#211ra on Web services;

In early 2004, the Achilles heel of web services is the complexity resulting from the sheer volume and lack of coherence in the web services specs and a lack of architectural guidance from the folks generating them

Yup, big +1

And now that the Web Service Architecture WG is closed, I wonder where this guidance will come from? That’s why I’m honestly disappointed at its closing, despite voting against its chartering as a W3C AC rep a couple of years ago.

Dave Orchard wrote, and Don Box concurred, that it’s a good thing to avoid registration at the likes of IANA and IETF. I also concur, as my hopefully-soon-to-be-BCP Internet Draft with Dan Connolly describes.

Where I disagree with Dave and Don, is summed up by Dave;

XML changes the landscape completely. Instead of having a small number of types that are registered through a centralized authority, authors can create arbitrary vocabularies and even application protocols through XML and Schema. In the same way a client has to be programmed for media types, a client must be programmed for xml types and wsdl operations.

IMO, XML doesn’t change the landscape in that way at all. It’s always been possible to have an explosion of data formats and protocols; 10 years ago you could have done it with ASCII and ONC or DCE. The fact of the matter is that we don’t see these things on a large scale on the Internet because most people don’t want them. Not only is it expensive to develop new ones – even with a fine framework for their development, such as SOAP & XML Schema – but you’re very typically left amortizing that expense over a very narrowly focused application, such as stock quotes or shoe ordering, or what-have-you. The Web and Semantic Web efforts are an attempt to build a supremely generic application around a single application protocol (HTTP) and a single data model (RDF). Now that’s landscape-changing.

Along with most everybody else I imagine, I had a look over the Avalon/WinFS stuff from Longhorn this week. Jon Udell sums up my position better than I could;

Yeah, “embrace and extend” was so much fun, I can hardly wait for “replace and defend.” Seriously, if the suite of standards now targeted for elimination from Microsoft’s actively-developed portfolio were a technological dead end, ripe for disruption, then we should all thank Microsoft for pulling the trigger. If, on the other hand, these standards are fundamentally sound, then it’s a time for what Clayton Christensen calls sustaining rather than disruptive advances. I believe the ecosystem needs sustaining more than disruption. Like Joe, I hope Microsoft’s bold move will mobilize the sustainers.

Yup, bingo. I was shocked when I realized that they were completely reinventing the wheel here for no (really) good reason … except that somebody high up figured, as Jon says, that the Web was “ripe for disruption”. As much as I dislike many of MS’s business practices, I have the utmost respect for the company and the people there. But man oh man, what a stinker this stuff is. Remember Blackbird? Did these guys forget that they own the browser? If they had done this properly, they could have had the rest of the industry playing catch up to their Web extensions for the next five years or more. What an enormous gaff. Wow.

Just as an example of some things that they could have extended the Web with, consider these;

  • client-side containers for stateless session management; requires HTML extensions (drag-and-drop, events, etc..)
  • Web-browser-as-server for async notification; ala mod-pubsub
  • Advanced forms (XForms/Infopath/RDF-Forms); that Infopath is stuck in Office land is criminal
  • Web-friendly structured storage, where URIs are file names (yes, I meant it that way around)
  • Better HTTP proxy integration via per-request message routing, rather than per-connection routing which we currently have

All but the fourth require non-trivial, visible extensions to the Web … and the W3C and IETF aren’t currently touching them (except for forms).

I saw a BEA press release the other day, and was feeling a bit cheeky tonight, so I threw this together. April is just too far away. 8-)

Press Release

BEA embraces the Web for integration
Friday April 1, 2005 6:00 am ET
Regrets role in Web services.  Vows to get down to business to solving
customer integration problems.

SAN JOSE, Calif. -- BEA Systems, Inc., the world's leading application
infrastructure software company, today announced that it was
discontinuing any further support of "Web services", and was announcing
sweeping organizational changes that will better position it to produce
high quality products that enable the creation of services built on the
architectural principles that have made the Web such a success,
including the constraints of the REST architectural style.

"It boggles the mind to realize what a huge mistake had been made with
Web services, and how this awesome integration platform - the Web - was
right under our noses the whole time.", said CTO Scott Dietzen.  "In
retrospect, it's all so obvious, but that's small consolation when you
consider how much time and money we've wasted these past few years".
CEO Alfred Chuang added, "BEA is proud to be the first major application
infrastructure software company to close the book on this dark chapter
of IT history.  We apologize to our existing customers for our role in
this debacle, and look forward to working with them to help put their
services where they belong, on the Web".

The company also announced that David Orchard had accepted the role of
Chief Architect of the newly formed Semantic Web group, whose mission
will be to integrate the W3C's Resource Description Framework into BEA's
products, enabling customers to further simplify data integration tasks.
"That's still XML, right?", Dave was heard to say shortly after learning
of his new assignment.

About BEA

BEA Systems, Inc. is the world's leading application infrastructure
software company, providing the enterprise software foundation for more
than 15,000 customers around the world, including the majority of the
Fortune Global 500. BEA and its WebLogic(R) brand are among the most
trusted names in business.

Headquartered in San Jose, Calif., BEA has 77 offices in 31 countries
and is on the Web at www.bea.com.

Mark Nottingham suggests the W3C should take it upon themselves to clean up the media type registration process. I sort of concur, in that the official registration procedure doesn’t explain in sufficient detail how the burden of managing the timeline is entirely registrant-driven. This caused lots of delay during the registration of RFC 3236.

But on the other hand, I like it when centralized registries are difficult to use. If there’s really a need for a bazillion different data formats, then a centralized registry is the wrong approach, and the difficulty of using it – multipled by the number of people experiencing it – should provide sufficient impetus for somebody to suggest a change to a decentralized process.

Of course, I don’t believe we need a bazillion different data formats. I think we have a perfectly good 80% solution, which is why I’m not spearheading any efforts in this direction – though I think it would still be useful (just not required) to decentralize media types.

P.S. here’s an amusing data point, where Roy takes the W3C to task over its inability to properly register media types.

For those not familiar with it, the W3C’s www-archive public email archive is a great place to peruse some behind-the-scenes activities which are public, but not announced. It’s also home to a lot of Tim and Dan‘s discussions which are redirected from other mailing lists. Well worth following.

While checking it out yesterday, I found this gem from Roy Fielding on ambiguity in identification and the need to confront “secondary semantics” that result from that ambiguity.

In 5 or 10 years, people are going to look back on these archives (and perhaps the RESTful ones on www-ws-arch 8-), and realize that these were actually some of the most advanced and important du jour topics in large scale distributed systems research and practice … a far cry from the esoterica that it must seem to Web services proponents. I’m humbled when I realize how fortunate I am to have understood this early enough (only five years late, relative to 1993 when I first learned of the Web! 8-) to be able to make a contribution to the World Wide Web project, if only through education and evangelizing (hey, somebody has to do it!). I’m confident it will be my professional legacy.

Woot!. Congratulations to everybody involved in its development (including me!).