惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

SecWiki News
SecWiki News
I
InfoQ
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
博客园 - Franky
T
Tailwind CSS Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
量子位
博客园_首页
罗磊的独立博客
V
V2EX
李成银的技术随笔
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
True Tiger Recordings
Vercel News
Vercel News
Cyberwarzone
Cyberwarzone
Cisco Talos Blog
Cisco Talos Blog
F
Fox-IT International blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
M
Microsoft Research Blog - Microsoft Research
Know Your Adversary
Know Your Adversary
爱范儿
爱范儿
The Register - Security
The Register - Security
G
Google Developers Blog
The Hacker News
The Hacker News
Malwarebytes
Malwarebytes
S
Securelist
博客园 - 三生石上(FineUI控件)
Jina AI
Jina AI
T
Threat Research - Cisco Blogs
T
The Exploit Database - CXSecurity.com
S
SegmentFault 最新的问题
博客园 - 叶小钗
F
Fortinet All Blogs
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
博客园 - 聂微东
T
Threatpost
博客园 - 【当耐特】
D
Docker
P
Privacy & Cybersecurity Law Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
G
GRAHAM CLULEY
V
Visual Studio Blog
C
Cisco Blogs
IT之家
IT之家
S
Security Archives - TechRepublic
Latest news
Latest news
阮一峰的网络日志
阮一峰的网络日志

XiaoHui.com

