Over the years I've seen many strange error and warning messages. Haven't we all? While working with several lead-developers on logging guidelines my thoughts about logging/error messages were confirmed once again. Let the software give useful to the right person.
In a large company like the one I work there are a lot of stakeholders regarding the maintenance of software. Of course the user is one of them, but the developer maintaining the software is another. And of course there are the DBA's, server people and the network guys. To keep this complex situation maintainable a developer must give useful error and warning messages to the right person or people. Even in a small environment, for example a home computer user, these useful messages must be given.
This is hard. In every layer of the software we need to be conscience about what we are doing and what place the piece of the puzzle we are programming has in the total puzzle. Situations in which our software fails or the surroundings of our software fail are also functionality that requires design.