Slashdot Mirror


Are You Too Good For Code Reviews?

theodp writes "Why do some programmers,' asks Chris Hemedinger, 'place little value on code reviews?' This apparently includes even Programming Greats like Ken 'C' Thompson, who quipped, 'we were all pretty good coders' when asked about the importance of code reviews in his work. Hemedinger, on the other hand, subscribes to the school of thought that peer code reviews are Things Everyone Should Do. Not only do reviews keep you on your toes, Hemedinger says, they also 'improve quality, ensure continuity, and keep it fresh. Who can argue against that?'"

11 of 495 comments (clear)

  1. We need more testers / QA as well by Joe_Dragon · · Score: 4, Insightful

    And some of that needs to testers who are NOT coders or people who are not mainly doing programming.

  2. I agree 100% by jlechem · · Score: 4, Insightful

    I have worked in places with and without code reviews. Yes code reviews can be painful especially if you work with some douchebags. But overall getting new eyeballs looking at your code often brings up things you hadn't thought about, etc. It doesn't make you or the other people bad, it's just how it is. Drop the ego and take some constructive feedback.

    --
    Hold up, wait a minute, let me put some pimpin in it
    1. Re:I agree 100% by flooey · · Score: 5, Insightful

      Yes code reviews can be painful especially if you work with some douchebags.

      I don't think the problem there is the code reviews.

  3. I'm not too good for code reviews by jeff4747 · · Score: 5, Insightful

    I'm too busy for code reviews.

    Development schedules are almost always ridiculously compressed. There's no time in the schedule for code reviews. Just like there's no time for thorough testing.

    But the software only has to be 'good enough' for people to buy it, so there's no ammunition for developers to use to get a better schedule.

    1. Re:I'm not too good for code reviews by alexo · · Score: 5, Funny

      Which is pretty much why I gave up on computer science and am moving into Geology instead.

      I heard that Geological processes have pretty relaxed schedules.

  4. The problem is poor developers... by rtilghman · · Score: 4, Insightful

    The problem is that the need for code reviews is driven by lax, sloppy developers who don't see regression testing as a requirement, and who foist crappy, untested code that, in many cases, they haven't even tested.

    As a consulting exec (experience side) who oversees software delivery I can't even begin to express the stunning crap that I see developers submit for "qa/review". Crap that doesn't even WORK correctly in the first place is submitted for testing, with the QA feedback often "Does not work". Aside from the hours of UE and QA resources this burns with useless testing, it highlights what I think is both an increasing lack of accountability and a lack of professionalism within the development community in general.

    What's driving this I have no idea... less formal CS training? Looser languages? Web-centric apps? Lower end standards? Higher demand = more crappy resources? Whatever it is I'm seeing it everywhere, and it's driving me nuts. The lack of an appreciate for regression testing is absolutely insane... code reviews are just symptomatic of a larger problem, which is a lack of quality and skill.

    -rt

  5. Code review as a method for knowledge passing by Anonymous Coward · · Score: 4, Insightful

    I tend to use code reviews as a method for showing other team members the work that I have done so they will know about the changes. I work with a large number of geographically disperse people and having 1:1 conversations about every little change can be tiresome and wasteful. Code reviews are an excellent way to get around this problem.

    Another bonus for code reviews, along the same lines - is in teaching people new to a platform about the kinds of bugs to expect when working on the platform.

    It also keeps me honest, did I just add a debug, or do I also need to add trace? If I forgot the trace, code review will pick that up.

  6. Re:Pure Arrogance by MadKeithV · · Score: 5, Funny

    Colleague of mine used to have the following sig: "Write code as if the person who will be maintaining it is a violent psychopath who knows where you live."

  7. Re:Pure Arrogance by DrgnDancer · · Score: 4, Interesting

    Because if it's written with an eye only towards effectiveness, and not towards standards and readability by others; then by the standards of any project larger than "A script I use to clean up my home directory" it's crappy. He's being kind of an arrogant ass about it, but his overall point is completely valid. If you quit or get run over by a bus tomorrow, and I (for a value of "I" that indicates a competent peer familiar with your company's standards and the language in question) can't pick up your project/module and continue development/support then it's not "good" code no matter well it works. That doesn't mean you can't be creative and awesome in your implementation, it just means you have to write the shit so someone else can read it; and in a pinch finish/fix it. That's what standards are for.

    --
    I don't need a million points of light, just two points of multi-mode fiber and a 10 Gig-E router.
  8. Re:this by Omnifarious · · Score: 4, Informative

    I've caught bugs in code review that would never in a million years have been caught by testing. The customer would've encountered them sporadically, and in situations in which they'd come to rely on the broken behavior working implicitly. The would've submitted a bug report and we would've been unable to replicate the problem in house. The customer's opinion of us would be lowered, and we'd have all these bug reports in our system that nobody could figure out.

    That is, until someone reviewed the code and discovered the bug.

    So, basically what you're doing is robbing Peter to pay Paul. By not doing the reviews you end up with less time in the long run, not more.

  9. Re:Pure Arrogance by Reality+Master+101 · · Score: 4, Funny

    He's being kind of an arrogant ass about it,

    I earned my Arrogant Ass Badge honestly through hard work and paying my dues, so I reserve the right to pull it out on occasion. :)

    --
    Sometimes it's best to just let stupid people be stupid.