当前位置: 首页 > news >正文

火狐,要完了!

在过去几年中,关于Firefox 浏览器的衰落有过不少讨论。目前来说,很多公共的以及私营的大型网站都缺乏对Firefox的适当支持。但是Firefox也多次试图“自救”,甚至就在不久前,Mozilla 通过官博发文,表示 Firefox 在 2023 年变的更快了,用户体验也得到改善与提升。

可最近,美国又新出炉了一项开发指导方针,虽然指向比较模糊,却极有可能加速火狐的衰落。Firefox是否真的在滑向深渊呢?

1、滑向深渊:岌岌可危的2%分界线

事情起始于一套针对美国政府网站开发者的指导方案。

图片

图片

美国网页设计系统(USWDS)提供了一套全面的标准,指导那些建立美国政府网站的人。关键在于其开发者文档里,在“浏览器支持”条目下,明文指出参照了其英国同行的黄金法则,即:“根据analytics.usa.gov的观察,我们正式支持任何使用率超过2%的浏览器。”

图片

图片

有意思的是,在过去90天的浏览器流量统计中,Firefox的市场份额为2.2%,差不多踩在了这一标准的临界线上。问题在于,多年来Firefox的数据并没有改善的趋向,反而是在持续的下滑中。这意味着Firefox终有一天会被这一标准“拒之门外”,而且这一天不会太远。

图片

图片

也许你会觉得这套标准只适用于美国政府的网站开发人员,对其他网页开发者影响不大。但后续的连锁反应却很可能是这样:

  • 一旦Firefox在政府的访问者分析中滑落到2%的界限以下,USWDS就会告诉政府网站开发者,他们不必再支持Firefox了。
  • 当这个消息传开后,它不仅会迅速传播到前端开发社区,而且还会传播到一些网站开发人员所属公司的IT部门。许多公司与政府有业务往来,因此,无论政府从IT的角度做什么,都会影响公司的行为。
  • 公司将这种变化视为降低开发成本和交付时间的机会,因为它为从开发工作流程中删除一些测试(以及某些情况下特定的编码)提供了顺理成章的借口。

在多米诺骨牌一张一张倒下后,你可能会突然发现,火狐这个曾经打败了IE7 的开源浏览器不可避免地走向了末路,永久沦为了各种浏览器市场份额图表中日益缩小的那个部分。也许这个猜测有点极端,但却并非无的放矢。

2、两次浏览器大战:昔日的浏览器自由之光,被Chrome遥遥甩在身后

在2003年横空出世的Firefox,并非没有过高光。

在第一次浏览器大战后,一代神话网景落幕。IE在杀死网景Navigator后彻底占据了浏览器市场逾90%的份额。而打破这种一家独大局面的正是Firefox。

被微软的帝国策略摧毁的网景在败退的同时留下了继任者的火种,而火狐也不负所望。   

刚推出的Firefox解决了彼时IE中存在的大量缺陷,提供了分页浏览、拼写检查、Live书签等许多新功能,其丰富的插件、轻快的浏览速度以及颜值都让它收获了大批拥护者。对Web开发人员来说,其Gecko渲染引擎又破局吸引力。

最终在2009年,Firefox打败了IE7,一举夺回全球第一浏览器的王座,实现了“Take back the web”的愿望。

可惜的是,更加高效的Chrome在谷歌的扶持下迅速崛起,关于Firefox的评价却开始有了下滑迹象,比如不断以大修的方式来破坏用户体验,再比如缺乏显著的性能改进等等,Firefox也曾学习过Chrome的部分思路,试图取长补短,但终究是积重难返,而且Chrome的垄断地位也逐渐形成……

不可忽视的是,在这场浏览器混战中,被“群殴”的IE日渐沦为“浏览器下载工具”,捆绑销售策略彻底失灵。微软也不得不改弦更张,发布Edge浏览器,坚持EdgeHTML内核,以图挽回颓势,但也无力回天。结果微软还是选择妥协,改用Chromium内核。

在第二次浏览器大战中,Firefox一度登顶,却遗憾败北;IE彻底“入土”;Safari借助MacOS的封闭性成为“一霸”;Chromium阵营胜出,谷歌成为赢家。

根据 Statcounter 的统计数据,Firefox在2009年11月达到了31.82%的峰值,然后随着Chrome的崛起而开始了漫长的下滑。后者的使用率从2009年1月的1.37%飙升至2020年9月66.34%的峰值,此后又回落至最新数据中的62.85%。

图片

图片

从2009年10月到2023年11月,Chrome vs Firefox vs Safari

另外,根据Mozilla公布的“用户活动”图表,同样也可以看到:活跃的Firefox客户端数量从2018年12月31日的2.44亿下降到2023年11月20日的1.87亿。5年间,活跃用户数下降了约23.3%。

图片

图片

对火狐来说,衰落似乎是漫长且不可逆转的。不过从其官网标语来说,经历过互联网野蛮生长时代的Firefox依然保持着其昔日的骄傲。“没有晦涩难懂的隐私保护政策,更不向第三方预留后门,纯粹是一款闪电般快、不会出卖您的浏览器。”

图片

