404 – Why do web "masters" no longer follow HTTP specifications?

Today, I had major headaches related to a JSON blob in a URL that returned data, and I reported "200 OK" as the HTTP status code, but it didn't seem to be valid JSON.

I finally looked at the actual data, and then it was revealed that I had been sending small HTML pages with an English text of "Too many requests", instead of JSON data. Again, "200 OK" was the HTTP status code.

I see this over and over again. Everything is reported as "200 OK", even if it contains obvious errors. If you're lucky, you can get a 404 (often abused as a "general error" code) or 403 Forbidden, but that's getting weirder.

Why have you stopped following the basic HTTP specifications? Is such a large percentage of all people involved in something related to the Internet really so stupid and incompetent? If so, it is scary.