Linux like code style. use make precommit to format code