While many web visionaries are busy advocating the correct use of ETags and URIs etc etc, I just wish people could get the very basics of HTTP right. I’m not even talking about mime-types here, just status codes would be a really good place to start.
If you’re returning the page as requested, use 200.
If you’re returning a server error, use 500.
If the requested page doesn’t exist, use 404.
If you can follow even just those three rules, you’ll make life so much easier for user agents. Anything about that is great too, but whatever you do, please get these basics right.
Epic fail to IIS and IBM Portal on these points. Something is seriously wrong with the internet…