没人比程序员更讨厌软件
【大咖・来了 第7期】10月24日晚8点观看《智能导购对话机器人实践》
几个月前,我们买了一台新的数码相机,为的是更好地记录我们家小宝贝的成长过程。采购的事情由我太太负责。她小心地打开相机的包装盒,给相机装上电池,然后就开始了***试拍。像很多电子产品一样,随相机附送的还有一张软件光盘。于是,她不假思索地打开DVD光驱,然后把光盘放了进去。
我眼角的余光碰巧注意到了这一切。说时迟,那时快,我疯了似的从房间的另一头冲过去,同时大叫:“不……要……啊……”——我不顾一切地试图阻止她从那张光盘上安装软件(为了更好地理解当时的情景,你可以以夸张的慢动作来想象一下整个过程)。还好,她停住了,但我也几乎惊走了一只猫。
随数码相机附送的软件其实没啥问题。但真是这样吗?
这个软件可能是不必要的
任何现代的操作系统(甚至是Windows XP)都能浏览并且自动下载一台新数码相机里的照片。不需要什么特别的软件。但为了增加“价值”、与竞争对手形成差异化,相机公司的某些高管草率地采取了捆绑软件的策略——随机附带一款具有一堆古怪而独特功能的软件——这种做法是应被质疑的。
硬件公司通常不擅长做软件
数码相机公司玩得好的是硬件制作,而软件呢,充其量是事后才想起来要做的事,只是一件附属品,在销售人员眼里也不过是锦上添花的玩意儿。
不明来源的软件很可能是由烂程序员开发出来的
抛开别的不说,你即将安装的这款无名软件,它有用而且用户体验良好的概率是很低的。
不幸的是,选择以软件开发作为自己的职业有很多副作用,其中之一便是,久而久之,你会变得厌恶软件。我说的是真正的厌恶!一种强烈的厌恶之情!想象一下你碰到过的最愤怒的用户,把他的情绪乘以1000倍也抵不过我们程序员对软件的感受。没人比程序员更讨厌软件。甚至此时此刻,我在说这个事的时候都感觉到自己的愤怒。
把开发软件作为职业的人会有这种态度,这难道不奇怪吗?我们每天写着代码,因此还得到报酬,怎么还能有怨恨呢?
David Parnas在一次采访中这么解释道:
问:在软件工程中,最常被忽视的风险是什么?
答:无能的程序员。有人估计,美国需要超过20万名程序员。这完全是误导!这不是数量的问题,而是质量问题。一个烂程序员在一年里可以轻易创造两个新的就业机会。雇用更多的烂程序员,只会加大我们对他们的需要。而如果我们有更多优秀的程序员,并且能够让他们脱颖而出,我们对于程序员的需求就会变少,而不是更多。
我怎么如此肯定这世界到处都是无能的程序员呢?因为我就是其中之一。
我们都在香肠加工厂干过活,因此我们知道那玩意儿是怎么做出来的。这事不光彩!大多数软件都是像我们这样的烂程序员(有的比我们更烂)开发出来的。这意味着,大多数软件都是烂货。ScottBerkun曾经写过一篇文章,题为“Why Software Sucks”(为什么软件叫人失望)。文中提到:
当人们说“这东西真烂”,他们的意思是下面的一条或几条:
它非我所需;
我不知所措;
它没必要这么复杂难用;
它故障频出;
它丑陋得让人作呕;
它与我的世界观不相符;
它把我的精力浪费在工具上,而我更应该专注于我的工作。
你觉得与那台数码相机捆绑的软件符合上述几条?我猜全部命中。这也是为什么说,***别用软件。如若不然,你也要尽可能少用软件,甚至于,只用那些有着良好声誉的确实可靠的软件。
我不喜欢安装新软件。恰恰相反,我对这事很恐惧!
我来讲一个自己做了很多次的噩梦吧。在梦里,我坐在一台电脑面前。这台机器启动了,跑的是我自己开发的操作系统。然后,我打开一个网络浏览器,它也是完完全全由我自己开发的。我访问了一个网站,这个网站也是我自己搭建的。我在页面上刚一点,结果蓝屏了。蓝屏程序本身也蓝屏了,就这样一发不可收拾,引起了一场大爆炸,把整个街区都毁了。
这个梦还算好的。更糟的时候只有尖叫。周围一片漆黑。
总之,我讨厌软件。我讨厌绝大部分软件,尤其是我自己的,因为我知道做好一个软件有多难!这听起来有些奇怪,但对于软件开发者来说,这却是一种自然而健康的态度。你会发现,这是所有有能力的程序员的共识,也是成长的必经之路。
实际上,在面试的过程中,我觉得只要用一个简单的问题,就能判断出一个软件开发者是否有能力:“近期你见过的最糟糕的代码是什么?”
如果他们没有毫不犹豫地回答说“我自己的”,那么你应该立即中止面试。朋友,对不住啦,你对软件讨厌得还不够!过几年再来吧,如果那时候你还在当程序员……

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
如果没有 Android,世界会怎样?
【大咖・来了 第7期】10月24日晚8点观看《智能导购对话机器人实践》 一篇柯达将要联合另一家公司Bullitt,推出 Android 平板电脑的新闻引起了很多人的关注。因为受数字摄影的冲击,柯达曾一度面临破产保护,慢慢退出了人们的视线。 但现在,它又回来了——得益于 Android。试想,如果没有开放的 Android 操作系统,柯达要做平板电脑会有多难。但是,如果没有 Android,柯达并不会是受影响***的公司。那么,如果没有 Android,世界将会怎样? 首先,也是最直接的,Android 的创立者 Google 会成为雅虎。Android 帮助 Google 建立了自己的移动生态,如果没有 Android 的话,Google 将错失整个移动互联网。就好像雅虎错失了搜索之后沦为平庸,失去移动互联网的 Google 也会变得不再重要。 其次,移动互联网的格局会和今天大不一样。 在 Android 出现之前,智能手机市场的主角是 RIM(黑莓)、Palm、诺基亚(Symbian)以及微软的 Windows Mobile。苹果的 iPhone 也刚刚加入竞争。如果没有 Andro...
- 下一篇
传Apple Watch 3月发布,春节送礼不能指望它了
【大咖・来了 第7期】10月24日晚8点观看《智能导购对话机器人实践》 苹果要在今年年初发布Apple Watch的消息已经传闻已久,而最近,9to5mac的作者MARK GURMAN给出了具体的时间表,Apple Watch将在今年3月发布。2月中旬,苹果将给员工进行培训。 根据GURMAN得到的消息,苹果即将完成Apple Watch软件部分的设计。早在去年11月,苹果副总裁Angela Ahrendts便发了内部信,提到Apple Watch将在2015年春季发布,在中国的春节之后。 目前看来,只要Apple Watch OS***的工作顺利,Apple Watch将会按照苹果预计的那样完成计划。而现在,苹果也在开展针对Apple Watch的培训计划,来让苹果零售店的员工能够熟悉这一新品类。美国地区每家苹果零售店将派出一到两个代表,前往库布蒂诺或者奥斯汀的办公室***手把玩 Apple Watch,日程定在了2月9日到16日。此行的目的是,要在Apple Watch正式发布前,这些熟悉Apple Watch的代表们在各自的苹果零售店对其他的店员进行培训。 早在去年9月,Appl...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2全家桶,快速入门学习开发网站教程
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS6,7,8上安装Nginx,支持https2.0的开启