> Given that ajax was only added to browsers in 1999 and AJAX didn't really catch on seriously until 2003/2004ish, what you're claiming is at odds, again, with actual history.
Ajax is not the only way to access a web service.
> 404s are a different matter because you'd get 404 pages
…which are returned with a status code of 404. That's where the name comes from. Non-200 status codes were ubiquitous even back then.
> It doesn't mean developers understood what to return from an ajax call, or that they understood HTTP verbs.
Ajax is irrelevant and we're talking about status codes, not verbs.
> I'll remind you again that it was actually fairly hard to return the correct codes from a lot of frameworks, so objective facts are at odds with your recollection of events.
Perhaps the technology _you_ were using made it difficult, but it certainly wasn't the general case. PHP, classic ASP, mod\_perl, mod\_python, CGI scripts… they could all respond with non-200 status codes easily. Which ones are you thinking of that made it difficult?
> Here are some examples from 2008 of developers on SO discussing things which seem obvious today:
Come on man, clueless questions get asked about extremely well established things on Stack Overflow every single day. That doesn't mean that those concepts are suddenly no longer well understood, it just means that the person asking is a beginner. And neither of those questions mentioned status codes at all!