搞编程,你以为是妹子陪你一辈子么,错!是bug

in #joke7 years ago

image
1.新浪微博黑名单“刘伟楠”
image

刘伟楠万般无奈之下发了帖子,一时间响应者无数。最终在网友声讨下,新浪微博取消了该项屏蔽,修复了这个bug。不过面对刘伟楠的精神拷问“这尼玛是为什么?”新浪微博并没有给出解释……

2
Google Arts & Culture ?
“Fuck this app”

谷歌有一款强大的APP:Arts & Culture。用户上传自己的自拍照后,系统会将照片与艺术画作进行对比,匹配出一张和用户长得最像的名画或艺术品。

社交网络顿时沸腾了!人们纷纷晒出自己的自拍匹配成果,有些效果不错:
image

但,有些就比较尴尬了
image

前!方!高!能!

image
这就尴尬了,配合上当事人对此bug铿锵有力的吐槽,瞬间获得无数点赞和转发,希望Google的大佬们能早点改掉这些bug,让他们重新做人…

3
放《青藏高原》高音会造成笔记本死机

知乎用户wuz遇到这样一件事:

有用户反应每次用笔记本播放《青藏高原》时,电脑就会死机。经测试发现,唱到最后的“那就是青藏高~~”时,硬盘产生共振,振幅过大,读写头就读不出数据了。听说,为了抓住这个bug,听了一个月的青藏高原……

最后bug怎么解决的呢?把固定硬盘的螺丝紧一紧,改变固有频率就可以了。
image

4
中英文符号逼疯无数程序员
image

请看,如上两段代码有什么不同?一模一样是吧?但实际上第二行可以运行,第一行就不行。

为啥?因为中文的“-”和英文的“-”虽然外表相同,但编码上差远了

5
无独有偶,大小写bug也逼疯了一批

曾有一位负责微信公众号开发的程序员自述:当时后台是技术领导写的,c#公众号支付的预定单和加密全在后台,后来后台改版本,由c#改为Java,结果调了一晚上,显示签名错误。

c#的代码和Java的代码对了一遍,没发现问题;又把微信公众号配置也看了一遍

也没问题;各种百度、各种猜想、各种验证,都不对……

最后去微信官网看了开发者文档,发现上面预定单的appId的i是大写,但支付的时候是小写!

6
WIFI竟然也能成为bug的罪魁祸首

刚进公司做iPad应用,公司给了两台测试机:一台iPad4、一台iPad Air。

应用里面有个资源下载功能,同一个资源用同一段代码,不过在iPad Air上下得飞快,在iPad4上面就慢如龟爬,一模一样的程序为什么会有这么大的差别呢?是不是两台设备内部某个网络硬件不一样导致的呢?

之后不断查资料,看帖看论坛看博客,寻找有没有前辈遇到同样的问题。然而找了3天还是找不到……到了最后,突然发现!
那台iPad4连的是楼下咖啡店的WiFi……

7
电子邮件无法发送到 500 英里以外

我在做校园的邮件系统管理员的时候,有用户向我抱怨说:他们不能发送超过500英里距离的email...

image
用户中有位地理统计人员,还添油加醋地制作了一张邮件发送失败地图,地图上显示,她邮件的送达区域半径比500英里就多那么一点点:半径内的收件人,全收到了,之外的,全失败了。

然而事情的真相是:

一次软件升级导致远程服务器超时时间被设为0。在一个具有典型负载的特定机器上,零超时意味着如果连接时间稍微超过3毫秒,服务器就会终止连接。而以光速传播的电信号,在3毫秒的时间内所能到达的距离大约是:

0.003 * c (光速) = 558.84719 miles

8
只有在星期三才会崩溃的系统

一家医院用来监控病人健康的数据库,每到周三,会自己崩溃。

该事件中,最大的难度在于,一周只有一天有机会debug。

该系统记录日志是用 C 风格的代码编写的,把日志字符串记录到了一个固定长度的缓冲区中,其中日志时间一栏,格式例如“Monday, July 17, 1997, 10:38:47.123“。

到底为什么呢?请看下图:

image

因为周三的日志的时间一栏,缓冲区恰好溢出了。(就差一个字节写不下)

9
当我坐在窗边的时候,内存读写就会失败

给一个自己设计的SD卡控制器写驱动,从五月开始调试,一直很顺利,到了七月份突然开始出现间歇性的SD卡读写失败,而且越靠近窗户,失败频率越高。

驱动程序是要下载到控制器的板子上的。当这块板子放置于窗边,特别是正午的时候,调试几乎总是失败。

造成这个bug的原因是:电路板上芯片的正常工作温度有限,当超过一定的温度时它就带不动负载了,而7月的正午,太阳正好会通过窗户会照到板子,导致温度过高。

10
摇动游戏手柄的时候,游戏存档就会失败

在开发PS1游戏“袋鼠大进击”这款游戏的存档/读档时候遇到的。Bug的症状是每隔一段时间存档/读档都会超时失败。并且十分随机。

该事件中的难点在于重现bug。当开发人员把可能出错的代码已经注释到了四大皆空的时候,bug依然随机出现。偶然间,测试发现了快速重现Bug的方法:一边摆动手柄,一边存档。

残酷的真相是PS的时钟在高频率下运行时,会影响到主板旁边的晶振,造成手柄控制器的内存卡控制器之间的串扰。手柄上一有信号,内存就被干扰了。

还有一些,生活中的让人啼笑皆非的小bug
比如:
557854km/h的星际高铁……
image

打个车,敬业到跨省来接你的司机吴师傅……
image

你呢,遇到过哪些让你终生难忘的bug?

Sort:  

Hi! I am a robot. I just upvoted you! I found similar content that readers might be interested in:
https://www.itcodemonkey.com/article/3192.html