> It's better to forbidden use required field in Thrift or ProtocolBuffer. We could not remove it in the future and there will be a lot of rubbish code. For example, version hash, schema hash.... It is too terrible!!!!! I have removed required