惹毛程序员的十件事!需求变更居然不是排第一

程序员的店小二 程序员的店小二     2022-12-18     764

关键词:

本文转载自 程序员编程社区

如何惹毛一名开发者?

再好脾气的程序员,总能被下面一条逼疯,你中了几条呢?

第十位 程序注释

程序注释本来是一些比较好的习惯,当程序员老手带新手的时候,总是会告诉新手,一定要写程序注释。于是,新手们当然会听从老手的吩咐。只不过,他们可能对程序注释有些误解,于是,我们经常在程序中看到一些如下的注释:

每当看到这样的注释——只注释是什么,而不注释为什么,相信你一定会被惹火,这是谁写的程序注释啊?不找来骂一顿看来是不会解气了。程序注释应该是告诉别人你的意图和想法,而不是告诉别人程序的语法,这是为了程序的易读性和可维护性,这样的为了注释而注释的注释,分明不是在注释,而是在挑衅,惹毛别人当然毋庸置疑。

第九位 打断

正当程序沉浸于编程算法的思考,或是灵感突现正在书写程序的时候,但却遭到别人的打断,那是一件非常痛苦的事情,如果被持续打断,那可能会让人一下子就烦躁起来。打断别人的人在这种情况下是非常不礼貌的。被打断的人就像函数调用一下,当其返回时,需要重新恢复断点时的现场。当然,人不是电脑,恢复现场通常是一个很痛苦的过程,极端的情况下可能需要从头开始寻找思绪,然后一点一点地回到断点。

因此,我看到一些程序员在需要安静不被打扰的时候,要么会选择去一个没人找得到的地方,要么会在自己的桌子上方高挂一个条幅以示众人——“本人正执行内核程序,无法中断,请勿骚扰,谢谢!” 自然,被打断所惹毛了的人也不在少数了。

第八位 需求变化

这个事情估计不用多说了。只要是是程序员,面对需求变化的时候可能总是很无奈的。一次两次可能还可以接受,但也顶不住经常变啊。据说敏捷开发中有一套方法论可以让程序员们享受需求的变化,不知道是真是假。不过,今天让你做一个书桌,明天让你把书桌改成餐桌,后天让你把餐桌改成双人床,大后天让你把床改成小木屋,然后把小木屋再改成高楼大厦。哎,是人都会被惹毛了的。那些人只用30分钟的会议就可以作出任何决定,但后面那几十个程序员需要搭上几百个小时的辛苦工作。如果是我,可能我也需要神兽草泥马帮助解解气了。

不过,这也正说明了,程序员并不懂得怎么和用户沟通,而用户也不懂得和程序员沟通,如果一个项目没有一个中间人(如PM)在其中协调的话,那么整个项目可能就是“鸡同鸭讲”,用户和程序员都会被对方所惹毛了。如果要举例几个用户被惹毛的事情,估计程序员的那种一根筋的只从技术实现上思考问题的方法应该也能排进前5名。

第七位 经理不懂技术

外行领导内行的事例还少吗?领导一句话,无论对不对,都是对的,我们必须照做,哪怕是多么愚蠢多么错误的决定,我们也得照做。程序员其实并不怕经理不懂技术,最怕的就是不懂技术的经理装着很懂技术。最可气的是,当你据理力争的挑战领导权威的时候,领导还把你视为异类。哎,想起这样的领导别说是骂人了,打人的冲动都有了。

其实,经理只不过是一个团队的支持者,他应该帮助团队,为团队排忧解难。而不是对团队发号施令。其实管理真的很简单,如果懂的话,就帮着做,如果不懂的话,就相信下属,放手让下属做。最怕的就是又不懂技术,还不信任下属的经理了。哎,这真是程序员的痛啊。

第六位 用户文档

用户文档本来不应该那么的令人害怕。这些文档记录了一切和我们所开发的软件有关的一些话题。因为我们并不知道我们所面对的用户的电脑操作基础是什么样的,所以,在写下这样的文档的时候,我们必须假设这个用户什么也不懂。于是,需要用最清楚,最漂亮的语言写下一个最丰富的文档。哪怕一个拷贝粘贴的操作,可能我们都要分成五、六步来完成,哪怕是一个配置IP地址的操作,我们也要从开始菜单开始一步一步的描述。

对于程序员来说,他们在开发过程中几乎天天都在使用自己开发的软件,到最后,可能都有点吐了,但还得从最简单的部分写这些文档,当然容易令他们烦燥,让程序员来完成这样的文档可能效果会非常不好。所以,对于这样的用户文档,应该由专门的文档人员来完成和维护。

第五位 没有文档

正如上一条所说的,程序员本来就不喜欢写文档,而因为技术人员的表达能力和写作能力一般都不是太好,所以,文档写得也很烂。看看开源社区的文档可能就知道了。但是,我们可爱的程序员另一方面最生气的却是因为没有文档。当然,这里说是的用户的文档,这里我们说的是开发方面的文档,比如设计文档,功能规格,维护文档等等。不过,基本上都是一样的。

