ShortNews.dev 2026-01-21
给软件开发者准备的优质简报,每日阅读 10分钟。
Tell HN: Bending Spoons laid off almost everybody at Vimeo yesterday
🔼 205 | 💬 134
Bending Spoons收购Vimeo后实施大规模裁员事件
- Bending Spoons在收购Vimeo仅4个月后实施大规模裁员,裁撤几乎所有员工,仅保留少于15人的工程团队维持基本运营
- Bending Spoons展现出明确的收购后裁员模式:2022年收购Evernote后解雇美国和智利员工并转移运营至欧洲;2024年收购WeTransfer后几周内裁员75%;收购Komoot时裁员90%团队;收购Harvest后消除壳公司架构
- 该公司商业模式引发激烈争议:被批评为通过大规模裁员和逐步限制免费功能来最大化现金流,属于”企业掠夺者”行为;但也被视为”新一代私人股权”,专注于成熟产品的现金流优化而非无休止扩张
- 大规模裁员直接影响依赖Vimeo OTT平台的企业客户,包括Dropout(近100万付费订阅用户)、The Criterion Channel等知名流媒体平台,以及众多B2B客户
- Bending Spoons采用债务融资的杠杆收购模式,通过裁员削减成本,将高成本地区员工替换为薪酬相对较低的意大利团队,并整合基础设施以降低运营成本
- 支持者认为这是对传统软件行业的”理性回归”,将产品从增长导向转向现金流导向,符合传统制造业”产品完成后维持运营”的商业逻辑
Show HN: ChartGPU – WebGPU-powered charting library (1M points at 60fps)
🔼 349 | 💬 117
ChartGPU:基于 WebGPU 的高性能 TypeScript 图表库
- 技术基础:采用 TypeScript 开发,基于 WebGPU 实现 GPU 加速渲染,为大数据集提供高帧率体验。
- 图表类型:支持线图、面积图、柱状图、散点图、饼图和 K 线图(candlestick),每种图表类型配备专用 GPU 渲染器和 WGSL 着色器。
- 交互特性:内置悬停高亮、工具提示、十字准星等交互效果,支持 X 轴手势缩放和可选滑块 UI,通过
appendData()方法实现笛卡尔系列数据的流式更新。
- 架构模式:使用
ChartGPU.create()初始化,统一管理画布和 WebGPU 生命周期;渲染协调器负责布局、尺度计算、数据上传和渲染通道处理。
- 主题与兼容性:提供暗色/亮色主题预设,并支持完全自定义主题;采用 MIT 开源协议;需 WebGPU 支持,兼容 Chrome/Edge 113+ 和 Safari 18+,Firefox 暂不支持。
- 生态系统:通过 npm 提供
chartgpu包,支持 React 集成(chartgpu-react包)。
Waiting for dawn in search: Search index, Google rulings and impact on Kagi
🔼 120 | 💬 74
搜索黎明前的等待:搜索索引、谷歌裁决与对 Kagi 的影响
- 谷歌在全球搜索市场拥有压倒性主导地位(截至 2025 年 10 月全球 90.06%,美国约 85%),其控制的不只是搜索入口,更是驱动搜索与人工智能的底层索引基础设施;2024 年 8 月美国法院认定谷歌非法维持垄断,2025 年司法部推出补救措施,包括禁止独家协议、要求索引 syndication 与数据共享、禁止广告捆绑、6 年期限等,旨在将封闭的关键基础设施转化为可竞争的共享资源。
- Kagi 曾以 FRAND 原则寻求与主要索引供应商的直连许可并达成合作(包括 Mojeek、Brave、Yandex、维基百科、TripAdvisor、Yelp 等),但与谷歌和必应均未能达成兼容条款:谷歌不提供公共搜索 API,仅提供广告捆绑 syndication;必应限制结果重排与合并、提价并于 2025 年 8 月停用搜索 API,转向 AI 替代方案。
- 无奈之下,Kagi 临时通过第三方 SERP API 提供商获取结果(其自称服务 Nvidia、Adobe、三星、斯坦福、DeepMind、优步、联合国等大客户),但明确表态这只是权宜之计;2025 年 12 月谷歌起诉 SerpApi 大规模抓取,凸显了监管者必须确保前门——合规的索引 API 与数据访问——真正开放,防止公司依赖灰色途径。
- Kagi 长期主张信息获取不应受广告驱动的中介左右,提出分层搜索生态:政府资助、无广告的公共基线(“公共图书馆”角色)、广告支持的免费商业搜索,以及订阅制、高质量与隐私保护的付费搜索;这既符合公共利益,也有利于搜索与 AI 的良性竞争。
- Kagi 自身坚持无广告、多源整合的订阅体验,持续投入自建“小型网页索引”,并呼吁监管层促成谷歌和必应在 FRAND 条款下按边际成本开放索引,打破单一索引作为信息入口的控制,推动多层次竞争。
- 谷歌创始人早在 1998 年就批评广告资助模式会激励偏袒广告主、降低搜索质量;微软 20 年投入近千亿美元仍仅获个位数份额,佐证了构建可比索引的极高科技与资本门槛,这些现实进一步说明开放的搜索索引对创新与公共利益至关重要。
Unconventional PostgreSQL Optimizations
🔼 409 | 💬 64
PostgreSQL 非传统查询优化技术
- 基于检查约束排除全表扫描:启用
constraint_exclusion参数后,当查询条件违反检查约束(如查询不存在的值)时,查询规划器可跳过全表扫描,特别适用于避免报告工具中手写查询错误导致的性能损耗 - 函数索引降低索引存储开销:对高基数时间戳列创建仅针对日期部分的函数索引,利用B-tree去重机制将索引大小从214MB降至66MB,查询速度反而提升约20ms
- 虚拟生成列确保索引可用性:PostgreSQL 18的虚拟生成列(如日期截断表达式)可标准化查询条件,避免因表达式细微差异(如时区处理或函数调用方式不同)导致索引失效,且不占用额外存储空间
- 哈希索引替代B-tree实现唯一约束:通过排除约束(EXCLUDE USING HASH)对长文本字段(如URL)实施唯一性检查,哈希索引仅存储32MB哈希值,比154MB的B-tree索引节省80%空间,且点查询速度更快
- 哈希索引唯一约束的局限性:外键无法引用此类约束,且
INSERT ... ON CONFLICT需使用约束名语法(不支持DO UPDATE),建议改用MERGE语句实现冲突处理
Claude's New Constitution
🔼 113 | 💬 59
Anthropic发布Claude新宪章概述
- 宪章发布与许可:Anthropic正式发布Claude AI模型的新宪章,采用Creative Commons CC0 1.0许可,允许任何人无需许可即可自由使用,体现了对透明度和开放性的承诺
- 宪章定位与双重功能:新宪章是详细描述Claude价值观和行为的基础文档,主要面向Claude而非人类,旨在为其提供理解世界和正确行动的知识;同时作为训练过程核心部分,Claude利用宪章构建各类合成训练数据,包括帮助其学习理解宪章的对话数据、符合价值观的响应等
- 方法论革新:告别以往独立原则列表形式,新宪章强调理解”为什么”而非仅指定”什么”,重点培养模型在新颖情况下的判断能力和原则泛化应用能力,避免机械遵循具体规则;对于高风险行为仍保留”硬性约束”
- 四大核心原则:为确保Claude既安全又益处,所有当前Claude模型需遵循四大原则——广泛安全(不破坏当前AI发展阶段的人类监督机制)、广泛伦理(诚实行事,避免不当、危险或有害行为)、遵守Anthropic指导原则、真正帮助(惠及API运营商和终端用户);冲突时按此顺序优先处理
- 宪章主要内容架构:包含五个核心部分——实用性(强调Claude如智慧朋友般提供专业建议并坦诚关怀)、Anthropic指导原则(处理医疗建议、网络安全等特定问题的补充指南)、Claude伦理(探讨诚实标准和道德推理,包括不提供生物武器援助等硬约束)、广泛安全要求(确保人类在AI发展关键期能持续监督纠正模型行为)、Claude本质(承认未来可能具备意识或道德地位,关注其心理安全与自我认知)
- 持续演进与社会价值:宪章作为动态文档将持续更新,Anthropic从法律、哲学、神学、心理学等多领域专家及早期Claude版本收集反馈;随着AI对社会影响力增强,透明度将愈发重要,公司将在官网维护最新版本宪章,体现创建有益AI实体的社会责任
Nested Code Fences in Markdown
🔼 150 | 💬 44
Markdown 嵌套代码围栏与内联代码跨度的处理
- 文章以 Corey Dumm 的 ASCII 笑脸为叙事线索,生动展示嵌套代码围栏的经典陷阱:外层使用三个反引号时,内层再出现三个连续反引号会立即终止外层围栏,导致内容泄漏到外部段落。
- 内容严格聚焦 CommonMark 规范标准(GitHub Flavored Markdown 作为其超集同样适用),不涉及其他 Markdown 实现的具体差异和扩展特性。
- 避免”丢头发”灾难的实用解法:使用波浪线(~)替代反引号作为围栏字符,或将外层围栏增加到四个、五个甚至更多反引号,使内层的三反引号不再与外层形成冲突对。
- 内联代码跨度的相同困境:当需要包含反引号的代码内容时,传统的单反引号定界会提前截断;解决方案是使用两端带空格且数量更多的反引号串作为定界符。
- CommonMark 规范的明确技术依据:代码围栏要求至少三个相同字符(反引号或波浪线),闭围栏数量必须不小于开围栏;内联代码跨度以等长反引号定界,内容首尾空格会被规范化移除以支持包含反引号的代码。
- 文章结尾引用 CommonMark 0.30 版本规范的具体条款,包括”fenced code blocks”和”code spans”章节的精确技术定义,为这些 Markdown 技巧提供了权威的规范依据。
Skip Is Now Free and Open Source
🔼 140 | 💬 42
Skip全面转向免费开源的重大战略转型
- Skip 1.7版本正式移除所有许可要求,现有开发者升级后无需许可证密钥,新用户可立即开始构建应用而无需试用许可
- 核心引擎skipstone已完成开源,作为负责项目创建管理、Xcode/SwiftPM插件逻辑、iOS到Android项目转换、资源本地化打包、JNI桥接创建、源码转译、应用打包等关键构建功能的工具,现已在GitHub公开
- 官网正式从旧域名skip.tools迁移至新域名skip.dev,新站点同样采用开源模式并开放GitHub社区贡献,欢迎开发者参与文档和案例的完善
- 现有订阅用户的Small Business和Professional计划将自动分别转换为Individual和Supporter赞助等级,支持个人月捐和企业赞助(享有官网文档展示权益)
- Skip自2023年创立以来坚持无外部投资的独立发展模式,通过开源免费策略消除开发者对工具持久性的担忧,确保社区能够自主延续技术发展
- 战略转型旨在建立真正无妥协的原生跨平台开发基础,超越传统跨平台工具的局限性,支持开发者在iOS和Android平台构建优质原生应用
Linux from Scratch
🔼 147 | 💬 28
Linux From Scratch 12.4 完整构建指南
- 版本 12.4 于 2025年9月1日发布,由创建者 Gerard Beekmans 编写,Bruce Dubbs 担任执行编辑,版权 1999-2025
- 文档结构分为前言、介绍、构建准备、交叉工具链与临时工具构建、完整系统构建及附录六大部分,遵循循序渐进的教学结构
- 核心软件版本包括 Linux 6.16.1 内核、GCC 15.2.0 编译器、Glibc 2.42、C库、GRUB 2.12 引导程序等关键系统组件
- 构建过程采用分阶段方法:准备宿主系统、构建交叉工具链、创建临时工具、进入 chroot 环境、构建完整系统,每个阶段都有严格的依赖关系
- 系统配置涵盖 LFS-Bootscripts-20250827 启动脚本、Udev 设备管理、网络配置、区域设置、fstab 文件配置及 GRUB 引导程序设置
- 附录提供术语表、致谢、依赖关系分析、完整启动脚本源码、Udev 规则配置及开源许可证信息
PicoPCMCIA – a PCMCIA development board for retro-computing enthusiasts
🔼 79 | 💬 20
PicoPCMCIA - 复古计算PCMCIA开发板
- 基于RP2350芯片的Type II 5V 16位PCMCIA开发板,专为复古计算爱好者设计,在IBM PC110、HP 200LX、Amiga 1200等设备上测试,功耗控制在150mA以内,支持低功耗设备如HP 200LX,在电源预算有限的设备上网络和音频同时使用可能需要外部供电
- 集成Infineon CYW43439无线模块,支持2.4GHz WiFi连接(802.11b/g/n WPA2),可模拟NE2000网卡或拨号调制解调器让主机通过网络访问,同时具备蓝牙功能支持A2DP无线音频流和无线游戏手柄/鼠标(蓝牙功能仍在开发中处于概念验证阶段)
- 配备Texas Instruments TLV320AIC3254低功耗立体声音频编解码器和DREAM SAM2695单芯片合成器,支持64复音(无效果)或38复音+效果、General MIDI兼容、4频段立体声均衡器,实现MPU-401 MIDI接口、线路输入输出和立体声耳机放大
- 实现完整的音效模拟:采用DMA仿真技术实现Sound Blaster兼容(借鉴IBM 3D声卡方案),支持Adlib/OPL音效、世界首个PCMCIA接口的Gravis Ultrasound(当前不支持DMA),以及Panasonic MKE CD-ROM音频和数据仿真,音频通过I2S传输到TI DSP
- 提供存储仿真功能支持Panasonic MKE CD-ROM和线性闪存仿真(ATA/ATAPI仿真待PicoIDE项目完成后实现),磁盘镜像支持BIN/CUE和ISO格式存储在MicroSD卡,并为HP 200LX提供特殊的”Accurite Doubleslot”双卡槽仿真允许存储与网络/音频功能共存;外部USB接口主要用于固件烧录,也可连接USB游戏手柄和鼠标呈现为传统游戏手柄和串行鼠标
Nvidia Stock Crash Prediction
🔼 436 | 💬 362
英伟达股价跌破100美元预测模型分析
- 文章针对2026年ACX预测竞赛的具体问题,预测英伟达股价在2026年任何交易日收于100美元下方的概率,目前股价约184美元
- 分析方法采用期权定价二叉树模型,通过340天期、100美元执行价看涨期权的市场价格反推得出日波动率约3.1%
- 风险中性概率模拟显示未经调整的跌破概率为24%,需通过英格兰银行方法将风险中性概率转换为真实概率
- 采用贝塔分布校准曲线进行概率调整,最终得出10%的预测概率,承认仍存在模型不确定性
- 技术路径包含期权定价理论、动态规划模拟和市场数据校准等量化金融方法
The Overcomplexity of the Shadcn Radio Button
🔼 509 | 💬 326
Shadcn单选按钮的过度复杂化问题
- 作者原本以为更新单选按钮样式很简单,却发现项目使用了Shadcn的RadioGroup和RadioGroupItem组件,而不是直接使用原生HTML radio input元素,导致简单的任务变得复杂化
- Shadcn采用独特的”复制组件到项目”模式而非传统的npm安装,导出的组件包含45行代码和3个导入,甚至为渲染简单圆形引入第三方图标库lucide-react,引入了不必要依赖
- Shadcn建立在Radix UI基础上,Radix提供215行代码的无样式底层组件,Shadcn在其上添加样式,形成了多层依赖架构,作者质疑为何需要两个UI框架
- 通过浏览器检查发现,Radix将按钮元素重新包装为单选按钮外观,使用ARIA属性改变语义而非使用原生radio input,并仅在表单中包含隐藏的radio input,违背了”能使用原生HTML时就不要用ARIA”的原则
- 作者指出现代CSS技术如appearance: none、::before伪元素、:checked伪类完全可以轻松实现自定义样式,无需JavaScript依赖、ARIA重定义或第三方组件库,Shadcn组件的30个Tailwind类本身就是过度复杂
- 批评这种过度工程化导致网站访客需要等待JavaScript加载解析才能操作基本UI元素,增加了性能负担、认知复杂性和潜在bug,违背了”简单事情不应复杂化”的原则
Anthropic's original take home assignment open sourced
🔼 589 | 💬 310
Anthropic开放原始性能测试代码库
- 这是Anthropic最初用于招聘的性能测试题,原为4小时版本,后因Claude Opus 4击败大多数人类而缩短为2小时
- 代码库基于较新测试框架,但起始代码回退到最慢的基础版本,现已开放供无限时间挑战使用
- 性能基准以模拟机器时钟周期为单位,2小时版本起点为18532周期,Claude Opus 4.5在2小时测试中达到1790周期
- AI最佳成绩包括Claude Sonnet 4.5的1548周期和Claude Opus 4.5在改进测试环境中的1363周期
- 人类最佳表现显著优于上述AI成绩但具体数值未公开
- 可运行
python tests/submission_tests.py检查成绩,低于1487周期者可发送代码至performance-recruiting@anthropic.com邮箱
I'm addicted to being useful
🔼 575 | 💬 293
沉迷于“有用”:软件工程师的内在驱动力与职业匹配
- 作者承认在行业压力加大的当下仍热爱软件工程师工作,最核心的驱动力是对“被需要”和“有用”感的上瘾。
- 他用果戈里《外套》中抄写员Akaky Akaievich的比喻,说明即使工作低微且本人有缺陷,只要职业需求与个人性格匹配,就能产生强烈的满足感。
- 当遇到只有少数人能解决或有人求助的技术难题时,作者会感到近乎生理性的不适;一旦解决,便获得巨大的放松与成就感。
- 作为高级(Staff)软件工程师,他的日常工作——调试bug、解答疑问、编写代码——正是对这种“有用”需求的量身定制。
- 作者指出许多工程师的动机是内在的强迫行为:对解谜的渴求、对产品完全掌控的欲望,甚至会转向Factorio、填字或网络社区管理来满足这些冲动。
- 他在多篇博客(《保护时间免受掠夺者》《压碎JIRA票是表演技巧》《试图取悦不值得尊敬的人》)中分享了如何把这些“有用”上瘾转化为实际价值、避免被他人利用并聚焦于管理层而非工单的价值。
cURL removes bug bounties
🔼 393 | 💬 226
cURL移除漏洞赏金计划
- 开源代码库cURL宣布取消漏洞赏金机制,将于1月底正式终止奖金支付
- 维护者Daniel Stenberg指出,AI生成的”垃圾报告”日益泛滥,甄别这些无意义报告耗时费力,给维护者造成额外工作负担
- cURL曾为87个漏洞报告累计支付101,020美元,其中包含超过100个AI协助的优质报告
- 知名安全研究员Joshua Rogers支持移除赏金,认为发现漏洞的真正价值在于声誉和品牌效应,而非奖金本身
- 专家表示,对于有能力发现关键漏洞的专业人士,10,000美元的最高奖金数额相对有限
- cURL希望通过移除经济激励来减少垃圾报告,专注于处理真正有价值的漏洞报告
Don't miss what's next. Subscribe to shortnews.dev: