Firefox是如何将一手好牌打得稀烂的?
来源:infoQ
编译|核子可乐 编辑|燕珊
Firefox 曾经风光无两,是最为成功的开源软件之一。它让 Internet Explorer 的主导地位首次受到挑战,而 Google Chrome 那会还只是“others”。
Firefox 正在不断流失用户,这是一个不争的事实。
来自 Firefox 的公开数据显示,自 2018 年底到 2021 年 8 月 30 日,桌面端 Firefox 的 MAU(月活跃用户数)下降约 18% 至 1.998 亿,大概少了 4400 万月活用户。进一步看会发现,其中有一半月活用户是今年内损失的(3 月至今减少近 2000 万)。
根据 Statcounter 在 8 月发布的统计,在桌面浏览器市场中,Microsoft Edge 和 Mozilla Firefox 目前正在激烈争夺第三的名次,其中 Edge 录得 3.57% 的市场份额,Firefox 则是 3.55%。自从 Edge 浏览器转向 Chromium 内核之后,其份额就持续上升。
事实上,近几年关于 Firefox 衰落趋势的讨论络绎不绝。Firefox 曾一度是全球第二大浏览器,市占率高达 35%,而现实的情况是,它的市场占有率已经连续多年下降。
一位有近 40 年编程经验的开发者 Dan 近日就 Firefox 的衰落趋势发表了自己的看法,从几个方面阐述 Firefox 的不足之处。
在社区讨论中,一个获得不少赞同的观点是,因为不想让 Google 完全控制浏览器市场所以才用的 Firefox。但也有人表示,当 Firefox 越像 Chrome,自己就越没有理由继续使用它了。
Dan 认为,造成 Firefox 衰落的原因,始于 2009 年第三季度的一个致命决定……
1 以选项卡为中心
在做出强制推行选项卡中心设计的决定之后,Firefox 的市场份额就开始萎缩。当时,PC 上的所有其他程序都在使用针对活动窗口的选项卡,包括微软 Office 及 Adobe 等专有软件,Notepad++ 及 GIMP 等自由开源软件,外加 3D 设计、视频编辑器、十六进制编辑器等等。总之,这一切都是当时最标准、最合乎逻辑的设计思路。
之后谷歌决定把选项卡设定为 Chrome 浏览器中的核心标准,但这款浏览器其实主要是为移动设备、而非台式机所设计。这套方案在智能手机上确有意义,毕竟这里没有完整的桌面式菜单布局空间。但在台式机上,整个体系就显得很反直觉,而且破坏了其他程序的操作流程。
台式机代码与手机不同,因此 Firefox 其实没理由要把这种强调移动端的 UI 强行推广给台式机用户。面对高达 400 万行的代码库,Firefox 当时针对其中两行代码给出的“原方案太难维护”的理由纯粹是在侮辱用户的智商——代码又不是草坪,几个礼拜不管也不会变黄。
面对用户如海浪被涌来的投诉,一位不愿透露姓名的主要开发者给出的回应是,“我们有几亿用户,5000 人的不满并不能代表大多数使用者。”但他们没有意识到,人们在抱怨中流露出了这样的意见——如果我想让自己的浏览器看起来像 Chrome,那我就直接用 Chrome 了。没错,他们也确实这么做了。
2 不断删除“没人使用”的功能
Firefox 做出的每项变更都遵循着相同的模式——修改掉默认功能,但却没有任何菜单设置供用户执行恢复。 接下来,把菜单设置删除掉,用户只能通过 about:config 执行变量。之后是删除 about:config 选项。用户群体的每一次抗议得到的都是相同的回应:“你只是极少数,大多数人喜欢这种变化。”
而且每轮调整都会赶走更多用户,没人愿意再度遭受 Mozilla 工作人员傲慢、居高临下的态度给自己留下的“心理创伤”——所以,他们永远也不会回来。认真关注用户数量,大家可以发现每次删除之后 Firefox 的份额都有明显下降,只有在第三方加载项或 CSS 恢复变更方案出现后才会稳定下来。年复一年、周而复始,Mozilla 显然没有吸取任何教训。
好像是觉得删除设置还不过瘾,Firefox 又继续对插件和主题进行中立化处理,强制集中签名并最终弃用了 XUL,而且根本不给能够补充这些丢失功能的 webextension api。
面对这些变化,我再次与之前那位主要开发者交谈,他的回答是“大家不用 Firefox,就是因为这里的插件太多了。我们的遥测结果显示,80% 的用户从未安装过任何插件。”但问题在于,任何懂点技术的人都会优行关闭遥测功能,他们不希望浏览器监视自己的行踪,所以这种调查结果明显就不靠谱。
即使是在 UI 设计中做出的一项重大举措——拖放式可定制 Australis 界面,也因为糟糕的默认布局和 CSS 选项太少而没能得到用户们的肯定。可怕的倾斜选项卡(直接抄袭自 Chrome)也是 Mozilla 唯一亲口承认没能做好的 UI 变动。更让人意外的是,就连 Chrome 自己后来都取消了这项功能,Firefox 却一路坚持到底。
直到今天,Mozilla 仍声称自己非常重视用户的意见。但 12 年过去,他们的态度冷漠依旧,糟糕的「默认 Proton UI」则是强迫用户的最新手段。(如果大家觉得我的判断有失偏颇,请在 Google 上输入「Firefox Proton」看看其他用户是怎么评价的。)虽然这方面问题可以通过 userCHrome.css 得到很大程度修复,但我已经厌倦了这种一有更新就得修复一番的感受。
3 糟糕的编码范式
Mozilla 的源代码也是噩梦一场。例如,默认配置文件位置被定义了 3 次,使用的是 3 种不同语言的不同变量,其中之一还是由不同文件当中多个变量组合而成的。其中有一个全局变量,要通过 6 个不同的文件共同定义。
编译后、下载历史、访问过的页面、书签等等,都被一股脑塞进了混淆文件当中。最终结果是,我们只能从历史记录中一个个删除这些条目。要是能把它们放在同一个独立的文本文件中,不是几秒钟就能清理完吗?为什么非要这么搞?想要更改图标外观,或者为自定义搜索添加新图标?这些 PNG 图像也被混淆并保存在 omni.ja 文件当中。
我觉得但凡脑回路正常的开发者,都会支持用指定的编辑器在几秒内完成变更。但 Mozilla 偏偏要求用户安装并学习 Eclipse 之类的大型编辑工具,并在每次变更时重新编译文件。问题实在太多了,这里不再赘述。
难怪 Mozilla 的编码人员在查找和修复 bug 方面表现得如此步履维艰,他们自己造就了更糟糕的编码范式、迫使他们为了修复 bug 而记录下所有内容。恶性循环就此展开。
4 内存管理不善
如果某个程序待在那里什么都不做,它的内存使用量应该不会改变。看看我的内存管理器,里面有 40 个进程都遵循着这样的原则。但有个程序在什么都不做时仍在不断读写磁盘,猜猜它是谁?
没错,就是 Firefox。
它运行着 13 个进程,而且每个进程都在不断活动。我有 40 年的编程经验,其中 30 年面向 PC 平台,所以我多少还算懂计算机工作原理。这类问题只能归结于糟糕的底层设计,任何流于表面的修复都治愈不了这么深的病根。
代码范式也成为 Firefox 性能糟糕的根源,他们也压根不打算解决。我敢打赌,性能也是 FirefoxOS 遭遇失败的一大原因。FirefoxOS 的想法很好,但差劲的执行与编码实践带来了太多 bug,导致成品根本无法使用。
5 一边说“我们重视您的隐私”,一边大肆侵犯用户隐私
遥测。即使点击“禁用遥测”也无法禁用隐藏遥测。此功能会先运行 ping、再强制进行插件签名,还有无法关闭的自动更新会每 10 分钟再 ping 一次。我们甚至得单独做出明确选择才能退出“实验”项目。
现在 Firefox 最新的“花样”是要求用户必须使用双因素验证登录至 Firefox 插件账户,才能制作自定义主题。但如果不是强制推广插件签名,本来不需要这么麻烦的。
总之,Mozilla 对用户隐私丝毫没有尊重,正如对我们的反馈意见丝毫没有被尊重一样。
6 写在最后
不愿承认错误、不愿听取不同意见的组织或个人必然会停滞不前、慢慢腐朽。Mozilla 的决策者们似乎就是这样,所以我对 Firefox 的未来也不抱太大希望。希望 Mozilla 中能有人从过去的错误中吸取教训,克服顽疾、走向复兴。毕竟一款产品的成功来自为用户提供他们想要的、而不是告诉他们应该要什么,盲目复制竞争对手只会让自己迷失方向。
原文链接:
https://news.itsfoss.com/firefox-continuous-decline/
-END-
放下面子挣钱,是成年人最大的体面!
请关注副业怎么搞
老K推荐关注熊猫教授,一个风趣的计算机科学家!
大家在看:
1.一位前同事猝死了
2.如何搭建一个拖垮公司的技术架构?
3.ERP已死,中台已凉,低代码称王!
4.如何用敏捷搞垮一个团队?
5.为什么CTO不写代码,还这么牛逼?
6.如何快速降低一个员工的积极性
Firefox是如何将一手好牌打得稀烂的?相关推荐
- 锦鲤信小呆翻车!一手好牌打得稀烂背后:靠运气赚来的,终究会凭实力亏掉...
Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 作者 l 文七君 来源 l 粥左罗(ID:fangd ...
- 雄心壮志隋炀帝,一手好牌打得稀烂
隋炀帝杨广,隋朝的第二位皇帝,同时也是亡国之君,就连"隋炀帝"这个称号也是李世民对他的蔑称并沿用至今.可是我们拉开对这位的亡国之君的种种指责之后,历史上隋炀帝却是一个充满雄心壮志, ...
- 一手好牌打的稀烂,如今面临倒计时,网友哭求众筹活下去...
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 前言 这两天身边爱听音乐的朋友,讨论最多的就是关于虾米音 ...
- 要说搜狐一手好牌打到烂,那百度又是如何沦落到如今境地的?
文|洪生鹏 搜狐,作为曾经互联网行业的"领头羊",如今已退隐二线. 现在国内互联网行业最受瞩目要算阿里,腾讯,字节跳动.新浪.网易等.尤其是字节跳动这匹黑马的崛起,更是让腾讯这样的 ...
- 曾经一手好牌,但如今却被网友怼或已堕落
任何事物都有兴衰更迭,互联网企业也不例外,有些企业可能运气好,一路走来都顺风顺水,有些企业可能差点运气,多次转型坎坎坷坷,还有一些企业可能运气更差一点,甚至会因为某些错误而失败. 那么有哪些互联网行业 ...
- 2021年,微博打了一手好牌?
"四季度,我们以稳健的业绩表现为2021年画上圆满的句号."显然,微博CEO王高飞对于微博过去一年的成绩十分满意. 从3月3日公布的2021年第四季度报以及2021财年业绩来看,截 ...
- “清华最苦男生”突然刷屏,一天只花 10 块钱,两年舍不得喝杯饮料:他用一手烂牌,打出了王炸...
作者:一位清华贫困生 这两天,<清华大学贫困生学子"每月生活费仅300元,从受助到助人"的温暖自白>,刷屏了,把娱乐圈所有明星的热搜都压下去了. 这封自白书,最早发在清 ...
- 鸿蒙:这个备胎不太冷
如果说中国的芯片研发史还只是一路的筚路蓝缕. 那么中国的手机系统研发史这一路就是绝地求生. 当1984年苹果一锤砸蒙蓝巨人带来个人计算机革命,彼时成立的联想还是创新性的代名词:从汉卡到一键上网,96年 ...
- 强烈推荐《价值:我对投资的思考》
<价值:我对投资的思考> --高瓴资本 张磊 自己的一些思考与想法: 不管在什么行业,所处什么环境,做的事情一定是要创造价值,不是在浮躁的社会环境里,老想着短期博弈的事情: 坚持第 ...
最新文章
- 微信公众平台关于fakeid和openid的解析
- 配置管理篇(0)_SaltStack 安装
- 笔记-项目合同管理-要约、承诺和要约邀请
- ASP.NET web.config
- linux 分区 格式化 挂载 新硬盘
- 《Sibelius 脚本程序设计》连载(十四) - 2.1 注释、语句、语句块
- arcgis导入坐标点转面_ArcGIS问题:如何将坐标点或者点文件转换成线、面文件
- 计算机英语讲课笔记02
- 如何自建微信外卖平台_外卖平台高抽成的背后,看小程序如何玩转餐饮外卖?...
- 阿迪达斯asp.net sql购物商城计算机设计网站作品
- alpine linux安装桌面,Alpine linux硬盘安装
- android 浏览器开技术
- 游戏开发之C++IO流(C++基础)
- python做后端速度慢吗_【后端开发】python如何提高运行速度
- Cadence SPB安装及重装
- 前端开发使用物联网pass平台应知事项
- 电动汽车用内置式永磁同步电机基于查询表 的矢量控制算法, 自动生成满足 MTPA
- 575万奖金!2022年数学界「诺贝尔奖」发布,拓扑学大师获奖
- 微信聊天记录生成词云图
- 为什么公司宁愿花15k去重招一个应届生,也不愿意加薪5k留住老程序员?
热门文章
- 男人撒娇的十个关键词
- JavaScript中一个等号、二个等号、 三个等号 的区别
- TokenInsight 对话首席——钱包安全与发展
- 为什么很多人工作都不开心?(转)
- 宁选“范跑跑”,不要“郭跳跳”
- 计算机网络时有时无,电脑WiFi时有时无不稳定的解决方法 | 我爱分享网
- :before、:after伪元素的用法 !
- 程序员工作六年的感悟
- Oracle与SQL Server在企业应用中的比较(转)
- 使用Spark中DataFrame的语法与SQL操作,对人类数据进行处理,比较学历与离婚率的关系