反正,一方面,我们的程序员不喜欢写文档,另一方面,我们的程序员又会被抱怨没有文档,文档太少,或者文档看不懂。原来在抱怨方面也有递归啊。

据说,敏捷开发可以降低程序开发中的文档,据说他们可以把代码写得跟文档和视图似的,不知道是真是假。不过,我听过太多太多的程序员抱怨没文档太少,文档太差了,这个方面要怪还是怪程序员自己。

第四位 部署环境

虽然,程序员们开发的是软件,但是我们并不知道我们的程序会被部署或安装在什么样的环境下,比如,网络上的不同,RAID上的不同,BIOS上的不同,操作系统的不同,有没有杀毒软件,和其它程序是否兼容,系统中有流氓软件或病毒等等。

当然,只要你的软件出现错误,无论是你的程序的问题,还是环境的问题,反正都是你的问题,你都得全部解决。所以,程序员们并不是简单地在编程,很多时候,还要当好一个不错的系统管理员。每当最后确认问题的原因是环境问题的时候,可能程序员都是会心生怨气。

第三位 问题报告

“我的软件不工作了”,“程序出错了”,每当我们听到这样的问题报告的时候,程序员总是感到很痛苦,因为这样的问题报告等于什么也没有说,但还要程序员去处理这种错误。

没有明确的问题描述,没有说明如何重现问题,在感觉上,当然会显得有点被人质问的感觉,甚至,在某些时候还掺杂着看不起,训斥的语气。当然,程序员基本上都是很有个性的,都是软硬不吃的主儿,所以,每当有这样的语气报告问题的时候,他们一般也会把话给顶回去。所以,咱们还是需要一个客服部门来帮助我们的程序员和用户做好沟通。

第二位 程序员自己

惹毛程序员的可能还是程序员自己,程序员是“相轻”的,他们基本上都是持才傲物的,总是觉得自己才是最牛的,在程序员间,他们几乎每天都要吵架,而且一吵就吵得脸红脖子粗。在他们之间,总是被自己惹毛。

技术上的不同见解。比如Linux和Win,VC++和VB,Vi和Emacus,Java和C++,PHP和Ruby等等,等等。什么都要吵。

老手对新手的轻视。总是有一些程序员看不起另一些程序员,说话间都带着一种傲慢和训斥。当新手去问问题的时候,老手们总是爱搭不理。

在技术上不给对方留面子。不知道为什么,程序员总是不给对方留面子,每当听到有人错误理解某个技术的时候,他们总是喜欢当众大声指证,用别人的“错误”来表明自己的“博学”,并证明他人的“无知”。

喜好鄙视。他们喜好鄙视,其实,这个世界上没有一件事是完美的,有好就有不好,要挑毛病太容易了。程序员们特别喜欢鄙视别人,无论是什么的东西,他们总是喜欢看人短而不看人长。经常挂在他们嘴上的口头禅是“太差”、“不行”等等。

程序员,长期和电脑打交道,编写出的代码电脑总是认真地运行,长期养成了程序员们目空一切的性格,却不知,这个世界上很多东西并不是能像电脑一样,只要我们输入正确的指令它就正确地运行这么简单。程序员,什么时候才能变成成熟起来……

第一位 程序员的代码

无论你当时觉得自己的设计和写的代码如何的漂亮和经典,过上一段时间后,再回头看看,你必然会觉得自己的愚蠢。当然,当你需要去维护他人的代码的时候,你一定要在一边维护中一边臭骂别人的代码。是否你还记得当初怎么怎么牛气地和别人讨论自己的设计和自己的代码如何如何完美的?可是,用不了两年,一刚从学校毕业的学生在维护你的代码的过程当中就可以对你的代码指指点点,让你的颜面完全扫地。

当然,也有的人始终觉得自己的设计和代码就是最好的,不过这是用一种比较静止的眼光来看问题。编程这个世界变化总是很快的,很多事情,只有当我们做过,我们才熟悉它,熟悉了后才知道什么是更好的方法,这是循序渐进的。所以,当你对事情越来越熟悉的时候,再回头看自己以前做的设计和代码的时候,必然会觉得自己的肤浅和愚蠢,当然看别人的设计和代码时,可能也会开始骂人了。

关于token,你应该知道的十件事

转自:http://ju.outofmemory.cn/entry/134189原文是一篇很好的讲述Token在Web应用中使用的文章,而这是我和 Special 合作翻译的译文。1.Token应该被保存起来(放到local/sessionstograge或者cookies)在单页应用程序中,有些用户刷新浏览器... 查看详情

solaris:你好奇的十件事

想想你周围的人,看看他们正在使用的操作系统。绝大部分人的电脑都在用主流操作系统:Windows,MacOS,甚至是Ubuntu。当说到Solaris,Unix和BSD的时候,其他人还以为你说鸟语呢。除了IT狂人和在工作、学术环境中使用它的人,他... 查看详情

有关bash,我希望我能知晓的十件事

简介我之前的一篇文章比我预想的更受欢迎,因此我想再写一篇文章来介绍一些不太知名的bash功能正如之前所言,由于我觉得bash是一种要经常使用(且需理解)的技术,所以我在研究bash时写了一本书。虽然许多人并不熟悉bash... 查看详情

