Aber die objektorientierte Programmierung und Cocoa sind ja so ein Gewinn für die Benutzerfreundlichkeit.

Was hat das mit den Fehlermeldungen zu tun? Verstehe ich nicht, bitte erklären.
Sie sind seit dann so wenig aussagekräftig, wie sie eben heute sind. Vor OS X waren präzise Fehlermeldungen eine Tugend, mit welcher Apple glänzte. Heute kriegst Du, gerade bei Apple-Software, kaum noch mehr, als eine simple Info, dass irgend etwas nicht geklappt hat. Das eine Objekt weiss nicht mehr, was das andere tut und erfährt nicht mehr, als dass eine gewünschte Aktion nicht ausgeführt werden konnte.
Heisst natürlich nicht, dass präzises Fehler-Feedback nicht auch objektorientiert möglich wäre. Es ist IMO aber umständlicher und aufwändiger und bläht den gegenüber prozeduraler Programmierung sowieso schon aufgeblähten Code noch mehr auf. Daher hat es heute offensichtlich nicht mehr jenes Gewicht, das es bei Apple einst hatte. Leider.