validation and client feedback