4 ms·
That’s incredibly cheap, assuming it provides good suggestions. How much time does it take you to review 500 lines of code change, and what’s your time worth?
by auslegung 7y ago
That’s incredibly cheap, assuming it provides good suggestions. How much time does it take you to review 500 lines of code change, and what’s your time worth? If it takes 10 minutes and your time is worth about $20/hour or more, this service will part for itself immediately.
- dajohnson89 7y agoYou seem to assume that the code review tool can do everything that a human code reviewer can.
- kerpele 7y agoOn the other hand, a machine will not get tired or bored where a human most definitely will if the diff is anywhere near that 500 lines
- scriptkiddy 7y agoI disagree. I regularly review PRs with more than 500 changed lines/20+ changed files. I read every single line. I put the same amount of effort into reviewing code as I do writing it; every software engineer should.
- deleted 7y ago[deleted]
- ReidZB 7y agoI agree 100%: if it provides good enough suggestions, it could pay for itself pretty easily on regular day-to-day PRs. (Although: not all 500 line PRs are made equal.) My original comment was definitely unclear. I actually had two separate thoughts (that I didn't communicate well at all): (1) if your team has occasional large, automated PRs (code generation, automated refactors, etc), you probably don't want to run this tool on them because of cost, so anyone that has these large PRs and uses CodeGuru probably needs to build a way into their automation to suppress CodeGuru (or build a way to invoke it for specific PRs) (2) I also wonder if it's good enough to justify the price on regular PRs We don't have many situation (1) PRs where I work now, but they do come up occasionally. For example, I've used IntelliJ IDEA's structural find-and-replace to do very large automated refactors where CodeGuru would be very expensive and probably provide little value. We also do check in some generated code (we usually don't do this, but there are a couple exceptions where we weighed the tradeoffs and decided checking in the generated code was a better solution, in our eyes).
- thayne 7y agoAlthough this could certainly supplement a human reviewer, I don't think it could replace one.
- EpicEng 7y agoOur code reviews are far more "is this the right way to solve the problem?" than "hey, you never use that variable you declared." The latter would be picked up by our linter; I'm having a hard time seeing the value proposition here. >It’s like having a distinguished engineer on call, 24x7 I don't believe that, regardless of how many times they sprinkle in the words "machine" and "learning".
- dickjocke 7y agoI'd be very surprised if the service they've announced is a linter. The announcement says it can even analyze parts your code that are more computationally expensive than they need to be. I'm not sure I understand the skepticism--surely they have among the largest code repositories in the world. Why couldn't they train models on it to look at best practices and even compare code practices to different metrics.
- ShamelessC 7y agoIsn't this just calculating the cyclomatic complexity?
- ralmeida 7y agoNo - OP meant computationally expensive, not cognitively expensive. Two nested for-loops can be O(nˆ2) but can have a cyclomatic complexity as low as 1.
- ehsankia 7y agoIt may not be as good as a human, but I highly doubt it's a linter either. It's somewhere in between. If their claims are true, and it has been trained on hundreds of thousands of their own reviews, the AI could have picked up common patterns that are beyond lint but still real mistake a good reviewer would spot.
- tempsolution 7y agoYeah or looking at it the other way around. If this would replace your human reviewer, then maybe you would do good to have some serious discussions with your HR department...
- wpietri 7y agoOnly if CodeGuru gets a lot of the value of a code review. But I think finding actual bugs is a pretty small of it. A good code base is a team-created intellectual work. For that to happen, you need a ton of collaboration, shared learning, evolution of norms, interpersonal bonding, and practice of key social behaviors (e.g., principled negotiation, giving good feedback, recognizing and rewarding good actions). Automated code review gets at none of that.
- mc3 7y agoYou don't replace the human code review. You supplement it. An AI that can replace the code review would need to be an AGI that "sat" down with your team and understood the architectures and meaning in your code. If it can't say "WTF?" it can't do a full code review.
- takeda 7y agoYou really believe this will free you from traditional code reviews? I would treat it as an advanced linter, and from the pictures looks like that's how it integrates itself in github.