Текущий проект (софтина под windows, клепаемая в линуксе на нс С++) использует некоторый интерфейс межпрограммного взаимодействия (API). Который был написан другим человеком. И человек этот, решил что ошибки от сервера к клиенту надо передавать в виде текстовых строк. И никак иначе - "их же все равно юзеру показывать".

А всякие числовые код - не нужны.

А я вскгда думал что далеко не каждую ошибку в ПО надо демонстрировать пользователю. Юзера они ж все равно тупые вылезающие мессадж-боксы закрывают, клацая по кнопке "Ок". И не читают что там приложение или операционка желает до нести до их мозга.

Некоторые ошибки нужно просто обработать, без каких-либо уведомлений пользователя (ну может в пользовательском интерфейсе чего-нить xenm изменить). И тут error codes таки рулят и педалят.

Увы, некоторые кодер-куны этого не понимают.