這個曾領先於谷歌和微軟的開源項目,爲何盛極而衰?

{"type":"doc","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"編譯|核子可樂"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"編輯|燕珊"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Firefox正在不斷流失用戶,這是一個不爭的事實。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"來自Firefox的"},{"type":"link","attrs":{"href":"https:\/\/data.firefox.com\/dashboard\/user-activity","title":"","type":null},"content":[{"type":"text","text":"公開數據"}]},{"type":"text","text":"顯示,自2018年底到2021年8月30日,桌面端Firefox的MAU(月活躍用戶數)下降約 18% 至 1.998 億,大概少了 4400 萬月活用戶。進一步看會發現,其中有一半月活用戶是今年內損失的(3月至今減少近2000萬)。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"image","attrs":{"src":"https:\/\/static001.geekbang.org\/infoq\/d5\/d518153ecb1720e71e096c989279d129.png","alt":null,"title":null,"style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":null,"fromPaste":true,"pastePass":true}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"根據Statcounter在8月發佈的"},{"type":"link","attrs":{"href":"https:\/\/gs.statcounter.com\/browser-market-share#","title":"","type":null},"content":[{"type":"text","text":"統計"}]},{"type":"text","text":",在桌面瀏覽器市場中,Microsoft Edge 和 Mozilla Firefox 目前正在激烈爭奪第三的名次,其中Edge錄得3.57%的市場份額,Firefox則是3.55%。"},{"type":"text","marks":[{"type":"strong"}],"text":"自從Edge 瀏覽器轉向Chromium內核之後,其份額就持續上升。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"事實上,近幾年關於Firefox衰落趨勢的討論絡繹不絕。Firefox曾一度是全球第二大瀏覽器,市佔率高達35%,而現實的情況是,它的市場佔有率已經連續多年下降。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"一位有近40年編程經驗的開發者Dan近日就Firefox的衰落趨勢發表了自己的看法,從幾個方面闡述Firefox的不足之處。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在社區討論中,一個獲得不少贊同的觀點是,因爲不想讓Google完全控制瀏覽器市場所以才用的Firefox。但也有人表示,當 Firefox 越像 Chrome,自己就越沒有理由繼續使用它了。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Dan認爲,造成 Firefox 衰落的原因,始於2009年第三季度的一個致命決定……"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"以選項卡爲中心"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong"}],"text":"在做出強制推行選項卡中心設計的"},{"type":"link","attrs":{"href":"https:\/\/www.wired.com\/2009\/07\/mozilla-considers-copying-chrome-for-firefox-4dot0\/","title":"","type":null},"content":[{"type":"text","text":"決定"}]},{"type":"text","marks":[{"type":"strong"}],"text":"之後,Firefox的市場份額就開始萎縮"},{"type":"text","text":"。當時,PC上的所有其他程序都在使用針對活動窗口的選項卡,包括微軟Office及Adobe等專有軟件,Notepad++及GIMP等自由開源軟件,外加3D設計、視頻編輯器、十六進制編輯器等等。總之,這一切都是當時最標準、最合乎邏輯的設計思路。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"之後谷歌決定把選項卡設定爲Chrome瀏覽器中的核心標準,但這款瀏覽器其實主要是爲移動設備、而非臺式機所設計。這套方案在智能手機上確有意義,畢竟這裏沒有完整的桌面式菜單佈局空間。但在臺式機上,整個體系就顯得很反直覺,而且破壞了其他程序的操作流程。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"臺式機代碼與手機不同,因此"},{"type":"text","marks":[{"type":"strong"}],"text":"Firefox其實沒理由要把這種強調移動端的UI強行推廣給臺式機用戶"},{"type":"text","text":"。面對高達400萬行的代碼庫,Firefox當時針對其中兩行代碼給出的“原方案太難維護”的理由純粹是在侮辱用戶的智商——代碼又不是草坪,幾個禮拜不管也不會變黃。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"面對用戶如海浪被湧來的投訴,一位不願透露姓名的主要開發者給出的迴應是,“我們有幾億用戶,5000人的不滿並不能代表大多數使用者。”但他們沒有意識到,人們在抱怨中流露出了這樣的意見——如果我想讓自己的瀏覽器看起來像Chrome,那我就直接用Chrome了。沒錯,他們也確實這麼做了。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"不斷刪除“沒人使用”的功能"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Firefox做出的每項變更都遵循着相同的模式——"},{"type":"text","marks":[{"type":"strong"}],"text":"修改掉默認功能,但卻沒有任何菜單設置供用戶執行恢復。"},{"type":"text","text":"接下來,把菜單設置刪除掉,用戶只能通過about:config執行變量。之後是刪除about:config選項。用戶羣體的每一次抗議得到的都是相同的迴應:“"},{"type":"text","marks":[{"type":"strong"}],"text":"你只是極少數,大多數人喜歡這種變化。"},{"type":"text","text":"”"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"而且每輪調整都會趕走更多用戶,沒人願意再度遭受Mozilla工作人員傲慢、居高臨下的態度給自己留下的“心理創傷”——所以,他們永遠也不會回來。認真關注用戶數量,大家可以發現每次刪除之後Firefox的份額都有明顯下降,只有在第三方加載項或CSS恢復變更方案出現後纔會穩定下來。年復一年、週而復始,Mozilla顯然沒有吸取任何教訓。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"好像是覺得刪除設置還不過癮,Firefox又繼續對插件和主題進行中立化處理,強制集中籤名並最終棄用了XUL,而且根本不給能夠補充這些丟失功能的webextension api。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"面對這些變化,我再次與之前那位主要開發者交談,他的回答是“大家不用Firefox,就是因爲這裏的插件太多了。我們的遙測結果顯示,80%的用戶從未安裝過任何插件。”但問題在於,任何懂點技術的人都會優行關閉遙測功能,他們不希望瀏覽器監視自己的行蹤,所以這種調查結果明顯就不靠譜。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"即使是在UI設計中做出的一項重大舉措——拖放式可定製Australis界面,也因爲糟糕的默認佈局和CSS選項太少而沒能得到用戶們的肯定。可怕的傾斜選項卡(直接抄襲自Chrome)也是Mozilla唯一親口承認沒能做好的UI變動。更讓人意外的是,就連Chrome自己後來都取消了這項功能,Firefox卻一路堅持到底。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"直到今天,Mozilla仍聲稱自己非常重視用戶的意見。但12年過去,他們的態度冷漠依舊,糟糕的「默認Proton UI」則是強迫用戶的最新手段。(如果大家覺得我的判斷有失偏頗,請在Google上輸入「Firefox Proton」看看其他用戶是怎麼評價的。)雖然這方面問題可以通過userCHrome.css得到很大程度修復,但我已經厭倦了這種一有更新就得修復一番的感受。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"糟糕的編碼範式"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Mozilla的源代碼也是噩夢一場。例如,默認配置文件位置被定義了3次,使用的是3種不同語言的不同變量,其中之一還是由不同文件當中多個變量組合而成的。其中有一個全局變量,要通過6個不同的文件共同定義。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"編譯後、下載歷史、訪問過的頁面、書籤等等,都被一股腦塞進了混淆文件當中。最終結果是,我們只能從歷史記錄中一個個刪除這些條目。要是能把它們放在同一個獨立的文本文件中,不是幾秒鐘就能清理完嗎?爲什麼非要這麼搞?想要更改圖標外觀,或者爲自定義搜索添加新圖標?這些PNG圖像也被混淆並保存在omni.ja文件當中。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"我覺得但凡腦回路正常的開發者,都會支持用指定的編輯器在幾秒內完成變更。但Mozilla偏偏要求用戶安裝並學習Eclipse之類的大型編輯工具,並在每次變更時重新編譯文件。問題實在太多了,這裏不再贅述。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"難怪Mozilla的編碼人員在查找和修復bug方面表現得如此步履維艱,他們自己造就了更糟糕的編碼範式、迫使他們爲了修復bug而記錄下所有內容。惡性循環就此展開。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"內存管理不善"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"如果某個程序待在那裏什麼都不做,它的內存使用量應該不會改變。看看我的內存管理器,裏面有40個進程都遵循着這樣的原則。但有個程序在什麼都不做時仍在不斷讀寫磁盤,猜猜它是誰?"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"沒錯,就是Firefox。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"它運行着13個進程,而且每個進程都在不斷活動。我有40年的編程經驗,其中30年面向PC平臺,所以我多少還算懂計算機工作原理。這類問題只能歸結於糟糕的底層設計,任何流於表面的修復都治癒不了這麼深的病根。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"代碼範式也成爲 Firefox 性能糟糕的根源,他們也壓根不打算解決。我敢打賭,性能也是FirefoxOS遭遇失敗的一大原因。FirefoxOS的想法很好,但差勁的執行與編碼實踐帶來了太多bug,導致成品根本無法使用。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"一邊說“我們重視您的隱私”,一邊大肆侵犯用戶隱私"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"遙測。即使點擊“禁用遙測”也無法禁用隱藏遙測。此功能會先運行ping、再強制進行插件簽名,還有無法關閉的自動更新會每10分鐘再ping一次。我們甚至得單獨做出明確選擇才能退出“實驗”項目。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"現在Firefox最新的“花樣”是要求用戶必須使用雙因素驗證登錄至Firefox插件賬戶,才能製作自定義主題。但如果不是強制推廣插件簽名,本來不需要這麼麻煩的。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"總之,Mozilla對用戶隱私絲毫沒有尊重,正如對我們的反饋意見絲毫沒有被尊重一樣。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"寫在最後"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"不願承認錯誤、不願聽取不同意見的組織或個人必然會停滯不前、慢慢腐朽。Mozilla的決策者們似乎就是這樣,所以我對Firefox的未來也不抱太大希望。希望Mozilla中能有人從過去的錯誤中吸取教訓,克服頑疾、走向復興。畢竟一款產品的成功來自爲用戶提供他們想要的、而不是告訴他們應該要什麼,盲目複製競爭對手只會讓自己迷失方向。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong"}],"text":"原文鏈接:"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"link","attrs":{"href":"https:\/\/news.itsfoss.com\/firefox-continuous-decline\/","title":"xxx","type":null},"content":[{"type":"text","text":"《Here’s Why Firefox is Seeing a Continuous Decline for Last 12 Years》"}]}]}]}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章