图片

回顾Firefox的发展,不可避免的要提到IE的坠亡,Edge的妥协,Chrome的兴盛。在形形色色的浏览器里,在IT的历史长河中,Firefox始终是自由、开放、协作、共享的互联网精神的典型代表,那么面向未来,Firefox又将何去何从呢?

3、没有“背靠大树”,就注定要凉吗? 

有人试图从功能、需求、体验的角度来分析火狐衰落的原因,甚至细化到哪些“不合时宜”的迭代决策成为了其失败的导火索。事实上,没有哪个浏览器是完美的。

在更多人看来,火狐的衰落就是因为没有“背靠大树”。缺少一个强大的靠山就是火狐走向穷途的根因。

细想一下,Chrome背靠谷歌,占据绝对优势;Edge背靠微软,如今搜索引擎Bing又有AI chat加持,更有吸引力;Safari背靠苹果,MacOS与iOS的封闭性就足以让它高枕无忧。

相较之下,Firefox的靠山是Mozilla基金会。无论从体量还是影响力来说,Mozilla就逊色许多了。虽然Firefox是Linux下的默认浏览器,但在桌面市场Linux的份额太低了。而且对一般用户来说,Firefox引以为傲的隐私保护和安全性并不能带来直接实感。这就导致其多少显得曲高和寡。

作为互联网的主要入口,浏览器向来是巨头们布局的要塞。在这块阵地上,未来竞争的关键会是什么呢?集成了ChatGPT的Bing会让Edge后来者居上吗?Chromium的广泛应用让谷歌占据了绝对话语权,但这种依靠开源形成的强势垄断会引起反噬吗?没有背靠大树的Firefox又是否会绝处逢生呢?绑定了各大系统的多足鼎立之势何时会打破平衡呢?我们可以静观时局。

相关文章:

火狐,要完了!

在过去几年中,关于Firefox 浏览器的衰落有过不少讨论。目前来说,很多公共的以及私营的大型网站都缺乏对Firefox的适当支持。但是Firefox也多次试图“自救”,甚至就在不久前,Mozilla 通过官博发文,表示 Firefox 在 2023…...

在AWS Lambda上部署EC2编译的FFmpeg工具——自定义层的方案

大纲 1 确定Lambda运行时环境1.1 Lambda系统、镜像、内核版本1.2 运行时1.2.1 Python1.2.2 Java 2 环境准备2.1 创建EC2实例 3 编译FFmpeg3.1 连接EC2 4 编译5 上传S3存储桶5.1 创建S3桶5.2 创建IAM策略5.3 创建IAM角色5.4 EC2关联角色5.5 修改桶策略5.6 打包并上传 6 创建Lamb…...

情深不必纠缠

那一年,男孩女孩在万千人中相遇了。多年后女人的一封邮件,让男人与女人的灵魂相遇了。他们无缘夫妻,却发现彼此是灵魂的陪伴。不能携手相守,却懂得彼此的心灵。 有一天,女人告诉男人要回家了,问男人心里会不…...

AIGC之Image2Video(一)| Animate Anyone:从静态图像生成动态视频,可将任意图像角色动画化

近日,阿里发布了Animate Anyone,只需一张人物照片,结合骨骼动画,就能生成人体动画视频。 项目地址:https://humanaigc.github.io/animate-anyone/ 论文地址:https://arxiv.org/pdf/2311.17117.pdf Github…...

区块链的可拓展性研究【04】分片

分片属于layer1扩容 区块链分片是一种技术实现,可以将区块链网络分成多个片段,每个片段负责处理一部分的交易数据。这种方法可以提高区块链网络的处理速度和吞吐量,降低交易确认时间和费用,同时也可以减轻节点运行负担。 在传统…...

blender 粒子系统 roughness 属性

粒子系统中的Roughness是一种用来控制粒子的随机性和不规则性的属性,它可以影响粒子的发射方向、速度、大小、旋转等。Roughness有以下几个子属性: - **Uniform**:这个属性用来控制粒子的发射方向的随机性,即粒子在法线方向上的偏…...

npm ERR! notarget No matching version found for @eslint/eslintrc@^2.1.4.

文章目录 Intro解决流程总结前置信息了解npm 镜像源三个要用到的npm命令 官方源确认查看当前镜像源的详情解决: 切换镜像源后重试重新操作 事后感受华为云再测试 Intro 事由是今天我在用 create-react-app 新建一个用于测试的前端项目。 然后就出现以下报错&#x…...

截取字符串

输入一个字符串和一个整数 k ,截取字符串的前k个字符并输出。 数据范围:字符串长度满足 1≤n≤1000, 1≤k≤n 输入描述: 1.输入待截取的字符串 2.输入一个正整数k,代表截取的长度 输出描述:截取后的字符串…...

【Python】Faker库详解:创建测试数据轻而易举

Python Faker库详解:创建测试数据轻而易举 在软件开发和测试过程中,通常需要大量的测试数据来模拟真实环境。Python的Faker库为开发者提供了一个方便、灵活且强大的工具,用于生成各种虚构数据。本文将深入介绍Faker库,演示其基本…...

