Como, ao desenvolver um projeto de tamanho médio, você identifica, cria e mantém códigos de erro?
Pela minha vida, não consigo pensar em um método simples e limpo de fazê-lo. Algumas de minhas idéias convertem nomes de classes e nomes de métodos em uma sequência inteira, mas essa é uma maneira longa de exibir para o usuário, além do fato de que nomes de métodos e nomes de classes podem mudar (espero que não!). Outros estão apenas usando um sistema de log incrementado (ou seja, sempre que eu criar uma nova mensagem de erro, basta adicionar 1 ao último ID da mensagem de erro). Mas isso é completamente desorganizado.
Para ser mais específico, estou falando de código de erro, como:
Error 401 Unauthorized.