我们在开源项目中是怎样埋彩蛋的

8,415 阅读4分钟

今天的 AntDesign 圣诞节彩蛋事件确实炸开了锅,加彩蛋的初衷是好的,只是这次玩过了火。

在开源软件中,加彩蛋是一种乐趣,并不为奇,同为知名 UI 组件库的 iView 项目,也经常在 文档 中埋藏很多彩蛋,不过仅仅是在 文档 中,组件库中是没有的。本文就来介绍下我们在开源项目中是怎样埋彩蛋的。

全民彩蛋计划

为庆祝 iView 两周岁生日,以及 3.0 版本的发布,我们在 18 年 7 月 28 日更新后, iView 文档 中放置了三枚彩蛋,它们埋藏在不同的页面里,可能是一段隐藏的代码,或是一段需要破解的密码等等。当然,找到三枚彩蛋,你并不能继承 iView 作者的遗产!彩蛋可以到 iView 开发者社区 兑换大量的 IO 币,IO 币可以换取各种礼物。

这个活动已经进行了 5 个月,已经有两名聪明的小伙伴成功找到了前两枚彩蛋,第一枚的位置是在 Collapse 折叠面板 页面的最后一个示例中:

www.iviewui.com/components/…

显示方法就是点击倒数第二个示例“简洁模式”中的第二个面板斯蒂夫·盖瑞·沃兹尼亚克,然后双击内容最后的 19840124,页面中就会弹出一个提示:

19840124 是一个日期,也就是 1984 年 1 月 24 日,这一天,苹果发布了麦金塔电脑(Macintosh),对于苹果来说具有历史性的意义。第一枚彩蛋就是为了纪念这个事件。

第二枚彩蛋的位置在 Circle 进度环 页面的第二个示例总:

www.iviewui.com/components/…

显示方法是点击“+号”按钮,当圆环到达 100% 后,再点击两次“+号”,页面中就会弹出一个提示:

这串字符是用 base 64 编码过的,解码后,就是第二枚彩蛋的正确答案了:

ToyStory-Pixar

Pixar 就是皮克斯动画工作室,是由苹果前 CEO 乔布斯被“赶出家门”后收购的,ToyStory 就是《玩具总动员》,是皮克斯制作的一部计算机动画长片和第一部剧场影片,给无数小朋友带来了欢乐。第二枚彩蛋就是纪念它的。

第三枚彩蛋至今(2018-12-25)仍未被找到,聪明的你要赶快行动哦!第三枚彩蛋与前两枚同样与苹果公司有关,这是因为 iView 的作者非常喜欢 Apple 和乔布斯!

弹幕彩蛋

在文档中埋彩蛋并不是 iView 的第一次活动了,在 16 年的 7 月 28 日(iView 一周岁),iView 文档首页增加了发弹幕的功能,你发的弹幕,同一时间打开文档首页的用户都可以实时看到。

一开始,大家玩的都很愉快,比如说 PHP 是世界上最好的语言 的,还有要妹子微信的,这很程序员:

再到后来,就被玩坏了,因为没有加验证,聪明的程序员各种 XSS 手段都用上了,于是画风就变成了这样:

这是一次典型的 XSS 攻击案例,哈哈!活动持续了 1 星期,总共发布了 10 万多条弹幕,大家玩的很开心。

节日彩蛋

逢年过节,iView 首页都会装饰,比如万圣节、圣诞节、春节。主要会美化一下 Logo 和改变首页背景图,比如今天的圣诞节,iView 的 Logo 是这样的:

比如 2018 年的春节:

春节有两个细节,一个是首页会放烟花(因为是截图,看不到动画),另一个是右上角有一个“福”字,当时可以支持支付宝的扫福活动。

2017 年的万圣节:

2017 年的圣诞节:

如果恰巧在一些特殊的时间节点发布了新版本,iView 在更新日志里也会做一个小彩蛋,或者说是纪念。比如 2018-03-14,这一天是史蒂芬·霍金离开这个世界的日子,我们在更新日志中和当天的文档首页也有纪念(首页为黑白色,现在无法找到当时的截图了),下面是更新日志:

后记

埋藏彩蛋是一个很有意思和意义的事情,许多游戏、电影、开源软件都有彩蛋。它们爱自己的用户,爱这个世界,希望给人们带来欢喜。iView 也会不断带来新的彩蛋,给用户带来惊喜,当然,它只会出现在文档中,源码是不用担心的!