## 现代软件臃肿问题
尽管硬件取得了进步——快速的CPU、充足的内存和巨大的存储空间——但软件效率往往被忽视。普遍的观点是,当资源廉价时,优化不再那么重要,重点应该放在开发人员的生产力和可维护性上,这呼应了克努斯关于“过早优化”的警告。
然而,现代软件臃肿并非仅仅由于效率低下。其中很大一部分是*权衡*的结果,为了提高安全性、健壮性、全球化支持以及使用复杂的框架。这些补充解决了过去资源受限的计算中普遍不存在的问题,那时程序通常用低级语言编写以实现最大控制。将今天的软件与旧程序进行比较——Windows 11计算器与Windows 95,或者现代图像的大小超过超级马里奥兄弟——突出了这种差异。
虽然有些臃肿是合理的,但无能和过度工程也贡献了很大一部分。不必要的依赖、为简单应用程序使用微服务以及过度的容器化都会增加开销。重要的是,优化在性能关键领域(如编解码器、归档器和虚拟机)*仍然很重要*。关键在于平衡:避免过早优化,同时认识到完全推迟优化也会产生不利影响。
## Tenacity:一款免费且开源的音频编辑器
Tenacity是一款跨平台、多轨音频编辑器和录音工具,适用于Windows、Linux和其他操作系统。它由志愿者社区开发,为音频编辑需求提供了一种用户友好的替代方案。
主要功能包括从各种音频设备录音、支持广泛的音频格式(可通过FFmpeg扩展)、高达32位浮点的高质量音频处理,以及与VST、LV2和AU插件的兼容性。用户还可以利用Nyquist和Python等脚本语言进行高级编辑。
Tenacity优先考虑可访问性,提供键盘导航和屏幕阅读器支持。提供预打包的构建版本,或用户可以从源代码构建。社区支持在Matrix、Mastodon和Lemmy上活跃,开发托管在Codeberg上。它建立在其他Audacity分叉的遗产之上,提供了一种协作且不断发展的音频编辑解决方案。