Facebook Messenger“斷舍離”實錄

Facebook Messenger“斷舍離”實錄

新版Messenger表面看上去只有細微的變化,但其內部已被徹底重寫。[Facebook供圖]

Facebook Messenger“断舍离”实录

2011年8月,Facebook推出了iPhone和安卓版的Messenger應用,將該社交網絡的聊天功能剝離為一項獨立的體驗。這款應用來源於Facebook收購的短信服務初創公司Beluga,旨在與無線運營商的短信套餐競爭。它一炮而紅,並且經久不衰:根據移動數據分析機構APP Annie發佈的數據,2016年,Messenger的每月活躍用戶數量達到10億,2019年,它成為全球下載量最大的應用。

在此過程中,它在原有文本對話的基礎上補充了各種各樣的功能,包括語音和視頻通話、遊戲、支付、聊天機器人以及Snapchat式的故事功能等等。隨著用戶群體和野心的擴張,其規模也日益壯大。2012年,Messenger的下載包大小隻有8.5MB,後來的版本竟在用戶的iPhone上佔用了130MB的空間,大概是另一款功能類似的Facebook即時通訊應用WhatsApp的兩倍。

但現在,Facebook給iOS版的Messenger來了一次大瘦身。通過從零開始重寫,它將Messenger佔用的內存縮減到了非常易於管理的30MB,不到其峰值大小的四分之一。據該公司稱,新版本的加載速度是舊版的兩倍。此次更新非常緊湊,Facebook得以悄悄地把它導入現有版本中,邀請一部分用戶進行測試。(在接下來的幾周裡,它將以獨立形式逐步向其他用戶開放。)

作為一個龐大的程序,其代碼縮減的幅度也令人震驚。Messenger從170萬行代碼減少到了36萬行,整整精簡了84%。

Facebook Messenger“断舍离”实录

斯坦·查德諾夫斯基[Facebook供圖]

2019年4月,Facebook在F8會議上公佈了Messenger改版計劃,代號“LightSpeed(光速)”,原本計劃於去年推出新版,但這項任務的艱鉅程度超出了Facebook的預想。Messenger副總裁斯坦•查德諾夫斯基(Stan Chudnovsky)將其比作房屋的改造裝修,當承包商砸開牆壁時,新的問題又出現了:“你發現的問題只會比你最初預期的更糟糕。”他說道。

作為用戶,尤其是剛剛入手新手機(或者手機本身尚新)的用戶,機子的處理能力和內存綽綽有餘,你可能沒有注意到,Messenger這些年來變得越來越臃腫。然而,很多人喜歡保留老舊的iPhone,而這些機子往往承載不了太大的應用。對他們來說,舊版Messenger的反應速度明顯遲緩。

Messenger工程總監、全面重寫任務的負責人之一莫森•阿格森(Mohsen Agsen)表示:“在低端設備上,你很快就會發現[新版本的]性能明顯不同。即使在高端設備上,連貫性也會更好一些。如果你剛剛運行完一款大型遊戲或加載了攝像頭,手機面臨內存壓力,那麼高端設備就會開始表現得像低端設備一樣。接下來運行的應用程序的大小就很關鍵了。”

阿格森認為,考慮到用戶每天可能要進出Messenger數十次,敏捷的性能是重中之重。他說,如果把Facebook的應用家族比作汽車系列,“有些是轎車,也必須是轎車。而我們真心認為,通信應該更接近於跑車,以速度和可靠性為核心。”

“ 我們仔細檢查了每一行代碼和每一毫秒。”

Messenger工程總監莫森•阿格森

調整一款應用程序,以獲得良好的性能,這不僅是對用戶的尊重,還能提高使用率,有利於業務發展。“我們知道,每一次對Messenger進行速度提升和程序簡化,都是在方便用戶溝通,增加其使用量。”工程副總裁雷蒙德·恩德雷斯(Raymond Endres)說道。恩德雷斯是Facebook元老,自Messenger誕生之初就致力於其發展。和LightSpeed項目團隊的許多成員一樣,他選擇了一款相對來說比較古老的iPhone(2014年上市的iPhone 6)作為項目期間的個人手機,以更好地感受數百萬真實用戶的Messenger體驗。

