what about error codes (numeric and textual)? that seems like a common pattern we use