Code Review

is it a bureaucratic ritual?

Real Story...

 DEV: Hey man, i just submitted my  
      PullRequest, please take a look.
LEAD: No, please just merge it!
 DEV: WTH! Really? Why?
LEAD: You're part of my team, and I 
      have to trust on you!

Code Review ?

Code review is a systematic examination of software source code, intended to find bugs and to estimate the code quality.

The theory says:

Code Review ?

The developer says:

Code review is the part of process where i hate all my teammates.

Bureaucratic Ritual?

???

???

???

???

???

???

???

???

Submit Pull Request

Code Approved / Merged

Code Review

is it a bureaucratic ritual?

Kenji Lozano

Front-end Developer, Truextend

@kenji_lozano

What is the Main Goal?

Ruin the day of a developer by adding ridiculous observations about the code that he implemented.

Anonymous Dev.

Force a level of communication and shared knowledge between engineers by looking for another ways to solve the same problem -Anonymous

Main Goals

Increase team cohesion

Improve our knowledge base

Find another solutions

What about the Code Review Process?

Almost the same as editorial

Wants to ensure that the content is produced free of defects... So someone should approve that!.

Step 1. Code Review Request

Submit code for a code review

Step 2. Code Evaluation

The reviewer evaluates the code submitted

Step 3. Approval and Feeback

The code in question is either approved or rejected

Step 4. Developer Action and Acknowledgment

Making any required changes to the code

Review Process

4. Developer Action

1. Code Review Request

2. Code Review Evaluation

WTH ?

Dude ... WTH ?

Really ?  WTH

WAT DA HELL

3. Approval and Feedback

Refactor

Code Approved / Merged

Let's take a look at some Facts

Files Analysis

Lines Analysis

Reviewers Analysis

A few Tips...

Keep in mind...

 

There is no perfect code and the best practices changes over the time.

1. Write Some Test Cases!

It allows us to have a better quality of code

2. Remove Dependencies!

Be framework agnostic.

3. Your code should be Readable!

If your teammates needs some explanations about your code you're in a wrong way

So... Is it a BUREAUCRATICRitual?

Each Development Team is different...

So let's take a loot at some symptom the let you know that you process goes in a wrong way

Observations Related to Syntax/Style Errors. Let the tools do his work!.

Observations exceeds the number of code lines.

I.E. 50 Comments for 10 Lines of Code

Meaningless discussion about the implementation. i.e."If you find a better way to implement this, please let me know"

So... The bureaucracy is everywhere! 

Keep it simple!

Be clear and concise

Add all ridiculous observations you can

It's FREE!

Thank You!