Dienstag, 18. Oktober 2011

Post Meetup: October 2011 (Code Reviews)

Just a quick recap from yesterday's meetup:

Twelve agilists met up in Tarent's awesome kitchen/meeting area, where we were welcomed with sweets, snacks and drinks. Thanks again for hosting us! I did a (somewhat shaky) demonstration of Gerrit, and then we had a long discussion on how to apply Code Reviews as an (agile) practice. We filled up a couple of whiteboards with notes:


(If you can read any of that, I apologize for my lousy German spelling). Here are some of the keywords:

We started by discussing what can make code review successful, or what makes people happy about it. Security was mentioned. Motivation (someone will actually look at the wonderful code I've produced!). It has to be self-driven from the team, not forced from above. Consensus on the quality of the code. You need to have a critical mass of people engaged in doing reviews. Don't allow the reviews to become a bottle neck. Face-to-face reviews are great, but code review is perhaps even more necessary in distributed teams (but then you need to write really good commit messages!).


How can we do code reviews?

General/lieutenant scheme might work well in open source projects, but no so much in companies. The co,mitter should invite a reviewer (anyone got a sec to review this bit of code?). Don't nail it down into processes and roles . Don't leave the reviewing to seniors, mix and match. Reviewing is a learning process.


Code reviews might be a practice that is initially easy to get accepted, politically and culturally, compared to pair-programming. If introducing pairing is not working for you, maybe code reviews will work. If you are doing pairing, maybe reviews aren't necessary (although they can have a good effect in bringing in a fresh pair of eyes, more objective view on the code).

Perhaps pair programming is more useful in creative development. When doing maintenance, perhaps code reviews are better suited.

We're collecting related interesting links in this thread on the mailing list. I also started a discussion on Google+ about code reviews, that got quite active, but unfortunately I didn't mark it as Public, and therefore I can't get it out there now. I did however copy it into another mail thread. Feel free to keep on discussing in that thread!

Looking forward to the next meetup! Any ideas for topics are welcome (in the mailing list).