Things Everyone Should Do

The biggest thing that makes Google's code so good is simple: code review. That's not specific to Google - it's widely recognized as a good idea, and a lot of people do it. But I've never seen another large company where it was such a universal. At Google, no code, for any product, for any project, gets checked in until it gets a positive review.

Everyone should do this. And I don't just mean informally: this should really be a universal rule of serious software development. Not just product code - everything. It's not that much work, and it makes a huge difference.

Well, I mean, developers, obviously.  Unless you're really into code reviews, for some reason.  Hey, man - I don't judge.  Whatever floats your boat.

As a friend commented, "I didn't realize code review is still a topic of of 'should' instead of 'how'."

A combination of git, trac, and reviewboard helps make the whole process surprisingly painless.


Borepatch said...

And run fuzzers.

Samrobb said...

And static code analysis tools... I've been a happy splint user in the past, but it looks like the only hope on the OSS horizon for C++ static analysis is clang.