不良编程文化

简介:

“这代码真垃圾”,当我们翻查一些代码寻找一个特别讨厌的bug时,同事大声这样说。“是吗”,我回答到。

像这样的谴责,以及其它一些类似的话,在办公室里经常会听到,而且频率在增加。而最令人不安的是,这代码并不是特别的糟糕。我这话是什么意思?不能把它们写 的更好吗?当然!大多数的代码都有改善的空间——只要有足够的时间和资源。垃圾代码确实有,我们都看得见,而且都是我们自己写的,但这并不是问题。

问题是我们有一个不良的“这代码真垃圾”文化。

这是一种我感觉在web开发社区中越来越常见的文化。接着上面的例子,我请同事解释一下,解释为什么这代码很垃圾,我得不到一个直接的答复。

“这还不垃圾,你看这代码”,他回答说,那种趾高气扬我需要仰头才能看到他,紧邹的眉头就好象是说,如果不能看出这代码有多烂,那就是个傻子。结果你知道怎么着?我开始感觉有点傻了。我差点就忍不住开始跟着他一起嘲笑,认定这代码真的有多烂,多糟糕。

在 我继续下面的内容之前,我发现上面的内容并没有在最好的光线下描绘我的同事。所以,让我弥补一下。他是个非常好的小伙。坦白的说,他是我见过的最和善的小 伙之一。他友善,有一个他很爱的家庭,他跑马拉松,乐于助人,聪明,等等等等。还有一点要说明:他是一个经验不多的新手。他还在学一些基础的开发知识。这 没什么好羞愧的,我们都经历过这个阶段。那么,为什么这样一个友善、聪明的小伙,在他参与的第一个大型web项目上,他的第一反应就是去指责一些代码很垃 圾?——他甚至还没有真正的去理解它。

生活规律:垃圾往下倒。

这个问题并不单独出现在程序员新手中。很多精明人士都有这 习惯。你也许是一个奇才,一个久经考验的程序员,但如果有这样一种习惯,整个团队和项目都会受到负面影响。因为新手们把你当作知识和经验的源泉。越多的人 拥抱这种“这代码真垃圾”文化,这种文化就会越被认可,越成为模仿的对象。很快,程序员开始变的不是积极在项目上出力,而是去贬低别人在项目上的贡献。最 大嘴、最反面的程序员很快就成了最受尊敬的人。所有人都受折磨,项目受影响,而一部分人却能能得到赞美,为倒是都是垃圾而感到心满意足。

我们应该怎么做?

没有人想显得愚蠢,没有人想自己的工作被认为劣质。一旦“这代码真垃圾”文化开始传播,唯一能确保自己在别人之上的办法就是贬低别人。最终,这变成了一种负能量,而不是想着去解决问题。

那 么,对这样的一种特殊现象有什么解决方法?阻止它。不要不加思索的否定别人的代码——在没有原因、没有理解的情况下。有很多的方式可以处理那些看起来有问 题的代码。如果发现代码中有异味,想办法改进它。从理解这些代码开始,在此基础上修正。如果你发现项目中有一些不良风气,不要跟随。如果有人对你说“这代 码真垃圾”,问他为什么,然后了解查明,去做一些事情让它变的不垃圾。向最初写这些代码的人了解,也许他们这样写代码是有原因的。帮助他们,而不是诋毁他 们。

下一次,当我发现从显示器里飘出可疑的异味时,我会转身问我的同事,“我们如何改进这段它?”因为,我们要面对它们,有时候代码会很垃圾,但这不意味着我们也去变成垃圾。

目录
相关文章
关于认知(高效能人士的七个习惯,刻意练习,PDCA,GTD)
关于认知(高效能人士的七个习惯,刻意练习,PDCA,GTD)
|
安全 开发者
开发者“请回答”!HN 热帖“当你对软件开发感到失望,该如何规划职业道路?”
开发者“请回答”!HN 热帖“当你对软件开发感到失望,该如何规划职业道路?”
161 0
开发者“请回答”!HN 热帖“当你对软件开发感到失望,该如何规划职业道路?”
|
安全
程序人生 - 从一个喷嚏的威力来了解,口罩的重要性与必要性
程序人生 - 从一个喷嚏的威力来了解,口罩的重要性与必要性
90 0
程序人生 - 从一个喷嚏的威力来了解,口罩的重要性与必要性
|
移动开发 Java 程序员
程序员也需要的软技能,既为了生存,也为了早日财务自由
 最近读了一本不是编程的程序员技能书《软技能 代码之外的生存指南》,全书分为7个篇章,分别是职业、自我营销、学习、生产力、理财、健身和精神。其中在读过职业、自我营销和理财这三个篇章后,让我非常有感触,也让我很意外,本来以为国外的软件环境会与国内不同,现在看来很多情况都很类似。下面会着重围绕这三个篇章展开讨论。
幼儿园食品安全舆情工作怎么做?
一直以来食品安全问题就是全民关注的焦点,再加上幼儿园作为这一特殊主体,尤其是近年来有关幼儿园食品安全问题的报道层出不穷,如涉及到的食堂餐具安全问题、食材安全问题、食堂工作人员卫生安全问题等等。
不应被忽视的“领域愿景陈述”
**摘要**: Domain Vision Statement(领域愿景陈述,以下简称DVS)是《领域驱动设计》一书的一种模式。在中台上下文下,DVS具有重要的意义。每个中台领域都应该创建自己的明确的DVS、达成共识,并且在认知发生更新时及时演进。 ## 为什么DVS是重要的 我们先来看一个场景。 >行业PD正在和3个领域的平台PD们在讨论一个业务需求的产品方案。看起来现有的产品能力不足以支撑
204 0
不应被忽视的“领域愿景陈述”
《掌控情绪从来都不是靠忍》读后感
 首先表明立场,我非常不推荐这本书,因为这本书给我的感觉是非常的肤浅,翻翻作者的作品,基本上都偏重于鸡汤类的文章,不过按照网上说法书的销量的确还可以,说明迎合消费者需求的书市场还是很大的。
1570 0
《社交网站界面设计(原书第2版)》——2.4 谨防不明确的心智模型陷阱
本节书摘来自华章计算机《社交网站界面设计(原书第2版)》一书中的第2章,第2.4节,作者:(美)克里斯蒂安·克鲁姆里什(Christian Crumlish),艾琳·马洛恩(Erin Malone)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
985 0