LightSpeed將推動用戶使用時間的增長,但對Facebook而言,它的戰略重要性比這更加深遠。由於深陷醜聞、數據洩露窘境、管理用戶信息的爭議,以及惡意用戶對其網絡的濫用,該公司將Messenger視為重建信任的關鍵步驟。

去年3月,Facebook CEO馬克•扎克伯格(Mark Zuckerberg)發佈了一份3,200字的宣言,名為“以隱私為中心的社交網絡願景”。它概述了整合公司多項服務(包括同名社交網絡、Messenger、Instagram和WhatsApp)以及加強私人通信、弱化公共共享的計劃。他寫道:“幾年後,我預計Messenger和WhatsApp的未來版本將成為人們在Facebook網絡上的主要交流方式。我們專注於提升這兩款應用程序的速度、簡潔度、私密性和安全性,包括採用端到端加密。”

將近一年過去了,關於如何(以及何時)將這一願景變為現實,Facebook還沒有透露太多細節。首次亮相的LightSpeed並沒有引入加密或與其它服務的新集成。但是,該公司用精簡、現代的更新取代了陳舊、臃腫、粗糙的代碼庫,以更好的狀態開始重新構想Messenger的體驗。“這是一個全新的平臺,允許我們做到此前做不到的事情。”查德諾夫斯基說道。

同中有異

目前,Messenger還沒有在用戶體驗的美觀、功能和結構方面進行徹底的改造。現在的應用看起來和2018年10月發佈的簡化版Messenger 4依然十分相似。新版本更加簡潔,去掉了Discover標籤(展示Messenger平臺上的商戶),對People標籤進行了改進,使其外觀更加華麗,並突出故事功能。但這些改動並不屬於LightSpeed項目,而是Facebook為持續改進Messenger所做的改變。

事實上,LightSpeed項目之所以如此費心費力,原因之一是Facebook希望在不淘汰功能的前提下大幅縮減Messenger的大小。(它的確暫時取消了一些功能,比如收件箱已讀回執和投票,但計劃不久後恢復。)該公司也無法對Facebook數據中心支持的服務進行重組,因為後端必須繼續運行安卓和網頁版本的Messenger,而這兩個版本均不包含在LightSpeed更新的範圍內。

Facebook Messenger“断舍离”实录

2011年輝煌時代的原版iPhone Messenger。[Facebook供圖]

該公司的結論是,要精簡Messenger,就必須無情刪除多餘的代碼。幸好,該程序存在大量可供選擇的多餘代碼,因為Messenger是一支大型團隊分散合作的結果。(Facebook最具體的信息是,目前有“數百名”工程師正在開發該產品;相比之下,作為2011年第一版Messenger的基礎,極簡主義通信應用Beluga是由一個三人團隊開發的。)

“ LightSpeed就好比我們的‘斷舍離’計劃。”

Messenger設計師愛麗絲·莊

軟件工程師約書亞•艾文森(JoshuaEvenson)表示:“擁有大量工程師、大量挑戰和功能有一個問題,那就是類似的問題最終會產生很多不同的解決方案。”隨著Messenger功能的增長,負責各個部分的開發人員習慣使用自己的代碼完成任務。例如,用戶從列表中選擇其他用戶的操作在整個應用程序中無處不在,比如屏蔽某人或指定誰能看到某個故事。直到LightSpeed項目出現,Messenger才有了一組標準的用戶挑選代碼。

工程師們是否曾經因為不得不採用更一般化的功能而感到憤怒,而這些功能並不是針對他們的確切目的而設計的?“當然!絕對有!”技術程序經理阿基拉·科薩瓦薩米(Akila Kesavasamy)笑著說。但是,“一旦大家圍繞項目的精神團結起來,想清楚我們試圖打造的產品是什麼以及開展LightSpeed項目的目的是什麼,所有團隊就神奇般走到了一起。”

