阅读更多

0顶
0踩

非技术

转载新闻 程序员的13种噩梦,你遇到过哪些?

2016-05-11 14:03 by 副主编 mengyidan1988 评论(2) 有4469人浏览
对绝大多数人来说,都是些老生常谈的东西使他们噩梦连连:幽灵、蜘蛛,被戴着冰球面具的杀人狂追杀……但对另一些人来说,他们最害怕的东西就没那么常见了。

就拿软件开发者举例吧。如果你问他什么才是最可怕的噩梦,那么答案很可能跟女巫、黑猫没什么关系,真正的噩梦是关键的分号不起作用或者微软的某个产品。在分析了各种各样程序员关注的论坛之后,我们在此列举出 13 种程序员们最苦恼的噩梦。

1.我能通过互联网解决问题

Stack Exchange 一类的网站已成为软件开发者的工具箱中至关重要的工具。当然也还有很多其他程序员们寻求帮助的论坛。程序员最头疼的事,就是貌似无穷的知识来源中其实并没有解决你问题的答案。



2.键盘上最重要的按键坏了

不难想象,键盘对于开发人员有着不言而喻的重要性。但同样地,在开发人员眼中并非所有按键都那么重要。尤其是在一些编程语言中,某些按键比其他按键 的使用频率更高,例如 JavaScript、Perl 和 Objective-C 中的分号键。为了节约时间和避免错误,开发人员爱用键盘的快捷方 式,比起鼠标,键盘的使用则更频繁。若是软件开发者梦到键盘上他最爱用的按键坏了甚至消失了,就深更半夜里冒着冷汗惊醒,你也不必觉得惊讶。



3.网络连不上,或者掉线了

一种比较“小众”的噩梦是,某一工具的论坛下线或是出于维护状态从而不能解决问题,但更常见的是访问互联网时掉线,无法接入站点。因为毕竟除了访问 论坛这一目的意外,网络更像一个巨大的象鼻,里边装满了有用的东西,比如代码段、开源软件。如果互联网突然掉线了,就会造成编程团队间无法联系,你喜欢的 在线音乐播放服务无法使用,更不用说接入远程服务或是云端有多困难……如果你想吓唬吓唬程序员,大喊一声“没有网络”就够了。记得,随时准备好除颤器以便 急救。

引用
如果某天互联网和谷歌都消失了,那将倒退回与世隔绝、暗无天日的古代。遇到 bug 我们只能束手无策。”—— Thoriq Firdaus


4.无法再现的危险错误

为了修复一个漏洞,在这之前开发人员必须在开发或测试环境中重现导致错误的情境。如果你够幸运的话,在开发环境部署前就能诊断、修复错误。许多开发 人员害怕随机出现又无法在受控环境中重现的漏洞。这类该死的漏洞会让你在重要客户的面前变得忧心忡忡,坐立不安。这绝对是程序员的噩梦。

引用
只在众人或重要客户面前演示时才出现的漏洞,简直让我……” —— Jeremy Friesner
“在公司时蓝屏现象从不会出现第二次,然而一到客户家里就老出现。” —— Joe Wezorek


5.缺失好的文档,甚至没有文档

坐下来理解一段没有良好文档或注释的已有代码是很困难的。若是连文档或注释都没有,那就更糟了。这情况不仅适用于由承继程序员的第三方编写的代码,还适用于同一个程序员在很久以前写的缺少良好文档的代码。不管是谁切分的不带说明文档的代码永远是个噩梦。
引用
“毫不夸张地说,维护没有开发文档的旧软件对我而言就是个噩梦。”—— Sam Sartor


6.糟糕的老板和主管

和其他人一样,开发人员也会有爱管闲事又没啥能力的上司。软件开发者尤其讨厌随意干涉他们代码的非技术管理层。有些领导喜欢承诺我们无法做到的事,低估项目中切分代码所需的时间。一想到这样的领导和技术决策人,程序员即使在深夜的梦里也会痛哭。

引用
“对我而言最糟糕的非经理莫属,比牙疼还糟糕。他们自视甚高,还期待我们能提早地满足客户的任何需求。这些所谓的经理还坚信,编程只是小事一桩,代码就像浮在空气中似的,可以信手拈来。” —— Rachit Agrawal


7.他人清晰又漂亮的代码

对大多数程序员来说,他们喜欢也必须在别人的代码上继续工作;但别忘了,不同的定时器代码永远不会一模一样,不是吗?甚至是一段有良好文档的第三方 代码也会变成一件麻烦事。它要求你做调试,重构,或结构化,使代码适应可能几个月前就已切分好的代码。这些工作会让程序员们心跳异常。若没有,真是谢天谢 地。

8.项目里的要求变更

无论何时,软件开发者都青睐那些阐述清晰、不能变更的应用需求。在实践中,很多需求都是匆忙制定的,有时候甚至已经成为了正式形式;要求变更的原 因,一部分是有糟糕的项目经理,另一部分则是来自上级或客户本身的抱怨和干涉。总之,不论什么原因,对需求变更的恐惧——尤其是在最后一分钟要求变更—— 永远是开发者的心头恨。

9.消失不见的代码

无论开发者花了多长时间来调度软件,如果代码被意外清除了,一切努力都将付诸东流。代码意外消失的原因有许多,最主要的是鬼使神差地忘记保存文件, 或者未知的恶意漏洞导致无法保存。无论出于什么原因,不管是不是考虑不周,程序员永远都害怕花了大量时间精力才得出的算法和函数毁于一旦。

10.IE 浏览器

程序员常常会对某些技术忍无可忍。举个例子,Web 开发人员对用 IE 做开发感到万分恐惧。尽管它仍是最受欢迎的浏览器之一,IE 对于Web 开发者就是噩梦。糟糕的是,比起现代、环保的新版本,旧版本的 IE 不友好,用户多,还需要更多支持。如果说电影“13号星期五”中杀人狂 Jason Vorhees 吓倒了一众Web 开发者的话,他的面具恐怕 就是 IE 图腾。

11.身体不适

编程不是个体力活儿,但正如其他需要没日没夜地在计算机上切分数据的职业那样,胳膊、手掌、指头不灵便都很难完成这项工作。任何对视力、理性思考能 力有消极影响的因素,都会成为大麻烦。因此,软件开发者的典型噩梦是:无法使用,甚至丧失了身体的某一或某些重要部位——个人伤害律师(Personal injury lawyer) Baca Raton 如是说。

12.我的漏洞伤害了他人

任何软件开发者都会成为漏洞的制造者。但并非所有的漏洞都具有同等的灾害性。其中一些漏洞讨人厌但无害,另一些则会给公司或客户带来损失,负责开发的人员会被开除。不过最坏的情况是,漏洞造成了生理上的伤害,甚至危及他人的生命安全。

13.段错误

程序员中普遍害怕的噩梦还有遭遇段错误。这一错误由内存违法访问而引发。也就是说,程序企图访问受限的内存,或者执行某个受限的行为。一般而言,在 这种情况下访问内存单元将通知操作系统,进而反过来通知有问题的,大多数以挂马程序为结束的进程。开发人员最头痛的就是要找到引发这一问题的原因。因此, 程序员的噩梦里还有段错误。

本文由 伯乐在线 - 胡西瓜 翻译,黄利民 校稿。
英文出处:CSM
  • 大小: 89.1 KB
  • 大小: 151.7 KB
来自: 伯乐在线
0
0
评论 共 2 条 请登录后发表评论
2 楼 张成雷 2016-05-13 13:41
有一个老师带着还是会好一些。。
1 楼 eastenhh 2016-05-12 09:05
<a>http://suning.com</a>

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • D3DX Utility library

         D3DX 是一个静态库,容易使用在发布的产品上。D3DX 也提供3D 图形应用程序公共的操作。D3DX包含下面几个方面:抽象数据类型,helper对象,triangle meshes,resource function和一些其他函数。   具体类提供了颜色,材质,向量,矩阵,面和quaternion。他们实现为C++类,并且也提供了一些操作在这些类上全局函数。helper对象实现了矩阵堆

  • DirectX9中的二维图片的加载

     最近由于要做一个2D的游戏demo,所以重新从3D杀回来,研究2D。结果发现有关DirectX9如何实现2D的内容比当今现实生活中的爱情还稀少,感觉是DirectX7以后,2D就从这个世界上消失了~~还好,网络中总有一些人会怀念这失传的东西,在DirectX8的文章中终于发现了一些谈到D3D实现二维的东西,经过整理就写下了下面这段程序。(第一个程序实现了D3D方法的2D画面加载,并没有很好地解决

  • Direct3D初始化之细节处理

    对于上篇的Direct3D的初始化,还有一些细节要记录一下,不然过几天又忘记了,健忘~~~~~ 1.  在CreateDevice函数中要使用一个 D3DPRESENT_PARAMETERS结构,结构的字段含义如下(来自SDK) typedef struct D3DPRESENT_PARAMETERS { //后台缓冲区的大小,当全屏时大小要根据IDirect3D9::EnumAdapt

  • d3d9.lib d3dx9.lib

    error LNK2019: 无法解析的外部符号 _Direct3DCreate9@4,该符号在函数 "bool __cd 错误提示:fatal error LNK1104: cannot open file "d3d9.lib" 解决办法: 方案1:在工程-设置-连接 中加入d3d9.lib d3dx9.lib winmm.lib 方案2:直接将dx中的lib-x86中的d3d9.l

  • CSS3初始化第一章

    CSS3新特性预览 1.功能强大的选择器 2.文字效果 阴影 描边 发光 3.边框 圆角 阴影 边框背景 背景切割 4.背景 大小 起始位置 多重背景 5.色彩模式 除了RGB 颜色外,还支持HSL(色调,饱和度,亮度),透明度等 6.盒布局和多列布局 新增两种布局方式:灵活的盒布局和多列布局。 7.渐变 8.动画

  • 程序员噩梦 13 种,你遇到过哪些?

    在分析了各种各样程序员关注的论坛之后,我们在此列举出 13 种程序员们最苦恼的噩梦。 1.我能通过互联网解决问题 一些程序员论坛已成为软件开发者的工具箱中至关重要的工具。当然也还有很多其他程序员们寻求帮助...

  • 程序员的 13 种噩梦,你遇到过哪些?

    对绝大多数人来说,都是些老生常谈的东西使他们噩梦连连:幽灵、蜘蛛,被戴着冰球面具的杀人狂追杀……但对另一些人来说,他们最害怕的东西就没那么常见了。

  • 程序员的噩梦,你遇到过哪几条?

    程序员的成长之路互联网/程序员/技术/资料共享关注阅读本文大概需要 2 分钟。1、网上找不到答案2、最重要的键盘键坏了3、网崩了4、Bug 无法重现5、我的bug伤害了别人6、没有...

  • 程序员遇到 Bug 时的 30 个反应,你是哪一种?

    点击下方“前端开发博客”关注公众号回复“2”加入前端群开发应用程序是一个非常有压力的工作。没有人是完美的,因此在这个行业中,代码中出现bug是相当普遍的现象。面对bug,一些程序员会生气,...

  • 程序员八大噩梦, 你最怕什么?

    1.技术大牛也帮不了忙 “呀,这个问题好难,我要去GitHub看看,然后就没有然后了...” 很多程序员都会收藏一些优秀的编程交流...程序员最大的噩梦就是顶尖开发社区里面的技术大牛都回答不了他们的问题。 ...

  • 记下莫名其妙的问题【DirectX】一 编译显示无法打开d3dx9.lib

    选择项目,最下面的项目名称属性 左边选择配置属性,链接器,输入,右边在忽略特定默认库里点下拉箭头编辑,输入d3dx9.lib PS:在visual studio2012环境下

  • 无法打开文件“d3dx9.lib_三个小技巧,教会你解决无法打开手机文件问题

    大家有没有遇到下载过来的文件或图片在手机里放不出来的情况呢?若是朋友或是亲人给你发来一份文件,那可真要急死,文件打不开到底是怎么回事?这可能是文件本身有问题,下面有几个方案可以解决。1. 手机设定-安全-未知来源打钩;2. 检查手机存储器是否有足够的存储空间;3.若是这些还无法解决的话有比较大的可能性是因为格式问题,需要对其进行格式转换。可以将文件传输到电脑是进行格式转换,在传回手机,这样的话一些...

  • D3D游戏编程系列(一):DXLib的介绍

    这篇文章里我准备向大家介绍下我封装的一个基础D3D库:DXLib。有了这样一个类库,可以减少很多无用功以及繁琐的工作,使我们的效率大大提高。 DXLib.h #define DIRECTINPUT_VERSION 0x0800 #pragma warning(disable:4786) #pragma warning(disable:4244) #pragma warning(dis

  • GPURT 1.1.0 --一个开源的基于GPU的光线追踪渲染软件

    google_ad_client = "pub-0008935412623678";//728x90, created 1/30/08google_ad_slot = "9038623357";google_ad_width = 728;google_ad_height = 90;// <script type="text/javascript"src="

  • 困扰程序员的30种软件开发问题,你遇到过最蠢的问题是什么?

    开发应用程序是一项压力很大的工作,人无完人,工作中遇到各种各样的问题是很正常的事,有些程序员会生气,沮丧,郁闷,甚至泄气,也有一些程序员则会比较淡定。如何进行修复的过程,是值得我们好好推敲的。小编的C/...

  • 程序人生:出现问题时程序员最常见的反应,你占过没?

    回归历史源代码会诱使程序员重新产生更多的障碍集群。逻辑性差的冗余句法令人无法理解!然而,如果它没有中断,请不要去修复。这是我经常挣扎的问题,相信也困扰了不少其他软件开发员。 2.“我应该在开始架构时...

  • 程序员的噩梦有哪些?除了改需求,还有这些…

    (点击上方公众号,可快速关注)编译:伯乐在线 - 陈舸http://blog.jobbole.com/80724/有国外程序员在 Quora 上提了一个问题:“程序员的最大噩梦是什么?”。陈舸摘编了这个问答贴的多个热门回复。Brain Schmitz 的...

  • 前端程序员遇到 Bug 时的 30 个反应,你是哪一种?

    开发应用程序是一个非常有压力的工作。没有人是完美的,因此在这个行业中,代码中出现bug是相当普遍的现象。面对bug,一些程序员会生气,会沮丧,会心烦意乱,...通常说来,应用程序终将可以工作,然后你也可以进入到下

Global site tag (gtag.js) - Google Analytics