这篇文章探讨的是如何在一个没有Code Review习惯的团队里面Code Review.

在进行Code Review的时候,审核人很多时候会对被审核人的代码指手画脚,在评价对方的代码,甚至是在批评对方,当然不是批评对方本人,而是批评他的代码,但是这就涉及到一个人性的问题,其实人在面对批评和不一样意见的时候,他潜意识是会保护自己的,会去本能地抵触这些东西.

一个很简单道理,如果他知道这些东西写的不好的话,他当时很可能就不会这样写,所以说,在Code Review时大概率是会发生意见不一致的,甚至会起冲突, 这容易破坏团队融洽的氛围.

如何让团队欣然的接受Code Review呢?如何让他们对"指指点点"这一行为不抵触呢?

我有一个想法,其实我们可以借鉴一些传销组织的手段和做法,
比如像有些很"狼性"的公司, 会在公司年会的时候,让大厅里的所有员工一对一地面对面跪着,互扇对方耳光.
还有的是,一群人并排跪在台上,后面有个高管拿皮鞭有力地抽他们.


通过这种方式彻底地摧毁他们的自信心, 让他们可以无所顾忌, 激发自己的潜能.
在自尊都被剥夺之后,谁还会再去在意什么批评,什么指指点点.

这种"崩溃疗法"还是挺有借鉴意义的, 我们完全就可以仿照这种做法,鼓励大家互相打耳光,在鸡蛋里面挑骨头,去质疑对方批评对方, 互相地diss,而被批评的人可以有自己不一样的想法,可以反击并diss回去,团队鼓励这种行为,鼓励大家互相的diss,把它变成一种习惯.

我暂时把它称为"狼性Code Review", 英文名简称为Wolf Review.

"Code Review不是请客吃饭,不是做文章,不是绘画绣花,不能那样雅致,那样从容不迫,文质彬彬,那样温良恭俭让"

当然狼性Review不等于暴力Review,如果有团队因为推行本人提出的这种Code Review方式而出现什么人身意外, 本人概不负责.

如何推行Code Review的更多相关文章

  1. 我们是怎么做Code Review的

    前几天看了<Code Review 程序员的寄望与哀伤>,想到我们团队开展Code Review也有2年了,结果还算比较满意,有些经验应该可以和大家一起分享.探讨.我们为什么要推行Code ...

  2. 关于Code Review

    为了保证代码质量,我们团队内部一直在推行Code Review.现在Code Review帮我们发现了很多代码的问题,提升了代码的可读性和质量,同时我们在Code Review上也花费了很多时间,有些 ...

  3. 转:我们是怎么做Code Review的

    我们是怎么做Code Review的   前几天看了<Code Review 程序员的寄望与哀伤>,想到我们团队开展Code Review也有2年了,结果还算比较满意,有些经验应该可以和大 ...

  4. 从零开始 Code Review,两年实战经验分享!

    作者:wenhx http://www.cnblogs.com/wenhx/p/5641766.html 前几天看了<Code Review 程序员的寄望与哀伤>,想到我们团队开展 Cod ...

  5. Code Review 从失败中总结出来的几个经验

    资深的程序员都知道 Code Review 可以对代码质量,代码规范,团队代码能力提升带来很大的提升,还有著名的技术专家"左耳朵耗子"也说过: 我认为没有 Code Review ...

  6. Code Review最佳实践

    我一直认为Code Review(代码审查)是软件开发中的最佳实践之一,可以有效提高整体代码质量,及时发现代码中可能存在的问题.包括像Google.微软这些公司,Code Review都是基本要求,代 ...

  7. Code Review最佳实践(转)

    我一直认为Code Review(代码审查)是软件开发中的最佳实践之一,可以有效提高整体代码质量,及时发现代码中可能存在的问题.包括像Google.微软这些公司,Code Review都是基本要求,代 ...

  8. Code Review 程序员的寄望与哀伤

    一个程序员,他写完了代码,在测试环境通过了测试,然后他把它发布到了线上生产环境,但很快就发现在生产环境上出了问题,有潜在的 bug. 事后分析,是生产环境的一些微妙差异,使得这种 bug 场景在线下测 ...

  9. Git和Code Review流程

    Code Review流程1.根据开发任务,建立git分支, 分支名称模式为feature/任务名,比如关于API相关的一项任务,建立分支feature/api.git checkout -b fea ...

随机推荐

  1. Linux新建用户没有设置密码

    只要你能登陆root账户就行 登陆root账户 输入  echo "密码“ | passwd --stdin 用户名

  2. 【原创】python requests 库底层Sockets处于close_wait状态

    以前对于Requests库只是简单是使用,在现在公司的后台中,有多个接口是直接使用requests.get .post之类的方法来做的,进行过一段时间的压力测试,发现性能低的可怜,且linux服务器有 ...

  3. 各版本eclipse的maven配置

    1.indgo(3.7) install new software: http://download.eclipse.org/releases/indigo

  4. lvm xfs 扩容

    lvresize -L 300M /dev/vg1/lv1 #重新设定大小 e2fsck -f /dev/vg1/lv1 #检查磁盘错误 (针对ext4执行) resize2fs /dev/vg1/l ...

  5. virtualbox+vagrant学习-3-Vagrant Share-1-简介

    Vagrant Share 通过 ngrok 内网穿透功能实现让全世界人可以访问虚拟机的服务 Vagrant Share允许你与世界上的任何人共享您的Vagrant环境,几乎支持你在任何网络环境中使用 ...

  6. 列表中不限制宽度,hover时,字体font-weight:bold,防止抖动

    项目一个小问题困扰了很久,在一个没有限制宽度的列表容器中,如果给hover时,给字体➕'font-wieght:bold'容器就会变宽,然后移动的下一个容器,就会出现抖动,这样很是影响用户体验,于是在 ...

  7. Node.js框架之Egg.js

    Node.js是我前段时间接触的一个JavaScript的服务端语言,感觉还是挺有意思的. 也许有人说,你学这么多,学的过来吗?或者说学的太多,专而不精,有必要这样吗? 其实,我个人认为,自从我进入I ...

  8. java集合---迭代器iterator

    一:ArraryList  最终继承超级接口Collection,Colection接口继承Iterator接口. public interface Collection<E> exten ...

  9. 学习笔记——线程 Thread

    Thread是.net1.0 1.1时出现的 主要了解线程等待.回调.前后台线程区别 1.实例: //定义:public delegate void ThreadStart(); ThreadStar ...

  10. linux文件系统初始化过程(1)---概述

    术语表: struct task:进程 struct mnt_namespace:命名空间 struct mount:挂载点 struct vfsmount:挂载项 struct file:文件 st ...