Missing Code Reviewing…

When I started working at Picsel Technologies Ltd I’ve learnt a lot about code reviewing and here is a summary of my experience with it:

  • First you hate it
  • Then you understand it
  • Then you love it
  • Then you miss it (a lot!!!!)

First you hate it
when a colleague reviews your code:

My first impression of code reviewing was like WTF!?! How dare another developer check if my code is ok? I’ve put all my energies in writing that piece of code and sure it is perfect!!!! And he cannot have a better idea than mine!!

when you review someone else’s code:

Why do I have to spend time looking at other people’s code? I have enough to do during the day FFS!

Then you understand it
when a colleague reviews your code:

MMMMhhh… yes you are right I can improve it here, and yes I forgot to comment that big algorithm…

when you review someone else’s code:

Ahhhh look here, I can learn a lot from this implementation! great!!

Then you love it
when a colleague reviews your code:

WHOOOPS, you are right I didn’t think about the implication this can create to the legacy code, you saved the trunk to be broken :)

when you review someone else’s code:

WOW look at this class it’s perfect, the comments are clear and there is no duplication of code, I’m happy with it this can go in the class library.

Then you miss it

New job and no code reviewing (or pair programming) = everything works for the first few months… then it blows up!!!
And also you don’t learn anything new…

Yes , in my new job, I’m missing code reviewing… to be honest I would prefer pair programming but that is like rocket science for some employers/PMs :) and also in most companies they don’t see the value of sharing knowledge!
The secret of pair programming is that you can pair with colleagues that use a different technology from yours, so you will learn new languages, architectures etc. and then you become interchangable over all your team.

This entry was posted in Agile, Thoughts. Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.
blog comments powered by Disqus