def set(self, field, value):
        """
        Sets the value of an app field.

        :param str field:
            The name of the app field. Trying to set immutable fields
            ``uuid`` or ``key`` will raise a ValueError.
        :param value:
            The new value of the app field.
        :raises: ValueError
        """
        if field == 'uuid':
            raise ValueError('uuid cannot be set')
        elif field == 'key':
            raise ValueError(
                'key cannot be set. Use \'reset_key\' method')
        else:
            self.data[field] = value