给软件开发者准备的优质简报,每日阅读 10分钟。
Microsoft new Outlook takes 10 seconds to do what Outlook Classic does instantly
新版 Outlook 通知延迟约10秒,仍不及经典版
- Windows 11 同时提供 Win32 的 Outlook Classic 与基于 WebView2 的 新版 Outlook,两者启动速度相近,但通知响应差距明显。
- 点击新版 Outlook 的 Windows 11 通知后,需要约 10 秒 才能显示对应邮件;Classic 版几乎瞬间打开。
- 新版采用 Chromium WebView2,运行约 10 个进程,空闲时占用 490‑636 MB RAM、约 4% CPU;Classic 只用单一进程,内存 117‑148 MB、CPU <1%。
- 延迟源自浏览器层的初始化、身份验证及页面加载,单纯的应用更新难以根本解决此性能瓶颈。
- 自 2024 年发布以来,新版已通过 2026 年多次更新加入更佳的文件夹搜索、共享/自动映射日历、统一收件箱及 PST 支持等功能,但整体性能差距仍未显著缩小。
- 如需快速处理邮件通知,仍建议使用 支持至 2029 年 4 月的 Outlook Classic;微软计划将 Outlook 重写为 WinUI 原生应用,以彻底摆脱 WebView2 带来的慢点。
Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28
Valhalla 项目:JDK 28 预览版引入值类
- 6 月 15日,Lois Foltan 确认 JEP 401(Value Classes and Objects) 已合入 OpenJDK 主线,计划在 JDK 28 以预览特性提供,单次提交超过 197 千行代码、1 816 个文件。
- 使用
value修饰符声明的 值类 仍保持普通类语法,但实例 没有身份(identity),所有实例字段隐式final,禁止synchronized;==由引用相等改为递归逐字段比较。 - JVM 通过 标量化(在 JIT 中把值对象拆解为字段)和 堆扁平化(在数组或字段中直接存放位向量)实现密集布局;≤ 64 bit 的值类可原子写入,达到类似基本类型的缓存局部性和零分配开销。
- 当前仅支持 值类本身及其数组 的扁平化,泛型仍采用类型擦除,
List<Point>等容器仍会产生普通对象;真正的 专化泛型 将在后续阶段实现。 - 预览下现有包装类(
Integer、Long、Double等)被转为值类,显著降低装箱成本;但它们仍是引用类型,可为null,非空限制将在后续 JEP 中引入。 - 开发者可通过
--enable-preview试用,需注意==、synchronized行为变化以及在集合中使用值类的局限,为后续性能提升和 API 迁移做好准备。
Emacs 31 is around the corner: The changes I'm daily driving
Emacs 31 新特性概览(作者日常使用的改动)
- Tree‑sitter 完全自动化:
treesit-enabled-modes设为t即可让所有支持的 ‑ts‑mode 自动使用;treesit-auto-install-grammar(默认ask,已更新为always)在缺少语法库时自动下载、编译,省去手动维护treesit-language-source-alist。需注意同一配置目录下的二进制.so不会按架构区分,跨平台共享会导致加载失败。 - 内置实验性 markdown‑ts‑mode:键位和折叠行为与 Org 相似,代码块内部使用对应语言的真正主模式进行语法高亮并支持编辑;支持内联图片渲染。需手动
load-library并自行加入auto-mode-alist,作者正与 Stéphane Marks 合作推动其正式发布。 - Eglot 与 markdown‑ts 的协同:LSP 文档可在
markdown-ts-view-mode中以富格式呈现(同样是实验功能),并默认关闭eglot-code-action-indications以避免噪声提示。 - 更智能的补全与即时帮助:
completion-eager-update/completion-eager-display让补全面板随键入实时刷新;minibuffer-visible-completions设为up-down使上下箭头可在可见候选项之间切换;eldoc现在可在光标所在位置自动显示帮助文本。 - 窗口布局、Side‑window Speedbar 与其他质量提升:新增
transpose-windows、rotate-windows、flip-windows系列命令快速重排布局;Speedbar 现在可以停靠在侧窗并受宽度限制;xref 缓冲区可直接编辑;ERC 重连时只插入新日志;term修复了行被吞噬的问题;以及一系列小开关(如kill-region-dwim、view-lossage-auto-refresh、native-comp-async-on-battery-power、tty-tip-mode),并加入多款针对色盲优化的 Modus 主题。
Show HN: Are You in the Weights?
“权重中的名人”概念介绍网站
- 该网站探讨一个名为“IN THE WEIGHTS”(权重中的名人)的概念,核心问题是用户或公众人物的“数据”是否被包含在多种主流大型语言模型的训练数据(即“权重”)中。
- 网站由Thomas Dimson和Joey Flynn呈现,并列出了一系列具体的AI模型名称,如GPT-5.5、Llama 3.3 70B、Gemini 3.1 Lite等,作为检查的对象。
- 网站展示了一个“今日重量级人物”排行榜,将威廉·莎士比亚、史蒂文·斯皮尔伯格等历史及当代著名人物进行“力量值”排名(多数为995或996分),以可视化形式体现其在AI模型中的重要性或存在感。
- 排行榜列出了前20名人物,包括女王伊丽莎白二世、纳尔逊·曼德拉、玛丽·居里、甚至奥萨马·本·拉登等,反映了对“权重”的特定评估标准。
- 网站提供了“了解更多”和“查看排行榜”的功能入口,旨在引导用户深入探索该项目的具体原理和完整排名。
AMD silently removes memory encryption from consumer Ryzen CPUs
AMD 在消费级 Ryzen CPU 中悄然取消透明内存加密(TSME)
- 最新 AGESA 1.2.7.0 固件将 TSME 从所有非‑Pro 消费级 Ryzen 处理器中移除,尽管 BIOS 仍显示可开启但系统检测不到该功能。
- TSME 通过固件层面全盘加密 RAM,以防止冷启动、内存模块偷取等物理攻击;其缺失在 Windows 上不可见,仅在 Linux 下需复杂手段才能确认。
- 调查发现,AMD 在公开的 GitHub 讨论中未给出明确原因;一名工程师被追问后直接回复“没有更多信息可分享”。
- AMD 官方仅通过邮件声明 TSME “仅适用于 PRO 系列”,首次公开将其定位为企业专属功能,未解释此前为何在消费芯片上可用。
- 目前只能通过回滚至旧版 AGESA 固件或更换为 Ryzen Pro/EPYC 处理器来恢复此安全特性,若是固件缺陷则需要 AMD 后续修复。
Hyundai buys Boston Dynamics
现代汽车全资收购波士顿动力的关键要点
- 现代汽车集团将以3.25亿美元收购软银持有的波士顿动力剩余9.65%股权,完成对该公司100%所有权的收购,交易预计于6月22日完成。
- 该收购结束了软银自2017年收购后在波士顿动力的全部持股,而现代此前在2021年已以约8.8亿美元购买了80%股份,当时公司估值约为11亿美元。
- 在2026年CES上,现代展示了电动版Atlas人形机器人,并宣布将在乔治亚州萨凡纳的电动车工厂于2028年开始量产,以执行工业任务。
- 现代子公司Hyundai Mobis已负责Atlas关键执行器的生产,确保机器人核心硬件与公司的供应链、服务网络和制造体系紧密结合。
- 与软银转向AI基础设施平台(如Roze AI)并计划实现百亿美元估值不同,现代的战略聚焦于将Atlas直接投入自有工厂,实现可量化的生产效率提升。
.gitignore Isn't the only way to ignore files in Git
Git 中的三层文件忽略机制
- 共享忽略规则 (.gitignore):此文件位于仓库目录中,其内容会随代码一起提交到版本库,用于定义项目内所有协作者共享的忽略文件列表。
- 本地忽略规则 (.git/info/exclude):此文件同样位于仓库的
.git目录内,但不会被提交。它适用于设置仅限当前开发环境的个人忽略规则,例如某个只对你有意义的工作笔记。 - 全局忽略规则 (~/.config/git/ignore):此文件位于用户主目录下,适用于该机器上的所有 Git 仓库,常用于忽略操作系统生成的通用文件(如
.DS_Store)。 - 自定义全局忽略文件路径:可通过
git config --global core.excludesFile <路径>命令将全局忽略规则指向自定义文件,并用--unset命令恢复默认设置。 - 定位忽略规则来源:使用
git check-ignore -v <文件名>命令可以精确查出是哪个忽略文件(以及具体行号)导致了目标文件被忽略。 - 无规则匹配时的表现:如果目标文件未被任何忽略规则匹配,上述
check-ignore命令将不会产生任何输出。
There are no instances in ATProto
atproto 没有实例——托管与聚合分离的去中心化模型
- “实例”是 Mastodon 的特有概念,指托管 + 客户端捆绑的服务器;用户身份绑定在实例上,跨实例需联邦转发,实例宕机即身份失效。
- atproto 把 内容托管层 与 应用聚合层 完全拆开,数据始终存放在可自行选择的托管服务,所有客户端仅从全网聚合这些数据,类似 RSS 源与 Google Reader 的关系。
- 由于身份不依赖特定实例,用户可以随时迁移托管(文中示例从官方迁至 Eurosky,甚至自行在 Cloudflare 部署),而无需更换或重新登录任何客户端。
- 任意开发者都能独立构建新客户端(如 Tangled、Semble、sidetrail),这些应用只读取全网托管的数据,无需运营自己的实例或数据库。
- 衡量 Bluesky(基于 atproto)去中心化程度的关键不在实例数量,而在 托管服务的切换频率 与 新客户端的出现数量——这展示了比传统联邦模型更丰富、更灵活的去中心化结构。
DuckDB Internals: Why Is DuckDB Fast? (Part 1)
DuckDB 之所以快的关键因素
- 进程内执行 + 零拷贝:DuckDB 作为库直接嵌入客户端程序,省去服务器、网络协议和行式序列化的开销;在支持 Arrow 或 Pandas DataFrame 时可直接读取共享内存缓冲区,实现零拷贝读取。
- 完整的查询编译链:SQL 先被解析为 AST → 绑定阶段解析名称和类型 → 约 30 条可开关的优化规则(如过滤下推、子查询展开、动态 Join‑filter、Join 顺序优化等)生成逻辑计划 → 根据输入特征选择物理算子并拆分为多个执行管道。
- 列式存储 + 行组与区映射:表数据以列块存放,划分为最多 122 880 行的行组,每个行组保存每列的 min、max 与空值计数(zone map),查询时可依据谓词跳过整个行组,大幅降低 I/O。
- 管道化并行与流水线中断:查询被切分为若干无状态管道,所有 CPU 核心并行处理;需要全局信息的算子(ORDER BY、GROUP BY、HASH‑JOIN 构建)作为管道中断器,使用线程本地状态并行合并后再进入下一个管道,保证局部并行而非全局调度。
- 即插即用的文件读取:DuckDB 能直接查询 Parquet、CSV、JSON、XLSX 等文件。对 Parquet 利用其固有的列式布局和统计信息实现高效跳跃读取;对 CSV 通过自动嗅探识别分隔符、列类型和表头,无需事先建表或手动配置。
A website that lists websites to submit your website to
精选网站提交目录:多维度提升搜索排名与产品曝光
- 涵盖数十个精选提交平台,包括 Show HN、Product Hunt、Capterra、Gartner 数字市场、AI 工具目录、设计奖项及开发者社区,帮助网站、初创产品或创业项目获得真实流量与高质量反向链接。
- 详细说明每个平台的链接属性(dofollow 与 nofollow)、提交方式(免费排队、付费加速、徽章嵌入等)及核心价值,如提升搜索排名、吸引买家意图流量、获得投资者与媒体关注,或增强设计领域可信度。
- 按垂直领域分类推荐,包括开发者工具、AI 产品、软件评测、网页设计、创业者网络及个人博客等,便于精准定位目标受众并选择最合适的推广渠道。
- 提供多样化的推广路径,例如社区投票、产品发布日活动、教程撰写、评测收录或目录列表,既可产生直接流量,也能构建持久的搜索引擎可见性。
- 强调独特价值主张,如平台的权威域名权重、作为官方资料来源的引用价值、长期转发潜力,以及通过精选目录提升品牌信任与行业认可。
Google workspace threatening to block Firefox access
Google Workspace 警告 Firefox 用户并可能限制访问
- Google Workspace Business Plus 账户已在最新版 Firefox 与操作系统环境中弹出强制改用 Chrome 的警示信息。
- 警告页面位于
https://access.workspace.google.com/remediate?...,显示图标提示用户可能失去账户访问权,并要求“下载 Chrome 浏览器并使用工作账号登录”。 - 页面文字强调设备必须符合组织的安全要求,以保障数据安全,随后提供下载 Chrome 的操作指引。
- 截止撰写时,Firefox 仍可正常访问该服务,但作者不确定此限制的持续期限。
- 向 Google 支持求助仅得到无实质内容的转交,处理过程冗长且未解决问题。
- 作者担忧此举会阻碍团队的跨浏览器兼容性测试,并且本人并未看到使用 Chrome 的明确好处。
Zen and the Art of Machine Learning Research
成为机器学习研究者的禅意指南
- 研究入门:结合阅读与实践,秉持纪律与初心。 通过阅读和动手实践的结合来入门研究,如同禅宗修行:需持续投入时间与努力,因为洞见何时出现具有随机性。建议在解决问题时先独立尝试,遇到瓶颈再查阅文献,避免过度阅读。初学者应专注于基础(如交叉熵、SVD、策略梯度),而非追逐流行概念或仅以提升基准分数为目标。
- 保持开放与初学者心态,抵制经验主义的束缚。 领域发展迅速,年轻团队的成功表明经验优势并不绝对。避免长期固守既有想法,对看似“太好”的结果保持怀疑。借鉴铃木俊隆的话“初学者心中充满可能性,专家心中则寥寥无几”,对新领域保持开放。
- 平衡实验心态:视成败为等价信息。 无论实验成功与否,都应培养“实验的平等心”。失败可能提供更多学习机会;成功则需警惕是否因代码错误或测量偏差导致。正如禅宗所言,无论觉悟前后,劈柴挑水依旧——接受研究中大量枯燥的基础工作是必经之路。
- 重视基础实施与代码质量,培养“健康的偏执”。 许多好想法因代码Bug而非本身缺陷失败。在复杂系统中,必须深入理解代码和整个实验流程,对异常指标保持警惕。避免因追求并行实验而导致的上下文切换,优先设计能快速迭代、快速反馈的工作流。
- 在研究外寻找灵感,并审慎对待AI编程工具。 灵感常在散步等非研究活动中迸发。使用编程代理(如Codex)能提升效率,但可能模糊对细节的理解并引入细微错误。必须主动理解工具产生的结果,确保科学结论的可靠性,避免将理解外包给机器。
I used sound waves to make espresso. It could cut coffee‑brewing energy use by ¾
超声波意式浓缩:低能耗室温萃取
- 研究团队开发“超声波意式浓缩”,利用高频声波在常温水中对咖啡粉进行约3分钟的萃取,得到与传统热水意式浓缩相同的浓度、油脂、香气和咖啡因。
- 超声换能器使咖啡篮产生高速振动,产生空化气泡;气泡在咖啡颗粒表面坍缩时形成微射流和冲击力,像微型刷子般破碎颗粒表层,加速溶质进入水中,从而以机械能取代热能。
- 通过优化水‑咖比、研磨细度以及超声作用时间(约2.5–3 分钟),实现最佳萃取;该工艺可直接生产室温浓缩液,适用于瓶装即饮、奶基饮品及冷咖啡,并可在运输后稀释,降低加工与能源成本。
- 能耗比较显示,省去加热步骤可节约约75%的能源,对大规模即饮咖啡生产尤为重要。
- 盲测约100名普通咖啡消费者后,超声波意式浓缩在香气、风味、苦味和整体喜好度上与传统热萃无显著差异;而超声波滤咖啡甚至更受欢迎,验证了该技术的感官可接受性。
Telescope Ranchers
德克萨斯州的“望远镜牧场”:远程观测与新星云发现
- Starfront Observatories 位于德克萨斯州,在超暗天空(Bortle 1级)、晴朗天气和高速网络的理想条件下运营。
- 该设施在40英亩土地上托管着超过550台望远镜,用户每月支付99美元即可从世界任何地方通过电脑远程操控观测。
- 运营者 Bray Falls 利用该设施进行天文摄影,并发现了一个名为“荆棘王冠星云”的新天体。
- 该星云是处女座内已知唯一的超新星遗迹,其远离银河带的异常位置引起了天文学家如 Robert Fesen 博士的怀疑。
- 专业天文台已对“荆棘王冠星云”进行数据采集,以研究其是否确实为超新星遗迹。