Dare Obasanjo writes:
Right now, there is the primarily HTML-powered Web which whose primary clients are Web browsers and search engine bots. For better or worse, over time Web browsers have had to deal with the fact that Web servers and Web masters ignore several rules of the Web from using incorrect MIME types for files to having malformed/invalid documents. This has cemented hacks and bad practices as the status quo on the HTML web. It is unlikely this is going to change anytime soon, if ever.
Where things get interesting is that we are now using the Web for more than serving Web documents for Web browsers. The primary clients for these documents aren’t Web browsers written by Microsoft and Mozilla and bots from a handful of search engines. For example, with RSS/Atom we have hundreds of clients with more to come as the technology becomes more mainstream. Also Web APIs becoming more popular, more and more Web sites are exposing services to the world on the Web using RESTTful approaches. In all of these examples, there is justification in being more rigorous in the way one uses HTTP than one would be when serving HTML documents for one’s web site.
In conclusion, I completely agree with Robert Sayre’s statement that there are really two kinds of HTTP. One is HTTP-For-Browsers, and one is HTTP-For-APIs.