Spring boot -- 学习HttpMessageConverter

文章目录 1. Json格式数据获取2. 为什么返回Json格式的数据2.1 注解SpringBootAppliaction2.1.1 SpringBootConfiguration2.1.2 ComponentScan2.1.3 EnableAutoConfiguration2.1.3.1 HttpMessageConvertersAutoConfiguration2.1.3.2 WebMvcAutoConfiguration 2.2 注解RestContr…...

如何选择合适的运筹优化求解器?

文章目录 前言求解器对比问题延伸:商用求解器和开源求解器的差别是什么? 求解器PK总结参考资料 前言 求解器对于运筹算法工程师而言,常常像一个黑盒,我们扔进去输入数据和数学模型,求解器给我们吐出一个解出来。这种状…...

Python 精讲 | 奇葩的 is

大家好,欢迎来到 Crossin的编程教室 ! 接下来的几个例子,可能会颠覆你对 Python 的认知。 我们知道,Python 判断两个数值是否相等的运算符是「」。比如有一个变量 a 是整数 1,另一个变量 b 是小数 1.0,尽管…...

遥感卫星综述(下载和预处理)(持续更新)

遥感卫星综述(下载和预处理) 目录 遥感卫星综述(下载和预处理)一、国产卫星GF-1 WFV 二、国外卫星Sentinel-1Sentinel-2 一、国产卫星 GF-1 WFV 下载 分辨率波段16m4(蓝、绿、红、近红) 预处理: ENVI预处理GF-1号W…...

Nmap脚本未来的发展趋势

Nmap脚本技术的发展趋势和前景 Nmap脚本是一种基于Lua语言开发的脚本,可以扩展Nmap的功能,用于自动化扫描、漏洞检测、服务探测、设备管理等方面。随着网络安全的不断发展和漏洞的不断出现,Nmap脚本技术也在不断发展和壮大。在本文中&#xf…...

要求CHATGPT高质量回答的艺术:提示工程技术的完整指南—第 17 章:对话提示

要求CHATGPT高质量回答的艺术:提示工程技术的完整指南—第 17 章:对话提示 对话提示是一种允许模型生成模拟两个或多个实体之间对话的文本的技术。 通过向模型提供上下文和一组角色或实体,以及他们的角色和背景,并要求模型生成他…...

urllib爬虫 应用实例(三)

目录 一、 ajax的get请求豆瓣电影第一页 二、ajax的get请求豆瓣电影前十页 三、ajax的post请求肯德基官网 一、 ajax的get请求豆瓣电影第一页 目标:获取豆瓣电影第一页的数据,并保存为json文件 设置url,检查 --> 网络 --> 全部 -…...

【数据挖掘】国科大苏桂平老师数据库新技术课程作业 —— 第三次作业

part 1 设计一个学籍管理小系统。系统包含以下信息: 学号、学生姓名、性别、出生日、学生所在系名、学生所在系号、课程名、课程号、课程类型(必修、选修、任选)、学分、任课教师姓名、教师编号、教师职称、教师所属系名、系号、学生所选课…...

TP5上传图片压缩尺寸

图片上传,最简单的就是, 方法一: 修改上传限制,不让上传大于多少多少的图片 改一下size即可,默认单位是B换算成M还需要除以两次1024 方法二: 对上传的图片进行缩放,此办法网上找了不少的代码…...

使用 Tailwind CSS 完成导航栏效果

使用 Tailwind CSS 完成导航栏效果 本文将向您介绍如何使用 Tailwind CSS 创建一个漂亮的导航栏。通过逐步演示和示例代码,您将学习如何使用 Tailwind CSS 的类来设计和定制导航栏的样式。 准备工作 在开始之前,请确保已经安装了 Tailwind CSS。如果没…...

docker容器配置MySQL与远程连接设置(纯步骤)

以下为ubuntu20.04环境,默认已安装docker,没安装的网上随便找个教程就好了 拉去mysql镜像 docker pull mysql这样是默认拉取最新的版本latest 这样是指定版本拉取 docker pull mysql:5.7查看已安装的mysql镜像 docker images通过镜像生成容器 docke…...

浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)

✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

HTML 语义化

目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案&#xff1a; 语义化标签&#xff1a; <header>&#xff1a;页头<nav>&#xff1a;导航<main>&#xff1a;主要内容<article>&#x…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放

简介 前面两期文章我们介绍了I2S的读取和写入&#xff0c;一个是通过INMP441麦克风模块采集音频&#xff0c;一个是通过PCM5102A模块播放音频&#xff0c;那如果我们将两者结合起来&#xff0c;将麦克风采集到的音频通过PCM5102A播放&#xff0c;是不是就可以做一个扩音器了呢…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验&#xff0c;我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育&#xff0c;这并非炒作&#xff0c;而是已经发生的巨大变革。教育机构和教育者不能忽视它&#xff0c;试图简单地禁止学生使…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化

缓存架构 代码结构 代码详情 功能点&#xff1a; 多级缓存&#xff0c;先查本地缓存&#xff0c;再查Redis&#xff0c;最后才查数据库热点数据重建逻辑使用分布式锁&#xff0c;二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...