Mashup Hype Cycle and Web APIs, the HtmlMeta tag, and Round Manhole Covers

"Adults are just obsolete children and the hell with them." -- Dr. Seuss

I follow ProgrammableWeb in the API space just to try to keep track of what other people are doing, and found an interesting tidbit from Gartner:

"According to the just released 2006 Emerging Technologies Hype Cycle mashups are nearing the hype cycle peak. They get a rating of moderate and Gartners analysis is that:
Mashup is rated as moderate on the Hype Cycle (definition: provides incremental improvements to established processes that will result in increased revenue or cost savings for an enterprise), but is expected to hit mainstream adoption in less than two years. A mashup is a lightweight tactical integration of multi-sourced applications or content into a single offering. Because mashups leverage data and services from public Web sites and Web applications, theyre lightweight in implementation and built with a minimal amount of code. Their primary business benefit is that they can quickly meet tactical needs with reduced development costs and improved user satisfaction. Gartner warns that because they combine data and logic from multiple sources, theyre vulnerable to failures in any one of those sources."

This is certainly true - especially the vulnerability aspect. If a single page web-scrape can fail because the site changes their CSS layout, then obviously a multi-source mashup has n * source chances to get mucked up.

Of course, an interesting side-note on this is that the "Gurus of Gartner", in their never-ending quest to hype their own brand of "holier-than-thou", "We are the experts" drivel, have now apparently coined YABW (yet another buzz word), "Hype Cycle"!

Recently there was some fluff on Digg over an article about "How to provide a web API". Besides simply stating the obvious and providing no real added value (at least, not to me) the article itself was not revealing. In addition, the post about it was littered with comments about how "REST" is the way to go, and "why aren't there SOAP extensions for REST", etc.

Fact of the matter: REST isn't an API or a specification. Its a TECHNIQUE, and the implementations of it vary widely. SOAP, on the other hand, IS a specification.

Essentially REST is saying, Look- I know you're a dummy, so just put all your shit on the querystring and I'll take care of it and send you back well-formed XML anyway. And, Whoopee -- you don't even have to peel off the SOAP envelope, cause it won't be there!

REST is a technique, not a standard (or even a specification) and there is no such thing as machine discoverable REST as there is industry standard WSDL for SOAP.

So, before we go "hyping off the cliff" with more buzzwords and no parachutes, let's get our facts straight - and make an effort to keep our Hype Cycle Mashups from jumping out of the frying pan right into the fire.

The new HtmlMeta Tag

In Asp.Net 2.0, dynamic SEO on pages gets easier. Consider this code which dynamically writes the META description, keywords, and the page Title tags, all of which could come out of a database record:

 protected void Page_Load(object sender, EventArgs e)

// Create two instances of an HtmlMeta control.            
HtmlMeta hm1 = new HtmlMeta();
HtmlMeta hm2 = new HtmlMeta();

// Get a reference to the page header element.            
HtmlHead head = (HtmlHead)Page.Header;

// Define an HTML element that is useful for search engines.
hm1.Name = "keywords";
hm1.Content =
"words, that, describe, your, web, page";

// Define an HTML element for description tag.
hm2.Name = "description";
hm2.Content =
"This is a description of this page!";

// populate the page Title element            
this.Title = "A brand new way to populate META Tags!";

-- I distinctly remember being impressed when I heard there are twice as many classes in .NET 2.0 than in .NET 1.1. Everything in the above example is new in .NET 2.0!

Why Are Manhole Covers Round

You may or may not have seen this recently; it used to be a popular interview question at Microsoft if you wanted to get hired:

Why are manhole covers round?

Pick your poison:

1) Manhole covers are round because manholes are round.
2) A round manhole cover cannot fall through its circular opening, whereas a square manhole cover may fall in if it were inserted diagonally in the aperture.
3) Round covers are much easier to manufacture.
4) Circular covers do not need to be aligned to put them back.
5) A round manhole cover can be more easily moved by being rolled.
6) Round tubes are the strongest and most material-efficient shape against the compression of the earth around them.
7) The Three Stooges wanted them that way, and people have been doing it ever since.

And the correct answer is .... (Nyuk nyuk) -- they're all correct; there is no "right" one!