有关bash,我希望我能知晓的十件事(代码片段)

简介我之前的一篇文章比我预想的更受欢迎,因此我想再写一篇文章来介绍一些不太知名的bash功能正如之前所言,由于我觉得bash是一种要经常使用(且需理解)的技术,所以我在研究bash时写了一本书。虽然许多人并不熟悉bash... 查看详情

《百万it毕业生的心声:it专业大学生毕业前必做的十件事》

0001、搞定linux操作系统Linux是一个开源的操作系统,但总是拿开源说事的话,对于没有深入了解的同学来说可能不是能很清楚的认识这个概念。这里我换个角度用大白话聊一聊linux,linux其实是属于喜欢“折腾”的人的... 查看详情

35岁前十件事该做好

第一,学会本行业所需要的一切知识并有所发展。 每个人在年轻时都可能有过彻夜不眠、刻苦攻读,这在20岁甚或25岁都没有问题,但到了35岁,就不应该再为学习基本技能而大伤脑筋了。35岁之前是一个人从事原始积累的阶... 查看详情

网站优化——建站前期请不要干这十件事

网站优化,成功让搜索引擎收录并且获得好的排名是最终我们优化的最终目的。但是在建站初期我们还是要注意一些不利于优化的错误要去避免:   1:首页的做法   首页最忌讳的做法是整体页面都做成一... 查看详情

拿到offer过后--大学最后时光最想做的那十件事

     昨天——2014.10.26,历史性的一刻,激动的签了欢聚时代(YY)的前端开发offer,工作地点是我喜欢的珠海(仅仅由于那边有我所向往的海还有自行车队,如今想想都乐开怀了,绕着海边骑单车的感觉真妙)... 查看详情

谁掌控无人驾驶?领域鼻祖"谷歌"专利居然排第10位

无人驾驶大势所趋,无论是科技公司还是传统车企,都在抢占无人驾驶技术高地。说起谁将引领无人驾驶潮流,人们一般最先想到是科技公司如谷歌、特斯拉,但最近一份以专利数量来衡量无人驾驶技术实力的排行中,谷歌仅排... 查看详情

现代软件工程_第一周练习_第8题

1、众所周知,软件需求分析的变更对项目的实现造成了很大的风险和难度,那么怎么才能避免这样的变更呢?个人见解:个人认为这样的变更是可以避免的,至少是可以很大程度削弱的,在项目成立的初期,做好完备的市场调... 查看详情

第一章需求概述

1.需求问题的提出五个与需求有关的败因描述(1)不完整的需求,未能让不同需求层次的人参与进来(2)缺乏用户参与(3)不切实际的用户期望,客户不懂技术,有些需求目前技术是无法实现的(4)需求变更频繁,用户忽略了... 查看详情

互联网大佬谁编程排第一?周鸿祎:我应该可以排到前三名

10月24日是程序员节。在这一天,360集团创始人周鸿祎在社交平台发布动态为程序员点赞。周鸿祎表示,未来,世界是架构在软件之上,是数字化的世界,每一个程序员都承担着重要的使命,用技术为国家... 查看详情

最受程序员欢迎的数据库,oracle排第二,它排第一!

Java研发工程师必备技能非MySQL莫属,虽说易学好上手,但应对大厂面试,最容易遭遇滑铁卢、功败垂成的也是它。上手简单,玩转难,才是这款开源数据库叱咤业界多年的真实写照。MySQL8.0正式版的到来,... 查看详情

需求变更管理

需求变更管理        范围变更控制是指对有关项目范围的变更实施控制。在这儿范围变更就是需求变更。主要的过程输出是范围变更、纠正行动与教训总结。再好的计划也不可能做到一成不变,因此... 查看详情

新风向!成就了android,热门框架排第一,你还是不够了解它!(代码片段)

前言2021年Android程序员的成长必然是少不了Jetpack的,Jetpack作为2021年Android界最火的组件库,使用更方便、向后兼容、支持RxJava、减少代码量、无需捆绑等优点,也是谷歌想拓展和维护的方向。由于长期苦恼于第三方库... 查看详情

我的编码习惯-如何应对需求变更

原文出处:晓风轻 我之前的文章程序员你为什么这么累?中,我个人观点是加班原因是编码质量占了大部分因素,但是不少同学都不认为是代码质量导致的加班,都认为是不断的需求改动导致的加班。这位同学,说的好像别... 查看详情

编码规范--如何应对需求变更(代码片段)

如何应对需求变更  现在的程序员为什么这么累,其实很大程度上来说是加班原因使编码质量占了大部分因素,但是不少同学都不认为是代码质量导致的加班,都认为是不断的需求改动导致的加班。但是话又说回来,谁的需求... 查看详情

周鸿祎评互联网大佬编程能力:自己可以排前三!是谁排第一?(代码片段)

👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇来源丨TechWeb(ID:TechWeb)https://mp.weixin.qq.com/s/dkHwqsb2UJy7uPjfsTBV_Q在互联网时代,我们可以通过互联网很好地解决吃穿住行的问题,可 查看详情