Fog Creek Software
Discussion Board

Code Reviews

Do you hold regular code reviews at Fog Creek Software? If so, what format do they follow?

John Topley (
Thursday, February 26, 2004

We've tended to do three things that count as "code reviews":

* As products get closer to shipping (e.g. after the first beta goes out), check-ins to fix bugs are reviewed by another programmer. This is very easy to do because of the way FogBUGZ integrates with souce control systems.... when a programmer fixes a bug, they resolve it in FogBUGZ, commit the change, and link the check-in to the bug by typing "BUGZID:1234" in the commit log. Then they assign the bug to another programmer with the comment "for review". The other programmer gets the bug and clicks on the checkin to see side-by-side graphical diffs of the change.

* If a product is already shipping and we are rolling out a live change (e.g. an emergency fix to the ecommerce system), we do pair programming to get "continuous review." This happens about once a month -- don't get me wrong, I don't think pair programming is right for all code, just code where you don't have a safety net.

* New programmers, interns, etc.--- whenever they check something in it is exhaustively reviewed by a more senior developer who gives them copious feedback.

Joel Spolsky
Fog Creek Software
Thursday, February 26, 2004

*  Recent Topics

*  Fog Creek Home