我們在開源專案中是怎樣埋彩蛋的

Aresn發表於2018-12-25

今天的 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 也會不斷帶來新的彩蛋,給使用者帶來驚喜,當然,它只會出現在文件中,原始碼是不用擔心的!

來源:https://juejin.im/post/5c21e80951882521c811a132

相關文章