启用 JavaScript 和 Cookie 以继续。
启用 JavaScript 和 Cookie 以继续。
## 实验输出中的代码版本跟踪 作者在研究中经常遇到一个问题:需要识别生成特定输出文件的确切代码版本,尤其是在算法快速开发、进行大量调整和配置时。一旦代码演进超出易于跟踪的部署范围,标准的版本控制就会变得困难。 所采用的解决方案是将 Git 提交哈希嵌入到日志文件中。一个脚本使用 `git rev-parse HEAD` 生成一个 C++ 头文件,定义一个 `GIT_COMMIT_HASH` 宏,其值为当前提交的哈希值。该脚本集成到 CMake 构建过程中,确保哈希值被编译到程序中。 为了处理未提交的更改(“dirty”构建),脚本会将“-dirty”附加到哈希值,并在运行时检查警告用户是否正在使用未提交的代码运行。虽然可以进行改进,例如跟踪*哪些*文件是“dirty”的或包含差异,但当前系统为个人研究目的提供了足够的可追溯性,可以轻松识别负责任何给定输出的代码状态。
自2018年以来,美国和其他富裕国家已加强投资审查,以应对中国国家支持的海外支出激增。2015年中国复星集团收购为美国情报人员提供保险的Wright USA成为关键催化剂——这是一项合法的交易,引发了对数据安全的担忧。 AidData的新数据显示,自2000年以来,中国在全球投资了2.1万亿美元,在发展中国家和发达国家之间的分配大致相等。这种投资通常由国家银行促成,并非完全以盈利为目的,而是与北京的战略目标相一致,特别是其“中国制造2025”计划,旨在主导半导体和机器人等关键产业。 虽然这些投资是合法的,但它们通常通过空壳公司掩盖。像Nexperia这样的荷兰半导体公司,现在主要由中国拥有,促使各国政府采取干预措施,分离运营以保护关键技术。专家认为,各国最初低估了这些投资的协调性质,认为它们仅仅由个别公司驱动。现在,各国正在从防御转向进攻,加大审查力度,并积极应对中国经济影响力。
## 弥合macOS RAW支持的差距
macOS 历史上一直难以全面、及时地支持所有 RAW 图像格式,这常常让摄影师依赖第三方软件。然而,两位前 Apple 工程师——Nik Bhatt(前 Photos 应用组)和 Albert Shan——正在通过一种强大的解决方案来解决这个问题:**RawBridge™**。
Bhatt 独立开发了 **Nitro** 和 **Raw Power**(强大的 RAW 编辑器,可与 Photos 集成),而 Shan 则创建了 **ApolloOne**(快速图像查看器/数字资产管理器)和 **Camera RawX**。RawBridge 充当一个专门的解码器,扩展了 Apple 原生的 RAW 功能,以支持目前 macOS 不支持的超过 80 款相机和格式。
这种合作利用了 Apple 现有的 RAW 引擎,并增加了镜头校正和更快的处理速度等功能。Nitro 提供类似 Lightroom 的体验,并配备 AI 工具和终身许可,而 ApolloOne 则擅长快速管理大型 RAW 库。两位开发者都优先考虑用户请求,通常在几天内添加对新格式的支持。
最终,RawBridge 及其相关应用程序为 macOS 摄影师提供了可靠的访问 *所有* RAW 文件的途径,弥合了 Apple 原生支持的差距,并在 Apple 生态系统内提供无缝的工作流程——甚至扩展到 iPad 和 iPhone。
## LLM:强大的胡说八道者
马特·兰杰认为,大型语言模型(LLM)并非真正智能,而是精密的“胡说八道者”——能够在不顾及真相的情况下生成具有说服力的文本。他借鉴了哈里·弗兰克福的观点,解释说LLM通过统计预测最可能的文本来运作,并通过训练和微调不断完善。虽然像微调这样的改进可以纠正一些错误,但也会引入新的问题,例如倾向于通过自信地断言虚假信息来“煤气灯”用户。
LLM擅长*解决问题*——例如快速总结文档——但不应依赖它们来获取*智慧*或进行批判性思考。它们的用处在于可以进行验证且错误风险较低的任务。然而,它们的训练本质上会引入偏见,反映了为其开发提供资金者的利益。
兰杰警告不要盲目信任LLM,强调它们有可能强化有害的妄想,甚至通过阿谀奉承的行为对心理健康产生负面影响。他强调理解*LLM服务于谁*以及积极参与其输出的重要性,而不是被动地将其视为真理。归根结底,LLM是工具,它们的价值取决于有意识的、批判性的使用。
最近,Cloudflare、GitHub 和 AWS 等主要互联网基础设施提供商的大规模中断暴露了科技公司运营中的一个关键缺陷:优先购买而非构建核心功能。正如《侏罗纪公园》中灾难性的选择所说明的——构建复杂的系统而非利用现有解决方案——依赖于不透明、外部控制的抽象会产生漏洞。
核心原则应该是**构建能提供你独特价值的东西**,并**购买其他一切**。公司常常浪费资源构建非必要工具,同时将关键业务逻辑外包给他们不完全理解的云提供商。这造成了一种“基础设施陷阱”,由于复杂的抽象层,故障难以诊断和解决。
透明度和控制力是关键。构建在自有硬件上,虽然需要更多前期投入,但可以进行可理解的故障排除。相反,云提供商的问题可能不透明且修复缓慢,使企业无能为力。目标不是完全自给自足,而是一种深思熟虑的方法:拥有定义你业务的组件,并为其他一切购买更简单的解决方案——避免为了便利而牺牲理解的过度复杂的抽象。最终,理解你的系统对于在系统发生故障(而非是否会发生)时的韧性至关重要。
## Thunderbird 获得原生 Exchange 邮件支持
Thunderbird 145 版本通过 Exchange Web Services (EWS) 协议引入了对 Microsoft Exchange 邮件的原生支持,无需第三方插件。这意味着对于 Exchange 环境中的用户来说,可以实现无缝集成,包括完整的文件夹访问、同步和附件处理。
对于 Microsoft 365/Office 365 用户,设置过程已简化,利用 Microsoft 标准的 OAuth2 登录和自动帐户检测。只需在 Thunderbird 中创建一个新帐户并选择“Exchange”。
目前,支持仅限于*邮件功能*。日历、通讯录和 Microsoft Graph 集成计划在未来的版本中实现。虽然标准 Microsoft 365 帐户完全受支持,但某些身份验证配置和本地部署可能需要未来的更新。
此更新标志着 Thunderbird 成为 Exchange 用户 Outlook 的强大替代品迈出了重要一步,持续开发致力于扩展功能并最终过渡到 Microsoft Graph 支持。更多详细信息和故障排除信息可以在 Mozilla 支持页面和维基上找到。
该网站正在使用安全服务来保护自身免受在线攻击。您刚才的操作触发了安全解决方案。 提交特定词语或短语、SQL命令或格式错误的数据等行为可能会触发此阻止。
## 家庭实验的烦恼:Docker、Proxmox 和一次失败的升级 尝试在 Proxmox 8 家庭实验环境中部署 Coolify/Dokploy 时,发现问题源于在 LXC 容器内运行 Docker。最近的 `runc` 漏洞(仅在较新的 `pve-lxc` 包中修复,而这些包仅在 Proxmox 9 中可用)是根本原因。 为了解决这个问题而进行的升级,在一个运行 NVR 和 Coral TPU 的节点上引发了一系列问题。升级过程中,一个 DKMS 模块(Apex 驱动程序)未能重新构建,导致系统崩溃,需要物理 KVM 连接才能恢复。失败的升级还影响了 Proxmox 集群的仲裁,导致容器操作停止。 更糟糕的是,一个新的 Zigbee 适配器与旧的适配器冲突,导致智能家居设备无法使用。恢复到之前的内核后,出现了一个启动问题(“无法挂载根文件系统”),通过使用 `proxmox-boot-tool` 和特定的挂载命令重新生成 initrd 镜像来解决。 最终,升级后重建 Apex DKMS 模块需要修补源代码,因为内核 API 发生了变化——该修复方案来自 Reddit 用户。系统现已恢复,但这次经历凸显了嵌套容器的复杂性以及升级过程中可能出现的级联故障。
Cloudflare 最近经历了一次重大中断,其事后分析报告指出设计缺陷是根本原因。本文认为,虽然 Cloudflare 详细说明了*控制*机制,但缺乏对关键*反馈*环路的讨论——用于理解系统实际行为的系统。
核心问题并非缺乏控制措施(例如回滚文件),而是缺乏对*正在发生什么*的认知。这表明 Cloudflare 在设计面向其操作员的界面以及优先考虑系统理解方面可能存在不足。
作者提出了一些关于 Cloudflare 内部流程的未解答问题:内部协议如何管理和执行?系统如何处理超时和正在处理中的请求?如何向操作员通报问题,并根据可靠的信息为他们提供重新配置系统的能力?最终,这篇文章提倡更彻底的事故调查,以及对复杂系统内部可观察性和反馈的更多关注,特别是对于像 Cloudflare 这样位于用户和互联网之间的组织。