雖然Facebook的目標並不是為了設計出一個外觀截然不同的Messenger,但這種程序內部的刪減確實引導設計師們對界面元素進行相應的精簡。這本身就是一次‘整理收納’的實用演練:“LightSpeed就好比我們的‘斷舍離’計劃。”產品設計師愛麗絲·莊(Alice Chuang)說道。

據愛麗絲的同事邁克·阿恩特(Mike Arndt)說,設計合理化包括創建模板,儘可能對Messenger體驗施加一致性,在特殊情況下允許一定程度的定製。“當你看到四合一或八合一的螺絲刀時,你就知道如何使用螺絲釘了。”他打了個比方解釋道,“但時不時就會出現平頭、十字或六角螺栓。”

Facebook Messenger“断舍离”实录

這一切努力不僅僅需要Facebook門洛帕克總部以及西雅圖、紐約和倫敦分支機構的Messenger員工之間的謹慎協調。Messenger團隊之外的Facebook員工,比如負責支付和Marketplace功能的員工,也必須參與更新。科薩瓦薩米說:“實際上還有40支不同的合作團隊,大部分人甚至都沒有意識到。”

除了淘汰重複的例子,Facebook還小心翼翼地避免為已經解決的問題發明新的解決方案,甚至取消了過去開發的一些解決方案。多年來,隨著Messenger功能的擴展,工程師給它添加了大量直接與服務器對話的定製微服務。這是一款大型複雜應用程序的典型開發路徑,但這些微服務需要執行緩存管理等複雜的數據整理任務。在LightSpeed項目中,該公司發現可以用廣泛使用的SQLite開源數據庫替代這一功能。“我們在這上面下了更大的賭注。”阿格森說,“原本由內存完成的任務,現在交給了數據庫。”

這不是一次普通的更新

幾乎所有和Messenger一樣久遠的應用程序都有可能從LightSpeed這樣一場大刀闊斧的革新中受益。但在筆者與幾位新版本負責人的討論中,他們強調,像Facebook這樣徹底改造現有產品的決定十分罕見。阿格森和恩德雷斯回想起了Windows和Mac系統多年前經歷的全面改革,當你知道這兩人上世紀90年代都曾在微軟工作時,這個參照物就顯得尤其有意義了。

目前,已經有用戶開始接觸新版本的Messenger,不知Facebook是否打算對其它產品進行類似的大幅修改。該公司表示,它不打算對安卓版Messenger施以同樣程度的改造。目前,下載安卓版Messenger只需要佔用40-45MB的空間,具體取決於你的設備。但在未來的安卓更新中,它計劃加入部分LightSpeed團隊開發的技術。

那其它產品呢?比如Facebook應用本身,畢竟,以目前iPhone版225.3MB的下載大小,它也算不上輕巧吧?該公司沒有透露相關信息。但是,通過LightSpeed項目,Facebook也學到了與其擁抱隱私權和系列應用集成的計劃相關的一課,那就是前所未有的項目需要獨特的項目管理水平。Messenger負責人查德諾夫斯基承認:“我們原本可以計劃得更周全?也許是吧。”

在添加新功能的同時保持Messenger的小巧快捷,聽起來就很費功夫。艾文森說,新版本提供了一個堅實的基礎。“現在有了一種通用的方法。”他說。“通過執行這個方法,我們希望這款應用未來能夠保持相同的狀態。”

恩德雷斯補充說:“我們學到了很多,花了很多時間思考性能的可持續性,我們的團隊也投入其中。”他謹慎地提醒道:“在軟件行業,一年是一段相當慢長的時間。”如果Messenger不再反彈回130MB的龐然大物,我們就知道LightSpeed是一種永久的狀態,而不是權宜之計。

翻譯:李美玉

更多內容請下載21財經APP


分享到:


相關文章: