23,148,855,308,184,500
上个月VISA信用卡出事了,某个美国人在加油站买了一包香烟,于是他的信用卡里就有了标题那个数字的钱“$23,148,855,308,184,500”,注意这可以美刀啊,相当于美国整个国家国债的N倍。
程序员们开始疯狂了,他们在stackoverflow.com上开始人肉debug这个问题(贴子)。排名第一的回答(564 votes)说,这个数字转成十六进制是:0x2020 2020 2020 1250,很明显,前面的若干个0X20表示的是空格,也就是说,程序错误地处理了空格。于是本回答后的跟贴把这个回答推举成了本年度最牛的debug——”best debug of the year”,后面还有人说这个人应该在NASA工作,继而有人跟贴,应该是VISA而不是NASA……
当然,也有人有不同的意见……
排名第二个贴子(仅有排名第一的零头 67 votes)发表了不同的意见,贴主说,VISA报道说当时全球在那个星期内发生了大约13000起这样的事情,而且,全世界在报道相似的事情(报道一,报道二),但所有的报道都是相同的数字——23,148,855,308,184,500。如果前面是空格,那么最后的一个字节是,0x1250怎么可能会是一样的呢?所以,他并不认为空格被解释了,他觉得一定是某个地方出错了,并不像一楼所说的那么简单。
为什么说这个事呢?主要有两个目的:
其一、软件总是会有很多Bug要我们去debug,bug的症状并不代表着那就是Bug的原因,但通过Bug的症状推理出Bug的原因,有时候真是很像一个侦探要做的事情,从上面的这个故事中,我们可以看出这样的能力的重要性。要有这样的推理能力,需要有很强的基础知识,以及丰富的经验。
其二、StackOverflow.com是一个很不错的类似于“百度知道”但要比其好N倍的与编程相关的站点,相当的不错,你会经常光顾这个站点吗?
最后,大家可以看看这个贴子后面的一些人的相法,各种说法都有,包括一个灌水的,来轻松一下:
That’s the exact amount I intend leaving to my children after I’m dead.
呵呵。(全文完)
转载于酷壳CoolShell 无删改 仅以此纪念陈皓(左耳朵耗子)
用的 astro.build 模板,自动部署到 vercel , 套了一个 cloudflare 以前没这么快呀 rao.pics 杭州移动还是有点慢,而且这种非常不稳定…
一年一闭一睁又快过去了,年终奖是每个打工者期盼的重要奖金,作为技术部经理,对于年终奖分配是个重要的工作,这个决定到公平和服众与否,我本人现在已经制定出来一套方案,但是还是希望听…
以前刚开始工作的时候,天天被公司的 leader 嘲讽代码质量差,健壮性不强,也被公司的老鸟嘲讽很菜。 经历过一番历练,渐渐有了提高代码质量的意识。 换了一家公司后,公司里面还…