软件是不是变差了?
许多工程师认为,尽管硬件有了巨大提升,日常软件却变得更慢、更不稳定、也更臃肿;他们把原因归结为奖励快速交付功能、广告驱动的“免费”应用,以及一次性、基于 Web 的工具,而不是效率和可靠性。另一些人则反驳说,自软盘时代以来,总体可靠性和能力已经大幅提升,强大的操作系统、安全性进步和成熟工具都是明证,而且全球化、可访问性、同步、媒体、安全等现代复杂需求必然带来额外开销。两种观点之下有一个共同主题:市场和管理层优化的是可见功能与增长,而性能、简洁性和长期可维护性则被低估,直到故障或用户挫败感大到无法忽视。
软件是不是变差了?(总体情绪)
- 许多人认为“是的”:在硬件更快的情况下,软件却更臃肿、应用更慢,发布时还常常是不完整的“永久测试版”,并且表现出不尊重用户的行为(追踪、广告、强制更改)。
- 也有人说“并不完全是”:在 80/90 年代,崩溃和操作系统不稳定的问题更严重;现代系统、编译器和工具更加健壮,也更容易获得。
- 还有几位指出,新软件往往很糟,而那些寿命较长的项目(操作系统内核、编译器、主流应用)则一直在稳步改进。
性能、臃肿与资源使用
- 人们经常抱怨聊天/邮件客户端(Slack、Teams)仅仅为了显示文本和图片,就占用数 GB 内存和大量 CPU。
- 有些人为现代聊天工具辩护,认为它们确实更复杂(历史同步、媒体、线程、审核、API、全球化、可访问性)。
- 但也有人说,这并不能证明当前的性能是合理的;老客户端(AIM/ICQ/MSN/IRC)也能提供类似功能,而且资源占用极小。
- 资源充裕(内存、CPU、带宽)被认为助长了粗糙设计;一些团队会刻意限制开发环境,以便尽早发现低效问题。
经济、激励与“质量”
- 一个很强的主题是:组织奖励的是功能交付和增长,而不是速度、可靠性或资源效率。
- 产品经理和管理层往往优先看重可见功能(以及简历上的亮点),而不是重构或性能工作。
- 用户很少因为效率去选择软件;他们会选择“够用”且具备所需功能的工具,或者由 IT 规定的工具。
- 免费/广告支持模式以及“注意力收割”会推动监控、追踪和参与度优化,而不是工艺水准。
- 还有人指出,“质量”是多维度的(性能、可靠性、UX、功能、隐私),并且高度主观。
复杂性、安全性与分发
- 平台和技术栈更复杂了:Web 应用、应用商店、多种设备类型、本地化、可访问性、安全层。
- 安全加固和全球文本支持会增加开销,但被视为必要的权衡。
- 互联网分发改变了激励机制:发布补丁很便宜,所以 1.0 版本可能比 CD/软盘时代糟糕得多,因为那时支持和补丁分发成本很高。
怀旧 vs. 真正的退步
- 有些人认为这是怀旧和选择偏差:我们记住了最好的旧工具,却忘了那些糟糕的。
- 也有人指出了具体的退步:曾经轻量的工具(例如轻客户端、小工具)变得臃肿、绑定订阅,或者充斥广告。
- 一个广泛共识是:大多数软件一直都很平庸;变化的是规模、激励,以及臃肿变得多么显眼。