Shareware 精神永存:这是独立开发者最好的时代 - XiaoHui.com 世界读书日:AI vs 人类 的一张漫画 - XiaoHui.com In AI We Trust - XiaoHui.com Google Suite 免费域名邮箱可继续用于个人用途 - XiaoHui.com 有没有德高望重的程序员? - XiaoHui.com Telegram Channel 与 微信公众号对比 - XiaoHui.com 1024 程序员节见闻:程序员真的又秃又白吗? - XiaoHui.com WordPress 的另类用法:适合 IT 人士使用的日记本 - XiaoHui.com 达成一项个人小成就:完成 1000 个番茄工作时 - XiaoHui.com 电影《The Father - 困在时间里的父亲》中的半脸雕塑 - XiaoHui.com 跳出小圈子,独立思考,才会有真正的“人间第一流” - XiaoHui.com 关于 EOS 的一点看法 - XiaoHui.com 埋头屯币才是硬道理 - XiaoHui.com 如何规避软件开发中的大中华区政治红线问题 - XiaoHui.com 人生逆天技能:如何扭曲主观时空,一辈子活成 N 辈子? - XiaoHui.com 使用价值平均策略定投 BTC、LTC、ETH、DASH 等加密货币 - XiaoHui.com 借大家关注 BTC 的这波风潮,科普和分享一下 DASH - XiaoHui.com 写在个人网站 20 周年之际:梦想、理想与目标 - XiaoHui.com 安全网购、海淘神器:中行虚拟卡 - XiaoHui.com 执诺基亚者说 - XiaoHui.com Steemit 活动用户统计与趋势分析、大鲸统计、交易所转帐分析 - XiaoHui.com 带着女儿游遍全世界(4): 横渡浏阳河 - XiaoHui.com 实现了 XiaoHui.com 与 Steemit 上的评论数据同步 台湾地区最大的软件销售网站 Softking 停止服务 - XiaoHui.com 网络时代的高素质教师,等于抱了一只金饭碗 - XiaoHui.com Welcome to Steemit-China / 欢迎进入 Steemit 中文区 现世报来得好快 - XiaoHui.com 写了个入声字自动标注、查询的工具 - XiaoHui.com 纪念共享软件界的麦教主(Magic2003) - XiaoHui.com 积善之家,必有余庆 - XiaoHui.com 人黑人,黑死魂:差点被长城宽带吓死 - XiaoHui.com 给女儿写了个成语接龙的小工具 - XiaoHui.com 邮政信箱的没落 - XiaoHui.com 带着女儿游遍全世界(3): 台湾花莲看海 - XiaoHui.com [有图有真相] 程序员拖鞋,码农专用 - XiaoHui.com AlphaGo 连围棋九段大师都战胜了,我们还有学围棋的必要吗? - XiaoHui.com 比特币转帐的乌龙操作事件:手续费高达 15.68 BTC 的交易 - XiaoHui.com 你认为未来十年下一个被改变或颠覆的行业是什么?理由 ? - XiaoHui.com 程序员安身立命的必备技能 - XiaoHui.com 带着女儿游遍全世界(2): 甲米深海游泳 - XiaoHui.com 带着女儿去旅行(2): 泰国清迈贴春联 - XiaoHui.com 减少手机使用时间:我的智能手机应用列表 - XiaoHui.com MMM 骗局中国区崩盘 - XiaoHui.com 傻子太多,骗子不够用:警惕 MMM 骗局在中国蔓延 - XiaoHui.com 为 Internet 安全贡献的一份力量: 劝告 IE6 用户升级 93阅兵再次证明了代码缩进整齐的重要性 - XiaoHui.com 共享软件时代的终结: 中国共享软件注册中心停止运营 - XiaoHui.com 带着女儿游遍全世界(1):湖南官庄水库冬泳 - XiaoHui.com 大浪淘沙: 愿意写 Blog 的人越来越少了 - XiaoHui.com 大航海时代 vs 大贸易时代 vs 大数据时代 地球上最奇葩的生物 - XiaoHui.com 考得好不好,对你的人生,真的没那么重要么? - XiaoHui.com 平平安安的2013年 - XiaoHui.com 闲话江湖象棋残局:一个有意思的象棋玲珑局 - XiaoHui.com 2013年心愿定单 - XiaoHui.com Linode VPS 升级后,更实惠了 - XiaoHui.com 每年关灯一个小时,不如每天晚上七点关电视半小时 - XiaoHui.com 做曲写歌 vs 共享软件 的 相同点与不同点 一国两制,本质就是一国两奶 - XiaoHui.com 神奇的淘宝 和 神奇的 QQ 小白用户 卖火柴的小女孩,三毛,毕节五流浪儿 - XiaoHui.com 在国内出远门,选择飞机还是火车? - XiaoHui.com 女儿的问题:当你在你妈妈肚子里,我也在我妈妈肚子里时…… - XiaoHui.com 【软件用户的故事】大多数的简体中文用户,写不好一封有基本礼仪的邮件 - XiaoHui.com “我的征途是星辰大海”之BT网站版:将BT服务器开遍全银河系 - XiaoHui.com 只要一千八,穿越盛唐大清不是梦 - XiaoHui.com SW 客户支持与销售收入增长的对比 - XiaoHui.com 有关韩寒代笔风波之争中提到的论据: 《管锥编》 - XiaoHui.com [低 PE 投资法实验帐户] 第三轮实盘操作 - XiaoHui.com [有图有真相] 网赚人士(Affiliator)的最爱车牌 - XiaoHui.com 蓝精灵的妈妈到哪去了? - XiaoHui.com SOHO 十年盘点与反思: Refresh + Rebuild 云风辞职信简化版: 我要辞职去攀岩;以后没钱了,还要回来 - XiaoHui.com [有图有真相] 你见过粉色的寺院山门没? - XiaoHui.com 程序员版本的蓝精灵之歌 - XiaoHui.com 多谢文化部推荐100首新歌 - XiaoHui.com 陈丹青: “活着就是中国人最大的信仰”——崖山之后,已无中国? - XiaoHui.com 国家敌人:网络时代如何逃脱天罗地网,做一个大隐于市的人? - XiaoHui.com 修改 hosts 文件访问 Google+ 的办法 我的 Google+ 帐号, 以及免费 Google+ 邀请赠送 使用 Dropbox Uploader 在 Web 服务器 与 Dropbox 之间同步数据 我旗帜鲜明地支持男同性恋 - XiaoHui.com “螳臂当车,自不量力”?天朝的毛毛虫立功啦! - XiaoHui.com 转让一个长沙联通 3G 186的牛号 - XiaoHui.com 穿越人士、2012世界末日幸存者必备: CD3WD - XiaoHui.com 畸形的中国教育: 幼儿园 vs 小学 vs 初中 vs 高中 vs 大学 你的手机贴膜么? - XiaoHui.com 爸爸,你已经老了 - XiaoHui.com XiaoHui.Net 程序员论坛成立12周年了 - XiaoHui.com 2010年的最后一天,用了十年的Nokia 3310,终于丢失了 - XiaoHui.com Windows Live Space 空间至 WordPress 独立Blog 迁移指南 [笔记本电池保养] 电池重要,还是数据重要? - XiaoHui.com 一些小小的调整,改善自己的生活与工作 - XiaoHui.com 823年才一次的五个星期五,五个星期六,五个星期日? - XiaoHui.com 一个与众不同的“温水煮青蛙”的故事 - XiaoHui.com 这个夏天,终于有美女愿意跟我一起游泳了 - XiaoHui.com 《你们去卅城》:卅城在哪里? - XiaoHui.com 我看名人故里之争 - XiaoHui.com 有图有真相: CCAV 惊现跨国父子双胞胎被上海世博折服 - XiaoHui.com
你写的第一个软件是什么?它还在运行吗? - XiaoHui.com
XiaoHui · 2011-01-05 · via XiaoHui.com

  Joel Spolsky(牛站 Joel on Software 的所有者,著有《软件随想录》的一书) 看到了这个问题,他没有正面回答,而是在回复跟贴讲了一个程序员阿士顿 (Ashton) 的故事。 Dreamer's BLog将这个故事翻译为了中文。

  这个可怜的程序员阿士顿,自从他工作起,他写过的任何一行代码都没有运行过。过去两年内他做的任何一件事情都没有对世界产生过什么影响。 (Not one line of code that he had written had ever run. Not one thing he had done in two years of work made any impact on the world.)

  我告诉过你有关阿士顿的事情吗?

  阿士顿是一个典型的吃玉米长大的农场男孩,他的父母曾经是嬉皮士,从来没有真正地同心协力过,直到有一天他的妈妈继承了密歇根农村的15亩地。然后他全家搬到了那里,买了一对奶山羊,靠在农贸市场把有机山羊奶酪卖给雅皮士们谋生。

  那个时候阿士顿才10岁,他需要每天早晨4点起床给那些该死的山羊挤奶,这活非常累。阿士顿很喜欢上学,因为上学就意味着不需要跪在羊粪里工作了。整个高中他都异常努力,希望可以拿到一所名牌大学的奖学金,然后他就可以离开农场了。在大学里,他发现大学生活比农场的生活轻松多了,所以搞不明白为什么每个人不能像他那样每科都拿到A。他选择了软件工程作为自己的专业,因为他深信一个工程师绝对不需要早晨4点就起床。

  阿士顿就这样从学校毕业了,他对软件产业并没有很多了解,所以他去了招聘会,申请了3份工作,并且都拿到了 offer 。然后他挑了一个给钱最多的offer:年薪高达 32,000美元,这是一家位于密歇根西南部的大家具公司,为全世界的企业生产办公小隔间(cubicle farm)。入职之后,因为阿士顿再也不想回到农场了,所以他决定给他的老板查理谢尔曼留下一个好印象。

  “这个可不简单”,坐在他隔壁的同事杰夫说:“她在这里也算是个传奇人物了。”

  “你的意思是?” 他说。

  “嗯,你还记得几年前吗?那个时候到处都是关于千年虫的话题。”

  阿士顿可能是太年轻了。“千年虫?”

  “是这样的,没有人预料到在60年代写的程序在2000年还会继续运行,所以当时给年份只留了2个数字的存储空间,也就是说 1999 被存储为 99 。所以当 2000 年到来的时候,计算机系统就会崩溃,因为它会试图将 100 存储成2个数字。”

  “真的?我还以为那只是个传说,” 阿士顿说。

  “世界上所有其它的公司都没有发生什么事故,” 杰夫说。“因为它们花了数十亿美元去检查每一行代码。但是在我们公司,当然了,因为他们是狗娘养的混蛋,所以他们不愿意做任何测试。”

  “完全没有做吗?”

  “几乎没有。零测试。所以你瞧,当人们在2000年1月2号开始工作的时候,发现所有东西都不能工作了。他们不能打印生产计划,甚至不能打开半个装配生产线。没有人知道如何进行工作,工厂差不多停滞了。”

  “你在开玩笑。” 阿士顿说。

  “绝对没有。工厂整个都停止运转了。这个时候查理出现了。她那个时候还是个新人,曾经在微软,可能是NASA,也可能是其它机构工作过……没有人清楚为什么像她那样的牛人会到我们这种地方工作。然而她坐了下来,然后开始写代码。然后写代码。继续写代码。

  查理整整写了九天代码,这九天她没有睡觉,没有吃东西,有些人说她甚至没有去过洗手间。她检查了一个又一个系统并且逐个修复了它们。那真是一件壮观的事情,老天,那些需要被修复的可是 COBOL(一种非常古老的编程语言)系统。在整个工厂处于停滞状态的时候,查理派人去大学图书馆找来了古老的 COBOL 手册。装配线上的工人站着直哆嗦,因为连恒温器也有千年虫问题。而查理则一杯接一杯地喝咖啡,像一个疯婆子一样不断敲击键盘。”

  “哇。她没有去过洗手间?”

  “呃,那个部分可能有稍微那么一点点的夸张成分,但是她的确连续9天工作24小时。总之,在1月11号的时候,就在开工前一天的5分钟,她走出了她的隔间,来到了打印机面前,按下了一个按钮,然后,奇迹出现了!生产计划打印出来了,团队计划也打印出来了。一切都是完美的,经过了完美的格式化,使用了一个稍微较小的字体把 ‘2000’放到了原来写‘99’的地方,她甚至还写了一个新的优先级优化系统,可以帮助工人在不得罪那么多客户的情况下赶上过去9天的生产进度。所有的装配线都开始工作,好像从来没有出现过错误一样,供暖也恢复了,打印出来的发票的年份由‘19100’变成了‘2000′。而且,之后谁也没有找到过一个bug.”

  “得了吧!” 阿士顿说。“谁也写不出没有bug的代码。”

  “她做到了。我亲眼看到的。这是他们第一天无间断地生产了相当于以往两天生产的小隔间。”

  阿士顿目瞪口呆。“这简直是史诗阿。我怎么才能做到那样?”

  “你做不到,伙计,没人能做到” 杰夫边说边回到了自己的电脑前面,继续玩已经玩了4个多月的斯波克和蝙蝠侠之间的在线战争游戏。

  阿士顿不是一个轻言放弃的人,他发誓某一天他也会做一些富有传奇色彩的事情。但现实情况是,再也没有出现另外一个千年虫问题。而且在密歇根的那个地方,没有人可以提供一丁点儿关于如何写好程序的信息。事实上几乎没有什么事情需要程序员去做。分配给阿士顿去做的都是一些无聊的小项目……有一次他花了三个星期来处理这样一个事情:由于两个不同的销售税区域使用了相同邮政编码,导致在某个县的销售税是错误的。有趣的是,这个县位于纽约一个人烟稀少的地方,那里没有人买过办公小隔间,公司在那里也从来没有一个客户,所以他写的代码永远都不会运行。

  日子就这样过去了。

  两年来阿士顿一直带着热情和兴奋投入工作,迫不及待地想有所作为,想做一些了不起的事情。与此同时,他的同事却在上网冲浪,给朋友发短信,连续几个小时地玩电脑纸牌。

  坐在他旁边的那个同事杰夫,只有一个工作内容:每周更新一个“显示本周有多少人在工作中受伤”的 Excel 电子表格。从来没有人受过伤。每周杰夫都打开那个电子表格,然后移动到页面的底部,在那里输入日期和一个数字0,点击保存,然后就完成了工作。

  阿士顿甚至帮杰夫写了一个宏来自动化他的工作。杰夫不想被逮到,所以他拒绝安装这个宏。从那之后他们的关系就变僵了,真是尴尬。

  在阿士顿工作两周年的那天早晨,他和以往一样开车去工作,然后忽然意识到了一些事情。

  他写过的任何一行代码都没有运行过。

  过去两年内他做的任何一件事情都没有对世界产生过什么影响。

  而且在密歇根州的这个地方气温他妈的有24度,天空是灰色的,弥漫着臭味。他开的本田车也是一坨垃圾,在这个小镇上他没有任何朋友,他自己也什么都不是。

  当他开车到林肯大街的时候,他看到了左边他所在的那个家具公司。在公司园区前面飘扬着三面旗帜:美国国旗,伟大的密歇根州的州旗以及一面有公司标识的红白相间的旗帜。他开车进入了转弯车道等待左转,他的前面有一长排车,在高峰期的时候需要等四到五个红绿灯才可以左转,所以阿士顿有足够的时间来回想他写过的代码有没有哪怕一行是被别人使用过的。

  没有。他怔怔地留下了眼泪。

  然后他没有左转,直接往前开了出去,这差点酿成了一起交通事故。阿士顿忘记了自己已经打了转向灯,而打了转向灯就意味着你不能直接往前开。

  他沿着林肯大道开了下去,然后上了高速公路,他只是不停地往前开,一直来到了机场。他把他的垃圾本田扔在了航站楼的前面,心里非常清楚它会被拖走。他甚至没有去关车门就径直走到了柜台前面买了下一趟飞往旧金山的航班的机票,20分钟内起飞。然后他上了飞机,永远地离开了密歇根。