[2026-04-15] I wrote to Flock's privacy contact to opt out of their domestic spying program

1 view
Skip to first unread message

HNews Digest

unread,
Apr 15, 2026, 10:58:48 PMApr 15
to mo-...@googlegroups.com
 
This post is also available on the web as a GitHub issue.

Hacker News

I wrote to Flock's privacy contact to opt out of their domestic spying program

Flock Safety 隐私政策回应总结 (Flock Safety 隐私政策回复总结)

以下是关于与 Flock Safety 隐私政策相关的事件的总结:

事件概要:

一位加州居民向 Flock Safety 的隐私联系人 (pri...@flocksafety.com) 发送了隐私请求,要求根据加州消费者隐私法案 (CCPA) 删除其个人信息、车辆信息以及其他家庭成员的信息,并禁止未来收集和存储此类数据。

Flock Safety 的回复:

Flock Safety 回复称无法立即处理该请求,理由是:

  • 客户数据所有权: Flock Safety 仅作为服务提供商和数据处理者为客户提供服务,客户拥有并控制 Flock Safety 处理的数据。因此,Flock Safety 无法直接满足用户的隐私请求。
  • 客户合同约束: Flock Safety 的数据处理活动受其与客户签订的合同约束,该合同规定了数据处理的指示和限制。
  • 不进行数据销售: 由于客户拥有数据,Flock Safety 仅能按照客户的指示处理数据,且不允许将其用于自身的商业目的,例如出售、发布或交换数据。
  • 收集的信息: 使用车牌识别 (LPR) 技术时,LPR 设备仅捕获公开可见的车辆特征图像,不处理敏感信息,如姓名或地址。
  • 数据用途: Flock Safety 的客户使用数据进行安全目的,包括管理公共安全、响应安全问题和报告,以及协助解决犯罪并提供客观证据。
  • 数据保留: 默认情况下,Flock Safety 的系统仅保留数据 30 天,数据将在滚动 30 天后永久删除。客户可以根据当地法律或政策调整保留期限。

Flock Safety 指向的参考资料:

用户观点:

用户认为 Flock Safety 的回复在法律上存在不准确之处,并认为根据 CCPA,Flock Safety 应有义务遵守用户的隐私请求。用户正在考虑寻求法律援助。

总结:

Flock Safety 坚称其作为数据处理者,其数据处理行为由客户控制,因此无法直接满足用户隐私请求。用户则认为 Flock Safety 作为数据收集者和处理者,应承担 CCPA 规定的义务。

honeypot.net | 532 points by speckx at 01:47:00 | 221 comments


Claude Code Routines

Claude 代码 Routines 总结 (Claude 代码 自动化流程)

Claude 代码 Routines 是一种保存的 Claude 代码配置,包括提示、一个或多个仓库以及一组连接器。 它们可以自动运行,即使您的电脑关闭也能继续工作,因为它们在 Anthropic 的云基础设施上运行。

主要特点:

  • 自动化: Routines 允许您自动化代码审查、维护和其他重复性任务。
  • 触发器: Routines 可以根据以下触发器自动启动:
    • 计划 (Scheduled): 定时运行,例如每小时、每天或每周。
    • API: 通过 HTTP POST 请求触发,可以集成到警报系统、部署管道等。
    • GitHub: 响应 GitHub 仓库事件(例如拉取请求或发布)。
  • 组合触发器: 一个 Routine 可以同时使用多种触发器。
  • 可用性: Routines 适用于 Pro、Max、Team 和 Enterprise 计划,并需要启用 Claude 代码网页功能。

使用案例示例:

  • 回退维护 (Backlog maintenance): 每周自动处理 issue tracker 上的问题,添加标签、分配负责人并发送 Slack 摘要。
  • 警报分流 (Alert triage): 当监控工具检测到错误阈值时,自动提取堆栈跟踪、关联最近提交并创建修复建议的拉取请求。
  • 定制代码审查 (Bespoke code review): 在拉取请求打开时自动应用团队的代码审查清单,添加安全、性能和风格问题的内联评论。
  • 部署验证 (Deploy verification): 在生产部署后自动运行 smoke checks,扫描错误日志,并在部署窗口关闭前发布 go/no-go 状态。
  • 文档漂移 (Docs drift): 每周扫描合并的拉取请求,标记引用已更改 API 的文档,并为编辑器创建更新拉取请求。
  • 库移植 (Library port): 在 SDK 仓库中的拉取请求关闭时自动将更改移植到另一个语言的 SDK 并创建匹配的拉取请求。

创建和管理 Routines:

  • 创建方式: 可以通过网页、桌面应用或 CLI 创建 Routines。所有方式都写入同一个云账户。
  • Web 创建:claude.ai/code/routines 创建。
  • CLI 创建: 使用 /schedule 命令,可以进行交互式创建或直接指定描述。 /schedule 仅创建计划触发器,需要通过网页添加 API 或 GitHub 触发器。
  • 桌面应用: 在“计划”页面选择“新建远程任务”。
  • 管理: 可以通过网页或 CLI 查看、编辑、暂停/恢复、删除 Routines。

配置触发器:

  • 计划触发器: 选择预设频率(每小时、每天、工作日、每周)。
  • API 触发器: 提供一个 HTTP 端点,通过 POST 请求和 bearer token 触发。
  • GitHub 触发器: 订阅 GitHub 仓库事件,例如拉取请求或发布。可以根据作者、标题、体、分支、标签等条件进行过滤。

其他重要信息:

  • 权限: Routines 在全云 Claude 代码会话中运行,没有权限选择器或审批提示。
  • 范围: Routines 的访问权限受限于选定的仓库和分支设置、环境的网络访问和变量以及连接器。
  • 账户归属: Routines 属于您的 Claude 账户,不与队友共享,并计入您的每日运行配额。
  • 身份: Routines 通过您的 GitHub 身份或连接器执行操作, commit 和 pull request 带有您的 GitHub 用户名,Slack 消息等使用您的链接账户。
  • 使用限制: Routines 的使用量会消耗订阅配额,并有每日运行数量上限。

希望这个总结对您有所帮助!

code.claude.com | 478 points by matthieu_bl at 00:54:33 | 283 comments


Stop Flock

Flock 相机:日益普遍的监控与隐私风险

Flock Camera

Flock Safety 公司将其设备宣传为“人工智能驱动的精准执法技术”,远不止基本的车牌识别器 (ALPR)。该系统利用人工智能技术创建“车辆指纹”,不仅通过车牌识别车辆,还通过颜色、品牌、型号、车顶行李架、凹痕/损坏、轮毂类型等特征进行识别,甚至分析保险杠贴纸的位置。这使得执法人员可以在没有车牌的情况下,搜索“蓝色轿车,左侧有损坏”等信息。

监控的范围更深。通过一项名为“纵队分析”的功能,该系统可以检测经常出现在彼此附近的车辆,暗示驾驶员之间的关联或同伙关系。该平台还可以标记经常前往同一地点的车辆。Flock 公司将其描述为“识别一起旅行的可疑车辆”或“确定同伙”的一种方式,营销材料和警方证词均证实了这一功能。

收集的数据会被记录并通过全国性的执法网络进行搜索,订阅机构的警员无需搜查令即可访问。Flock 公司表示,该系统可以_自动_标记车辆,基于其历史记录、行驶路线或在与犯罪相关的多个地点出现的情况。

虽然这些工具可能有助于定位失窃车辆或失踪人员,但它们也创建了每个人行动、关联和习惯的详细记录。这些数据已经被滥用,例如,堪萨斯州的一位警长利用 Flock 相机跟踪其前女友及其新伴侣 228 次,毫无理由。

这种监控的范围在现实生活中变得清晰。2025 年,一位记者在弗吉尼亚州农村地区行驶了 300 英里,被 15 个不同执法机构运营的近 50 个监控摄像头捕捉到。当他要求查看自己的监控录像时,他发现摄像头记录了其行为模式,使其“对任何观看的人来说都是可预测的”。更令人担忧的是,记者无法回忆起他进行某些旅行的具体日期,但警方却可以立即知道,而无需任何搜查令或怀疑他有任何不当行为。

这些摄像头有多普遍?

目前,在全国范围内,大约有 100,000 个 Flock AI 相机中,一半的摄像头出现在社区地图上(DeFlock.me)。以下是在三个主要城市中监控普及情况的示例:

Flock camera locations in Detroit Flock camera locations in San Francisco

这些系统正在迅速扩张,往往缺乏公开辩论或监督。电子前沿基金会维护的《监控地图集》记录到 2025 年,超过 3,000 个执法和政府机构使用 Flock 产品,这个数字每月都在增长。

隐私面临的风险

《第四修正案》是为了回应英国王室颁布的“普遍搜查令”而制定的,该令授权对任何人、任何地方、任何时间进行搜索。大规模监控在数字形式上复活了这种威胁。仅仅在公共场所自由移动不应要求您被画像并受到审查。法院已经多次裁定,通常使用手机 GPS 位置的所谓的“大网搜查令”违反了《第四修正案》。但 Flock 作为一家私营公司的身份意味着它可以收集和出售数据,而受到较少的限制,利用法律灰色地带,法院尚未完全解决。

“如果你没有什么可隐藏的,你就没什么好怕的” 是一种诱人的想法——直到有人滥用你的信息。隐私不是为了隐藏不当行为,而是关于自主、尊严以及在没有不公正审查的情况下生活的权利。正如爱德华·斯诺登所警告的:“今天出生的孩子将无法理解隐私的概念。他们永远不会知道拥有一个私人的时刻——一个未被记录、未被分析的想法。”

企业激励与大规模监控

大规模监控不仅仅是执法问题,还有重大的商业利益参与其中。Flock Safety 与执法机构合作,鼓励企业和 HOA 等私营实体分享其录像,从而推广其车牌识别摄像头的采用。这种做法通过让执法部门访问原本属于私人的数据,扩大了监控范围。

此外,Flock 将其监控技术推销给雇主和零售店,进一步模糊了公共安全举措和利润驱动的监控之间的界限。例如,大型零售物业所有者已经与 Flock Safety 达成协议,直接与执法部门共享人工智能驱动的监控录像,扩大了监控范围超出公共场所。

Lowe's 是 Flock Safety 的重要私

stopflock.com | 433 points by cdrnsf at 05:56:05 | 99 comments


Tell HN: Fiverr left customer files public and searchable

https://news.ycombinator.com/item?id=47769796

news.ycombinator.com | 404 points by morpheuskafka at 02:56:40 | 83 comments


Spain to expand internet blocks to tennis, golf, movies broadcasting times

Telefónica 扩展其内容版权保护措施,影响西班牙互联网连接

以下是对原文内容的总结:

Telefónica Audiovisual Digital,Movistar Plus+平台的运营部门,已获得法院新的裁决,允许其对足球、其他体育赛事甚至娱乐内容进行新的封锁。

主要内容:

  • **封锁范围扩大:**此前,西班牙互联网在LaLiga重要比赛期间会遇到连接问题。现在,Telefónica的封锁范围将扩展到除了LaLiga以外的其他足球比赛,以及网球、高尔夫等体育赛事,甚至电影和电视剧等娱乐内容。
  • **封锁方式:**封锁将通过动态封锁IP地址来实现,以阻止未经授权传播内容的行为。 一个IP地址可能托管着数千个网站,封锁该IP地址会导致这些网站无法访问。
  • **生效时间:**新措施将从4月14日开始实施,首先影响今晚马德里竞技队和巴塞罗那队的欧冠淘汰赛,以及周三拜仁慕尼黑队和皇家马德里队的比赛。
  • **参与者:**除了主要的运营商(Movistar, MásOrange, Vodafone, Digi)外,这项授权还涵盖了其他小型和中型运营商,这些运营商也必须在收到Telefónica提供的IP地址、URL和域名列表后30分钟内进行封锁。
  • **法律依据:**Telefónica通过其Audiovisual Digital部门单独推动了新的封锁,并获得了巴塞罗那第9商业法院的授权,以封锁传播Telefónica非法内容的网站。 针对欧洲足球的封锁将持续到26/27赛季结束。
  • 潜在影响: 封锁可能影响合法的服务,特别是使用CDN(如Cloudflare)的网站,因为它们可能共享IP地址。政府也承认了这些封锁的存在。

总结:

Telefónica正在扩大其版权保护措施,这将导致西班牙互联网在体育赛事和娱乐内容播放期间的连接中断,并影响到更多的互联网服务提供商。

bandaancha.eu | 402 points by akyuu at 00:59:09 | 405 comments


Want to Write a Compiler? Just Read These Two Papers (2008)

编译器构建学习指南:打破神话,循序渐进

这篇文章探讨了学习编译器构建的常见困境,并提供了循序渐进的学习路径,旨在打破“编译器很难写”的误解。

问题:现有教材过于复杂

现有的编译器书籍通常过于宽泛,信息量巨大,导致初学者难以入门。即使是比较好的书籍,也包含复杂的章节,例如正则表达式转换为状态机、不同类型的语法等,虽然可以扩展知识面,但难以快速构建一个可用的编译器。

解决方案:循序渐进,从小处着手

文章推荐以下学习方法:

  1. 从 Jack Crenshaw 的 "Let's Build a Compiler!" 系列开始: 这是一系列优秀的教程,将编译器构建简化为适合一年级编程学生理解的程度。它专注于 Turbo Pascal 类型的编译器,即单遍解析和代码生成,并仅应用最基本的优化。该系列有 Pascal 和 C 版本,甚至有 Marcel Hendrix 用 Forth 翻译的版本,更易于实验和理解。
  2. 理解 Crenshaw 系列的局限性:缺少抽象语法树 (AST) Crenshaw 的系列没有包含 AST,这是为了保持代码的简洁性,因为在 Pascal 中处理树结构会增加复杂度。但在 Python、Ruby、Erlang、Haskell、Lisp 等高级语言中,创建和操作树状数据结构变得非常容易。
  3. 学习 Nanopass 框架: 参考 Sarkar, Waddell, 和 Dybvig 的论文 "A Nanopass Framework for Compiler Education"。 该框架的核心思想是将编译器分解为一系列简单的转换过程(几十甚至几百个“passes”),每个 pass 仅负责一个简单的转换,避免将多个转换合并。Scheme 语言被用于实现框架,它具有动态类型,可以在运行时进行数据验证。
  4. 后期再学习更高级的理论知识: 在掌握了编译器构建的基本原理和实践经验后,可以考虑阅读更深入的教材,例如著名的 “Dragon Book”(《编译原理》)。但作者认为,如果掌握了基本知识,可能根本不需要这些教材。

总结:

文章强调,编译器并非不可逾越的障碍。通过循序渐进的学习方法,从简单的例子开始,逐步构建更复杂的编译器,就可以轻松掌握编译器构建的技能。 核心在于分解问题,将复杂的任务拆解为一系列简单的、可管理的步骤。

prog21.dadgum.com | 234 points by downbad_ at 17:41:19 | 68 comments


OpenSSL 4.0.0

OpenSSL 4.0.0 发布摘要

OpenSSL 4.0.0 是一个功能更新版本,包含大量新功能和显著变化。以下是主要内容:

一、重大变更及移除 (Incompatible Changes and Removals):

  • 格式调整: RSA 模数的十六进制打印不再添加多余的 "00:" 前缀。签名十六进制转储宽度标准化为 24 字节 (用于签名) 和 16 字节 (其他情况)。
  • API 变更:
    • PKCS5_PBKDF2_HMAC 在 FIPS 模式下强制执行下限检查。
    • 添加了 AKID 验证检查 (当 X509_V_FLAG_X509_STRICT 设置时)。
    • CRL 验证过程增加了一些额外的检查。
    • libcrypto 不再使用 atexit() 清理全局分配的数据。
    • BIO_snprintf() 使用 libc 提供的 snprintf() 函数。
    • OPENSSL_cleanup() 现在在全局析构函数中运行,或者默认情况下不运行。
    • ASN1_STRING 变为不可见类型。
    • 许多 API 函数的签名进行了更改,包括与 X509 处理相关的函数,添加了 const 限定符。
  • 弃用与移除:
    • 弃用并移除 X509_cmp_time(), X509_cmp_current_time(), 和 X509_cmp_timeframe(),推荐使用 X509_check_certificate_times()
    • 移除对 SSLv2 Client Hello 的支持。
    • 移除对 SSLv3 的支持 (自 2015 年起已弃用,自 1.1.0 起禁用)。
    • 移除对引擎的支持 (no-engine 构建选项和 OPENSSL_NO_ENGINE 宏始终存在)。
    • 默认情况下禁用符合 RFC 8422 的过时椭圆曲线支持 (通过 enable-tls-deprecated-ec 启用)。
    • 默认情况下禁用显式 EC 曲线支持 (通过 enable-ec_explicit_curves 启用)。
    • 移除 c_rehash 脚本工具,推荐使用 openssl rehash
    • 移除 openssl ca 命令中的 msie-hack 选项。
    • 移除 BIO_f_reliable() 实现。
    • 移除过时的自定义 EVP_CIPHER, EVP_MD, EVP_PKEY, 和 EVP_PKEY_ASN1 方法。
    • 移除过时的固定 SSL/TLS 版本方法函数。
    • 移除过时的函数 ERR_get_state(), ERR_remove_state()ERR_remove_thread_state()ERR_STATE 对象现在总是不可见类型。
    • 移除 darwin-i386{,-cc}darwin-ppc{,64}{,-cc} 目标配置。

二、新增功能 (New Features):

  • Encrypted Client Hello (ECH): 支持 RFC 9849 定义的加密客户端握手。
  • SM2 算法支持: 支持 RFC 8998 定义的签名算法 sm2sig_sm3、密钥交换组 curveSM2 和 [tls-hybrid-sm2-mlkem] 后量子组 curveSM2MLKEM768
  • cSHAKE 函数支持: 支持符合 SP 800-185 的 cSHAKE 函数。
  • ML-DSA-MU 算法支持: 支持 "ML-DSA-MU" 摘要算法。
  • SNMP 和 SRTP KDF 支持: 增加对 SNMP KDF 和 SRTP KDF 的支持。
  • FIPS 模块安装改进: FIPS 自测试现在可以延迟并根据需要运行,使用 openssl fipsinstall -defer_tests 选项。
  • Windows 运行时支持: 支持在 Windows 上使用静态或动态 VC 运行时链接。
  • FFDHE 密钥交换支持: 符合 RFC 7919 的 TLS 1.2 中协商的 FFDHE 密钥交换支持。

总而言之,OpenSSL 4.0.0 引入了许多新功能,并对现有功能进行了重大调整和移除

github.com | 216 points by petecooper at 01:45:34 | 73 comments


Fixing a 20-year-old bug in Enlightenment E16

总结:Enlightenment E16 中的罕见 Bug 修复

这篇文章讲述了作者修复 Enlightenment E16 (E16) 窗口管理器中一个罕见的、自 2006 年以来的 bug 的过程。作者是一名 E16 的忠实用户,并将其作为日常使用的窗口管理器。

Bug 的情况:

  • 作者在使用 Atril 打开一个包含 LaTeX 格式讲义和练习的 PDF 文件时,桌面突然冻结。
  • 反复尝试发现,每次打开该特定的 PDF 文件都会导致冻结,这是一个确定的 bug。
  • 使用 gdb 调试显示,程序在 imlib2 的字体缓存中长时间停顿,调用方是 E16。
  • 分析发现 bug 发生在 TextstateTextFitMB 函数中,该函数负责处理 PDF 窗口标题的中间省略号截断。
  • 该函数使用了牛顿算法来估计需要删除多少字符以适应标题,但由于缺乏迭代限制,导致算法在两个状态之间不断振荡。

Bug 的根本原因:

  • TextstateTextFitMB 函数中的牛顿算法缺乏迭代限制,导致算法无法收敛,陷入无限循环。
  • 过于严格的容差(ε)也加剧了问题,使得算法难以找到合适的截断方案。

修复方案:

作者通过以下方式修复了该 bug:

  • 迭代限制: 为循环添加了 32 次迭代的限制。如果循环超过此限制,则接受当前最合适的方案,并停止迭代。
  • 最小字符删除: 确保 nuke_count 始终至少为 1,避免出现负数修正导致的问题。
  • 最小字符宽度: 确保 cw (平均字符宽度) 始终至少为 1,避免除以零的错误。

相关信息:

  • E16 是一个自 1997 年以来一直处于开发的窗口管理器,具有可定制、轻量级和美观等特点。
  • 作者认为,稳定软件的维护者有时也会犯愚蠢的错误,并且供应链安全问题日益突出。
  • 旧代码库的优点在于,bug 数量会随着维护者的努力而减少,并且更容易进行自定义修改。

总结: 这篇文章详细描述了作者如何诊断和修复一个长期存在的 E16 bug,强调了在数值算法中添加迭代限制的重要性,并对软件维护和供应链安全提出了思考。

iczelia.net | 199 points by snoofydude at 12:47:00 | 88 comments


Good Sleep, Good Learning (2012)

https://super-memory.com/articles/sleep.htm

super-memory.com | 169 points by downbad_ at 17:11:18 | 75 comments


Saying goodbye to Agile

敏捷开发的终结:回顾与展望 (敏捷开发的终结:回顾与展望)

这篇文章探讨了敏捷开发方法论的衰落,并认为其价值已经过时。文章的核心观点是:敏捷开发并非创新,而是对早已存在的迭代式开发理念的重新包装,甚至在某些方面,它掩盖了更有效的实践。

以下是文章的主要内容:

敏捷宣言的空洞性: 敏捷宣言(2001)本身缺乏实质内容,充斥着模糊的陈述,且未能提供明确的指导。当人们质疑敏捷实践时,总是被告知这并非“真正的敏捷”,这进一步加剧了敏捷概念的模糊性。

对“瀑布模型”的错误定义: 敏捷开发被定义为与“瀑布模型”的反义,认为瀑布模型是无效的。然而,文章指出,人们早在1970年代就认识到瀑布模型的不足,并且温斯顿·罗伊斯(Winston W. Royce)已经提出了改进方案,包括程序设计、原型开发以及持续的客户参与。这些方案后来被敏捷开发所宣扬。

迭代开发的长期存在: 即使在瀑布模型之后,1976年的一篇论文也首次使用了“瀑布”一词,并指出需求问题会在软件开发过程中发生变化,这表明迭代开发并非敏捷独有。

规格驱动开发 (Spec-Driven Development) 的兴起: 随着大型语言模型(LLM)的普及,软件开发领域出现了规格驱动开发的趋势。LLM在处理明确规格时表现更好,因此编写详细的规格变得越来越重要。这与敏捷开发“运行的软件胜于全面的文档”的理念相反。

历史的重演: 文章引用罗伊斯1970年的观点,强调文档、规格和设计之间的联系,并质疑敏捷宣言的价值,认为它重新定义了半个世纪前工程师们已经解决的问题。文章呼吁重新审视软件开发实践,将敏捷开发放入历史的尘埃中。

总结: 文章认为,敏捷开发未能带来真正的创新,其核心理念早已存在。随着技术的发展,尤其是LLM的出现,软件开发领域正朝着规格驱动的方向发展,这为重新评估敏捷开发提供了契机。

lewiscampbell.tech | 157 points by matrixhelix at 12:45:37 | 218 comments


Wacli – WhatsApp CLI: sync, search, send

wacli: WhatsApp 命令行工具 - 同步、搜索、发送

wacli 是一个基于 whatsmeow 的 WhatsApp 命令行工具,旨在提供以下功能:

主要功能:

  • 消息历史同步与持续捕获: 尽可能地本地同步 WhatsApp 消息历史,并持续捕获新消息。
  • 快速离线搜索: 允许用户在本地存储的消息中进行快速搜索。
  • 消息发送: 支持发送文本和文件消息。
  • 联系人与群组管理: 提供联系人和群组的管理功能。

重要说明:

  • wacli 是一个第三方工具,通过 whatsmeow 使用 WhatsApp Web 协议,不隶属于 WhatsApp 公司

当前状态:

核心功能已实现。详细设计请参考 docs/spec.md

最近更新 (0.2.0):

  • 消息搜索/列表: 搜索结果现在包含反应、回复和媒体类型的显示文本。
  • 消息发送: 使用 wacli send file --filename 可以覆盖文件显示名称。
  • 认证: 可以通过环境变量 WACLI_DEVICE_LABEL / WACLI_DEVICE_PLATFORM 覆盖认证信息。

安装与构建:

选择以下选项之一:

  • 选项 A: 通过 Homebrew 安装 (tap): brew install steipete/tap/wacli
  • 选项 B: 本地构建: go build -tags sqlite_fts5 -o ./dist/wacli ./cmd/wacli

快速上手:

默认存储目录为 ~/.wacli (可通过 --store DIR 覆盖)。

  1. 认证 (显示 QR 码) 并启动同步: pnpm wacli auth./dist/wacli auth (本地构建后)
  2. 持续同步 (不显示 QR 码,需要先进行认证): pnpm wacli sync --follow
  3. 诊断: pnpm wacli doctor
  4. 搜索消息: pnpm wacli messages search "meeting"
  5. 回填旧消息 (尽力而为,需要主设备在线): pnpm wacli history backfill --chat 12345...@s.whatsapp.net --requests 10 --count 50
  6. 下载媒体 (同步后): ./wacli media download --chat 12345...@s.whatsapp.net --id <message-id>
  7. 发送消息:
    • pnpm wacli send text --to 1234567890 --message "hello"
    • ./wacli send file --to 1234567890 --file ./pic.jpg --caption "hi"
    • ./wacli send file --to 1234567890 --file /tmp/abc123 --filename report.pdf (覆盖显示名称)
  8. 列表群组并管理参与者:
    • pnpm wacli groups list
    • pnpm wacli groups rename --jid 1234...@g.us --name "New name"

灵感来源:

该项目受到 Vicente Reig 的 whatsapp-cli 的启发和学习。 whatsapp-cli

用户体验:

  • wacli auth: 交互式登录 (显示 QR 码),然后立即执行初始数据同步。
  • wacli sync: 非交互式同步循环 (不显示 QR 码,未认证时会报错)。
  • 输出默认情况下是人类可读的;使用 --json 获得机器可读的输出。

存储:

默认存储目录为 ~/.wacli (可通过 --store DIR 覆盖)。

环境变量:

  • WACLI_DEVICE_LABEL: 设置关联设备标签 (在 WhatsApp 中显示)。
  • WACLI_DEVICE_PLATFORM: 覆盖关联设备平台 (如果未设置或无效,默认为 CHROME)。

回填旧消息:

wacli sync 仅存储 WhatsApp Web 机会性地发送的消息。要尝试

github.com | 155 points by dinakars777 at 15:04:45 | 113 comments


40% of lost calories globally are from beef, needing 33 cal of feed per 1 cal

全球作物利用效率分析:2010-2020年

摘要: 为了应对人口增长,全球农业食品系统需要高效地将作物生产转化为人类可消耗的卡路里。本研究量化了2010年至2020年间,50种主要作物在用于食品、牲畜饲料、生物燃料和其他非食品用途上的影响,并评估了由此带来的可用卡路里变化。研究发现,尽管总卡路里产量增加了23.9%,但人类可食用的卡路里仅增加了16.6%。这种效率降低主要源于牲畜饲料(增加31.2%)和非食品用途(增加36.2%)的需求增加。生物燃料生产(非食品用途的一部分)的卡路里使用量增加了27.9%,占2020年总卡路里产量的5.3%。相比之下,直接作为食品消费的作物仅增加了14.9%。2020年,农田上生产的卡路里中,只有一半(50.1%)可供人类食用。由于系统效率造成的“损失”卡路里相当于7.2×1015卡路里/年,足以支持72亿人。其中,牛肉生产是造成饲料转化为食品卡路里损失的最大来源,需要36.0%的饲料卡路里,但仅产生9.1%的动物源卡路里。如果48个高收入国家减少过量牛肉消费,并用鸡肉替代,避免的损失卡路里足以满足8.5亿人的卡路里需求。研究结果表明,少数商品,特别是牛肉和猪肉,是当前农田利用效率低下的主要原因,且这些低效率集中在少数国家。针对这些商品和国家采取行动和政策,将对改善粮食安全、健康和环境产生显著影响。

主要内容:

  • 全球作物生产及利用变化: 2010年至2020年间,全球作物产量增加了23.9%,但直接用于食品的卡路里比例下降,非食品用途(包括生物燃料)的卡路里比例上升。
  • 饲料和非食品用途的影响: 牲畜饲料和非食品用途的卡路里使用量大幅增加,其中牛肉和猪肉是饲料需求增加的主要驱动因素。生物燃料生产也显著增加,占用了一定比例的作物卡路里。
  • 可用卡路里与损失卡路里: 效率降低导致可用卡路里增长放缓。2020年,全球“损失”卡路里数量巨大,足以支持72亿人。
  • 饮食选择的影响: 研究表明,减少牛肉消费,并用鸡肉或豆类替代,可以显著减少损失卡路里,并增加可用于满足人类需求的卡路里总量。
  • 地理分布: 美国、中国、印度、巴西和欧盟是全球作物生产的主要区域。这些区域的效率差异显著,某些国家(如美国和巴西)的可用卡路里比例较低。
  • 政策建议: 研究强调了针对牛肉、生物燃料以及位于美国、巴西等高产区采取行动的重要性,以提高全球农业食品系统的效率,从而改善粮食安全、健康和环境。

研究方法:

  • 数据来源: 利用联合国粮农组织(FAO)的作物生产和利用数据,分析2010年至2020年间50种主要作物的生产和分配情况。
  • 计算方法: 将作物产量转化为卡路里,并根据饲料转化为食品的效率计算间接食品卡路里。评估生物燃料生产对作物利用的影响。
  • 地理分析: 利用作物分布数据,分析不同国家和地区作物利用的地理模式。

结论:

本研究强调了提高全球农业食品系统效率的重要性,并指出了牛肉、生物燃料以及特定国家在提高效率方面的关键作用。通过改变消费习惯,优化作物利用,可以显著增加可用于满足人类需求的卡路里,并改善全球粮食安全和环境可持续性。

iopscience.iop.org | 154 points by randycupertino at 02:14:29 | 254 comments


Dependency cooldowns turn you into a free-rider

依赖项冷却期作为应对供应链攻击的缺陷:转向上传队列 (依赖项冷却期作为应对供应链攻击的缺陷:转向上传队列)

本文批评了依赖项冷却期作为应对供应链攻击的常见方法,并提倡采用上传队列作为更有效且更合理的替代方案。

依赖项冷却期的缺陷:

  • 免费搭便车: 依赖项冷却期依赖于其他用户(那些没有配置冷却期的用户)作为安全测试的“免费”受害者。
  • 复杂性: 实施依赖项冷却期需要不同包管理器和每个项目的配置,这既繁琐又容易出错。
  • 不完整: 即使配置了冷却期,开发者也可能无意中绕过它,导致安全漏洞。

上传队列的优势:

上传队列将包的发布(上传到中心索引)与分发(向公众提供)分开。 在发布和分发之间,可以进行以下操作:

  • 自动化安全扫描: 对包进行自动化安全检查。
  • 代码差异审查: 公开展示构建包的更改差异。
  • beta 测试: 提供给志愿者 beta 测试者进行测试。
  • 维护者通知: 提前通知维护者即将发布的版本。

上传队列解决了依赖项冷却期的问题,无需个人配置,也无需包管理器或项目添加额外配置。它还降低了发布凭据的威力,并提供了预警机制,让用户和维护者都能提前了解新版本。

AI 的特殊性:

对于使用 LLM 的情况,markdown 文件本质上已成为可执行文件格式,这带来了新的供应链攻击风险。 一个双重上传队列(审核员和代理所有者审查)是保护 AI 代理系统免受此类攻击的理想解决方案。

资金问题:

作者认为,实施上传队列所需的资金并不一定很高,许多包索引已经有足够的资金和安全团队。 商业项目可以通过付费的加速安全审查来支持这一系统,从而实现企业需求和整个生态系统安全之间的平衡。

结论:

依赖项冷却期在个人层面可能有效,但作为社区最佳实践却存在缺陷。 上传队列提供了一个更强大、更有效和更公平的解决方案,可以保护整个生态系统免受供应链攻击。

calpaterson.com | 153 points by pabs3 at 10:03:12 | 105 comments


5NF and Database Design

第五范式 (5NF) 的解构:避免不必要的复杂性

这篇文章旨在重新审视传统教学中第五范式 (5NF) 的方法,指出其通常的解释过于复杂且不必要,从而造成不必要的困惑。

主要观点:

  • 传统教学的困境: 传统的 5NF 解释通常使用复杂且不切实际的例子(例如维基百科的“旅行推销员、品牌、产品类型”),导致学习者难以理解其核心概念。
  • 正确的设计流程: 应该从明确的业务需求开始,创建逻辑模型,然后根据教科书的规范化设计策略设计物理表结构。
  • 两种常见的模式: 在 5NF 设计中,两种模式自然出现:
    • AB-BC-AC 三角形: 例如“冰淇淋”示例,涉及品牌、口味和朋友的偏好。
    • ABC+D 星形: 例如“音乐家”示例,涉及音乐会、乐器、音乐家和演出。
  • 不需要过度设计: 通过遵循逻辑模型和规范化设计策略,可以有效地设计表结构,而无需过度关注 5NF 的概念。
  • 关键在于理解业务需求: 最终,数据库设计应以满足业务需求为核心,而不是为了符合某种范式而进行复杂的设计。

示例分析:

  • 维基百科示例: 作者批评了维基百科的示例,认为其规则(“如果销售员同时销售两种品牌的产品,则必须销售所有该品牌的产品”)不切实际,难以理解。
  • 冰淇淋示例: 重新阐述了“冰淇淋”示例,强调了品牌、口味和朋友之间的偏好关系,并展示了如何通过 AB-BC-AC 三角形模式进行设计。
  • 音乐家示例: 详细分析了“音乐家”示例,展示了如何通过 ABC+D 星形模式设计表结构,并讨论了使用复合主键或合成主键的选择。

扩展讨论:

文章还探讨了如何扩展冰淇淋和音乐家示例,以展示不同的教学重点,并强调两种模式的互补性。

结论:

作者认为,理解业务需求并遵循规范化设计策略是关键,而不是盲目追求 5NF。 通过这种方法,可以设计出高效、无冗余、无异常的数据库表结构。 5NF 并非必须,而是设计过程中可能出现的自然结果。

总而言之,这篇文章旨在简化对 5NF 的理解,强调从业务需求出发进行数据库设计的实际意义,并避免不必要的复杂性。


(中文翻译结束)

kb.databasedesignbook.com | 142 points by petalmind at 00:22:49 | 55 comments


Keep Android Open

安卓开发者验证计划:对用户、开发者和国家主权的威胁 (Android 开发者验证计划:对用户、开发者和国家主权的威胁)

谷歌于2025年8月宣布,自2026年9月起,安卓平台将不再允许未经注册的开发者进行应用开发。这意味着开发者需要:

  • 缴纳费用给谷歌
  • 同意谷歌的使用条款
  • 提供政府身份证明
  • 上传私钥证据
  • 列出所有当前和未来的应用标识符

对用户的潜在影响:

该计划将改变用户对安卓开放性的认知。用户将不再能自由地在设备上安装任何软件,而是受到谷歌对其允许软件的判断的限制。

对开发者的影响:

开发者将无法在未经谷歌批准的情况下直接与朋友、家人和社区分享应用。这违背了安卓一直以来的“开放”原则,使得安卓失去了其作为开放平台的竞争优势。

对国家的影响:

该计划将使国家公民的权利和数字主权让渡给谷歌,该公司有服从专制政权要求的历史记录。关键业务和政府软件将受到谷歌不透明和不可追究的决策的影响。

“高级流”并非解决方案

谷歌于2026年3月公布了“高级流”机制,声称旨在允许“高级用户”在验证计划生效后安装未经验证的开发者应用。该流程复杂且耗时,需要:

  1. 七次点击“关于手机”中的软件版本号以启用开发者模式
  2. 在开发者选项中启用“允许安装未知来源的应用”
  3. 输入设备解锁密码
  4. 等待24小时
  5. 确认风险,选择临时(七天)或永久允许安装

**重要提示:**该流程依赖于谷歌云服务,谷歌可以随时修改、限制或移除该功能,而无需用户同意或操作系统更新。目前,该功能尚未出现在任何安卓测试版本中,仅存在于博客文章和UI设计稿中。因此,在谷歌提供可验证的实施方案之前,所有非注册开发者的应用都将被阻止。

如何行动

开发者:抵制并拒绝

  • 不要注册早期访问计划,进行身份验证或接受Android开发者控制台邀请。
  • 鼓励其他开发者和组织抵制该计划。
  • 使用FreeDroidWarn库告知用户。
  • 如果为谷歌员工或承包商,请通过安全渠道ti...@keepandroidopen.org提供内部信息。

所有人:发声

网站所有者:表明支持

  • 在网站上添加倒计时横幅。

消费者:联系国家监管机构

联系所在国家或地区的监管机构,表达对该政策的担忧,并指出其对消费者和竞争的潜在危害。提供详细的、带有语言位置信息(使用当地语言)的投诉更有效。

资源:

  • 提供了大量关于该计划的链接和资源,包括新闻报道、讨论、官方文档和行动指南。

keepandroidopen.org | 136 points by bjornroberg at 20:47:36 | 26 comments


Google Gemma 4 Runs Natively on iPhone with Full Offline AI Inference

Google Gemma 4 在 iPhone 上的本地 AI 部署:摘要

Google 最近发布了 Gemma 4,这是一个开源模型系列,现在可以在 iPhone 上直接运行,实现完全本地推理和离线功能。这标志着边缘 AI 部署不再是未来的规划,而是正在发生的现实。

主要特点和亮点:

  • 本地运行: Gemma 4 可以在 iPhone 上完全离线运行,无需连接云端。
  • 模型规模: Gemma 4 提供了多种模型尺寸,其中 31B 变体在性能上与 Qwen 3.5 的 27B 模型相当,尽管两者在不同任务上各有优劣。
  • 针对移动设备的优化: 较小的 E2B 和 E4B 变体专门为移动设备设计,优先考虑效率而非原始能力。Google 推荐用户使用 E2B,因为它速度更快,占用空间更小,更适合在内存和散热受限的真实设备环境下使用。
  • 易于上手: 用户可以通过 App Store 下载 Google AI Edge Gallery 来体验 Gemma 4。选择模型变体后即可直接在设备上运行推理。
  • 平台定位: Google AI Edge Gallery 不仅仅是一个文本界面,它还集成了图像识别、语音交互以及可扩展的 Skills 框架,旨在成为一个用于本地 AI 实验的平台,而非简单的演示功能。
  • GPU 加速: Gemma 4 的推理过程通过 iPhone 的 GPU 进行,响应速度快,表明消费级硬件已具备支持此类工作负载的能力。
  • 离线能力: 离线功能对于企业应用场景,如现场应用、医疗保健环境以及数据隐私要求严格的环境,具有重要意义。

总结:

Gemma 4 在 iPhone 上的部署不仅仅是一个技术验证,更预示着本地 AI 时代的到来。Google 的 Gemma 模型已经“出笼”,代表着边缘 AI 部署的重大进步。

gizmoweek.com | 132 points by takumi123 at 13:19:06 | 92 comments


Fuck the cloud (2009)

总结:对“云”的批判 (Zǒngjié: Duì "Yún" de Pīpàn - Summary: A Critique of "The Cloud")

这篇文章表达了对“云”概念的强烈批判,认为依赖第三方平台存储和管理个人重要数据是一种“被骗局”。作者认为,将核心工作和重要数据存储在不由自己控制的服务器上是危险的。

核心观点:

  • “云”的概念问题: 作者认为“云”这个词语本身就具有迷惑性,给人一种柔和、模糊的感觉,掩盖了其背后的潜在风险。
  • 数据安全风险: 强调如果用户丢失数据,技术人员不会提供帮助,公司可能会倒闭,导致数据永久丢失。
  • 价值评估: 鼓励用户思考哪些数据真正重要。并非所有数据都值得永久保存,例如浏览历史或临时性的娱乐内容。
  • 服务条款陷阱: 警告用户注意服务条款,避免将数据上传到无法导出或复制的平台,因为这些平台可能随时关闭,导致数据丢失。
  • 付费服务优于免费服务: 建议用户购买付费服务,成为客户而非免费用户,确保拥有数据的备份。
  • 区分服务与派对: 将YouTube等平台比作“派对”,虽然有趣,但不应作为永久存储重要数据的场所。

历史背景:

作者指出“云”的概念并非新事物,早在上世纪80年代的NYNEX研究实验室就已出现类似的概念。

建议:

  • 备份数据: 永远不要将数据存储在云端,而没有个人备份。
  • 抵制限制导出功能的平台: 抵制那些不允许用户复制或导出数据的平台。
  • 谨慎使用免费服务: 认识到免费服务存在风险,并对提供此类服务的公司保持警惕。
  • 区分服务和派对: 明确哪些平台是可靠的服务,哪些只是短暂的体验。

后续文章:

作者还发表了多篇后续文章,进一步阐述了对“云”的批判,并探讨了相关问题。文章最后强调,作者将专注于其他领域,并关闭了文章的评论区。

ascii.textfiles.com | 124 points by downbad_ at 06:00:11 | 78 comments


Turn your best AI prompts into one-click tools in Chrome

Chrome Skills:一键式 AI 工作流,提升效率

摘要:

谷歌 Chrome 推出“Skills”(技能)功能,旨在让用户能够保存、重用和快速执行 AI 工作流,从而简化网页浏览体验。该功能基于 Gemini AI,用户无需重复输入提示,即可快速完成 AI 任务。

主要内容:

  • 功能介绍: Skills 功能允许用户保存常用的 AI 提示,并将其创建为一键式工作流。 用户可以通过输入 / 或点击加号按钮来选择已保存的 Skill,Skill 将在当前页面及用户选择的其他标签页中运行。
  • 工作流构建: 用户可以直接从聊天记录中保存提示作为 Skill。 Skill 可以随时编辑和创建新的 Skill。
  • 应用场景示例:
    • 健康与保健: 快速计算食谱中的蛋白质含量。
    • 购物: 生成多个标签页之间的规格对比。
    • 生产力: 扫描冗长的文档,查找重要信息。
  • Skills 图书馆: 谷歌还发布了一个现成的 Skills 图书馆,包含针对常见任务和工作流程的预设 Skill。 例如,分析产品成分,或根据预算和收件人兴趣选择礼物。用户可以试用这些 Skill,并根据需要进行自定义。
  • 安全与隐私: Skills 功能建立在 Chrome 的安全和隐私基础上,采用与 Gemini AI 相同的安全措施。 在执行某些操作(例如添加日历事件或发送电子邮件)之前,Skill 会请求用户确认。
  • 发布信息: Skills 功能已开始在桌面版 Gemini in Chrome 上推出[1],用户可以在任何登录的 Chrome 桌面设备上访问和管理已保存的 Skill。
  • 可用性: Skills 功能面向语言设置为英语-美国的用户,在 Mac、Windows 和 ChromeOS 上可用。

总结:

Chrome Skills 的推出,旨在简化 AI 辅助浏览体验,通过一键式工作流,提升用户效率,并提供安全可靠的 AI 使用环境。

blog.google | 123 points by xnx at 01:09:43 | 56 comments


California ghost-gun bill wants 3D printers to play cop, EFF says

加州拟议立法对3D打印枪支监管引发担忧:审查、监控和扼杀开源工具

加州一项名为AB 2047的拟议立法,旨在要求3D打印机制造商使用州认证算法,检测并阻止打印枪支组件,引发了数字权利倡导者的强烈反对。他们认为该法案可能扼杀开源工具,并带来新的监控隐患。

立法内容与目标:

AB 2047 的主要目标是要求3D打印机制造商在其设备或切片软件中实施枪支部件检测算法,并维护一个允许清单。制造商必须确保打印机只能使用其软件,且必须通过州认证才能销售。任何规避扫描程序或使用替代软件的行为都可能构成犯罪。

EFF的担忧:

电子边界基金会(EFF)的 Cliff Braun 和 Rory Mir 认为该法案在技术上不可行,且会带来消费者监控问题。他们指出:

  • 技术不可行: 由于3D打印机和 CNC 机器的大部分“大脑”来自切片软件,该法案实际上会划分合法和非法软件,导致专有软件占据主导地位,扼杀开源替代方案。
  • 规避容易: 简单地对枪支部件的模型或机器指令(G-code)进行微小修改,就能轻松规避检测。
  • 范围扩大风险: 该法案缺乏对“黑名单”范围的限制,可能导致其扩展到版权侵权等其他领域,甚至被用于审查“极端”或“不雅”符号,以及抗议工具。
  • 误判风险: 算法很可能产生误报,阻止合法用户使用其设备。

其他观点:

  • 枪支犯罪问题: 尽管该法案旨在抑制难以追踪的枪支制造,但美国枪支犯罪率远高于其他发达国家,因此该法案对许多人来说可能是一个积极的举措。
  • 枪支协会反对: 加州枪支拥有者协会也反对该法案,认为其针对的是无辜消费者和企业,而非罪犯。
  • Prusa Research 的表态: 3D打印机制造商 Prusa Research 的社区经理 Tommy Muszynski 表示,该公司密切关注该法案的进展,并坚持“维修权”和用户自主选择的原则。

总结:

加州AB 2047 拟议立法旨在打击非法枪支制造,但数字权利倡导者担心其技术可行性、潜在的监控风险以及对开源社区和消费者自由的影响。该法案引发了关于技术监管、隐私保护和创新空间等重要问题的讨论。

theregister.com | 120 points by Bender at 03:08:32 | 2 comments


Not all elementary functions can be expressed with exp-minus-log

摘要:从单一算子导出所有初等函数

本文总结了Robert Smith对Andrzej Odrzywołek的论文“All Elementary Functions from a Single Operator”的评论和分析。Odrzywołek的论文声称,函数 $E(x,y) := \exp x - \log y$ (称为EML项) 连同变量和常数1,足以表达所有初等函数。尽管这一结果令人兴奋,但Smith认为其意义取决于对“初等函数”的定义。

主要观点:

  • EML项的定义: EML项是通过递归地使用函数 $E(x,y)$ 从变量和常数1开始构建的表达式。
  • Odrzywołek的定义: Odrzywołek将“初等”定义为36个特定符号,并在这种定义下,他的定理是正确的。
  • 更广泛的定义: 在现代纯数学中,“初等函数”的定义更为广泛,涵盖多项式根函数。
  • 核心论点: 基于更广泛的定义,EML项无法表达所有初等函数,特别是多项式根函数。
  • 证明: Smith使用Khovanskii的拓扑伽罗瓦理论证明了EML项的单色性群是可解的。而标准初等函数的单色性群并非总是可解(例如,泛五次方程的根的单色性群是 $S_5$,不可解)。
  • 结论: EML项构成的函数类严格小于标准初等函数类。

关键细节:

  • Liouville的贡献: 19世纪的Liouville对初等函数的定义做出了重要贡献,其积分的结果要么与输入函数相似,要么包含额外的对数因子。
  • 拓扑伽罗瓦理论: 该理论被用来证明EML项无法表达标准初等函数,特别是泛五次方程的根。
  • 单色性群: 单色性群描述了函数在环路作用下的行为,在拓扑伽罗瓦理论中起着关键作用。EML项的单色性群是可解的,而标准初等函数不一定如此。
  • 目的: 这篇文章旨在阐明“初等函数”的定义,证明EML项的性质,并展示EML项无法表达的标准初等函数的例子,而不是直接否定Odrzywołek的成果。

总结:

虽然Odrzywołek的EML项表达初等函数的结果很有趣,但需要注意的是,它基于对“初等函数”的特定定义。 在更广泛的数学语境下,EML项不足以表达所有初等函数,特别是那些涉及多项式根函数的函数。 Smith的分析表明,Odrzywołek的突破性成果,在更广泛的数学定义下,并不能被视为对计算机工程和机器学习基础的根本性变革。

stylewarning.com | 120 points by mmastrac at 09:59:18 | 95 comments


Direct Win32 API, Weird-Shaped Windows, and Why They Mostly Disappeared

摘要:重拾Windows桌面应用的个性化与优化

这篇文章表达了对当前Windows桌面应用日益同质化和臃肿的强烈不满,并呼吁回归更优化、更具个性的桌面应用开发方式。

主要观点:

  • 现状批判: 现代Windows桌面应用普遍依赖React、Electron等框架,导致应用体积庞大、运行缓慢,资源占用过高。作者以Notepad为例,指出纯Win32 C编写的Notepad占用内存仅为Electron版本的一小部分。
  • Win32 API的价值: 强调Win32 API提供了对窗口的完全控制,是创造独特外观和优化的关键。作者怀念Windows XP时期,应用程序可以拥有非标准的窗口外观,例如Media Player和桌面吉祥物。
  • 个性化设计的缺失: 现代桌面UI设计倾向于统一的矩形窗口和标准控件,缺乏个性化和独特性。作者认为,应用程序的窗口不应仅仅是矩形,而应体现其身份和功能。
  • GitHub项目展示: 作者发布了GitHub项目https://github.com/IvRogoz/WierdApps,展示了使用Win32 API实现各种奇特窗口形状的可能性,例如椭圆形窗口、基于位图的窗口和动画桌面吉祥物。
  • Win32编程模型: 解释了Win32编程的核心机制是消息驱动,应用程序通过处理Windows发送的各种消息(例如WM_CREATE、WM_PAINT、WM_SIZE、WM_DESTROY)来响应事件。
  • 窗口形状自定义技术: 介绍了两种实现非标准窗口形状的技术:
    • 区域对象(HRGN): 通过SetWindowRgn函数将窗口的形状设置为区域对象,例如椭圆形。
    • 位图驱动区域: 从位图数据中提取形状信息,并将其转换为窗口区域。
    • 分层窗口(WS_EX_LAYERED): 使用分层窗口和UpdateLayeredWindow函数进行像素级别的控制,实现动画和透明效果。
  • 开发挑战与未来展望: 虽然自定义窗口易于原型设计,但需要自行处理拖动、调整大小、关闭等行为,开发难度较高。 作者认为,虽然现代用户更注重可靠性和易用性,但重拾个性化桌面UI仍然有价值,Win32 API提供了实现这种个性化的可能性。

总结:

文章呼吁开发者重新关注Win32 API,摆脱框架束缚,创造更轻量、更个性化的Windows桌面应用,并提供了相关的代码示例。作者表达了对现代桌面UI同质化趋势的不满,以及对Windows平台曾经的创造力和灵活性的怀念。

warped3.substack.com | 114 points by birdculture at 17:24:31 | 65 comments


OpenAI's $852B valuation faces investor scrutiny amid strategy shift, FT reports

https://www.reuters.com/legal/transactional/openai-investors-question-852-billion-valuation-strategy-shifts-ft-reports-2026-04-14/

reuters.com | 111 points by abdelhousni at 09:36:22 | 126 comments


The FCC just saved Netgear from its router ban for no obvious reason

美国外国路由器禁令:网件获得有条件批准,疑点重重 (美国外国路由器禁令:网件获得有条件批准,疑点重重)

本文报道了美国联邦通信委员会 (FCC) 对网件公司未来路由器、有线调制解调器和有线网关进口申请的“有条件批准”事件。该批准有效期至2027年10月1日,尽管网件设备目前仍在亚洲制造,且尚未宣布在美国本土设厂的计划。

主要内容如下:

  • 有条件批准的背景: 美国此前实施了针对外国路由器的禁令,理由是外国路由器可能存在国家安全风险。然而,此次网件获得批准,且批准理由模糊,引发了质疑。FCC仅表示,五角大楼已对网件设备做出了“特定决定”,认为其“不构成对美国国家安全风险”。
  • 有条件批准的要求与网件的实际情况: FCC的“有条件批准”流程要求路由器制造商提交“详细且有时间表的计划”,用于在美国建立或扩大生产。然而,网件在向美国证券交易委员会 (SEC) 提交的文件中并未提及在美国本土设厂。作者多次尝试联系网件和FCC,询问网件是否提交了相关计划以及投资细节,但均未收到回复。
  • 批准范围: 批准范围涵盖网件的Nighthawk、Orbi、CAX系列和CM系列路由器、网关和调制解调器。
  • 对禁令的质疑: 作者指出,禁令旨在限制未来进口的路由器,而非现有设备。作者还质疑FCC对安全标准的关注,因为在批准过程中,FCC并未就路由器安全性能进行任何评估,重点在于其生产地。
  • 网件的声明: 网件在SEC文件中暗示,只要获得有条件批准,就能无限期地更新现有路由器的软件。但FCC明确表示,软件和安全更新无需FCC批准,除非这些更新改变了路由器的无线电性能。 此外,网件首席执行官将禁令描述为旨在加强安全标准,这与FCC的实际做法不符。作者询问网件是否主动提升了安全性能以满足FCC要求,但未收到回复。

总结:

虽然网件获得了FCC的有条件批准,但整个过程存在诸多疑点,包括批准理由模糊、网件未承诺在美国本土设厂、网件对禁令目的的误解等。本文突显了美国外国路由器禁令的复杂性和潜在的逻辑矛盾。

theverge.com | 109 points by HotGarbage at 09:07:19 | 47 comments


H.R.8250 – To require operating system providers to verify the age of any user

美国众议院第119届立法提案8250号:摘要

提案名称: 众议院第119届立法提案8250号

提案发起人: 乔什·戈特海默众议员(新泽西州第五选区,民主党),于2026年4月13日提出。

委员会: 众议院能源和商业委员会。

提案状态: 已提交,目前在众议院能源和商业委员会审议。

提案主要内容:

该提案旨在要求操作系统供应商验证任何用户的使用年龄,并为此目的做出其他规定。

提案行动记录:

  • 2026年4月13日:在众议院提出。
  • 2026年4月13日:提交至众议院能源和商业委员会。

联合发起人:

  • 伊丽斯·M·斯特凡尼克众议员(纽约州第二十一选区,共和党),于2026年4月13日联合发起。

相关委员会:

该提案由众议院能源和商业委员会负责处理。

摘要说明:

该提案的最新摘要信息目前为空。

congress.gov | 109 points by cft at 06:18:55 | 87 comments


Amazon to acquire Globalstar and expand Amazon Leo satellite network

https://www.businesswire.com/news/home/20260414237496/en/Amazon-to-Acquire-Globalstar-and-Expand-Amazon-Leo-Satellite-Network

businesswire.com | 105 points by homarp at 13:54:29 | 80 comments


Gas Town: From Clown Show to v1.0

https://steve-yegge.medium.com/gas-town-from-clown-show-to-v1-0-c239d9a407ec

steve-yegge.medium.com | 104 points by martythemaniak at 03:18:53 | 146 comments


V2EX


[加群领 10U 额度 评论留 ID 再发 5U] ⛽ RootFlow AI — 高性能 AI API 加油站

⛽ RootFlow AI — 高性能 AI API 加油站

🌐 官网:https://api.rootflowai.com/


👥 我们是谁

RootFlow AI 是一个专注于 AI API 中转 的算力平台,提供 Claude 、GPT ( Codex )、Gemini 等主流模型的 稳定接入服务

我们拥有一手上游资源和企业级基础设施,全程 HTTPS/TLS 加密,不存储 Prompt 和响应内容,API 请求实时转发 不落盘

🔍 绝不掺水,支持纯度检测:


🌟 为什么选择 RootFlow AI

1️⃣ 源头资源,稳定可靠

  • 自建多节点集群,CN 直连 + HK 节点双线路
  • 官方直连渠道缓存命中率约 **80%**,低延迟丝滑体验

2️⃣ 开源透明,每笔可查

  • 基于 new-api 源码部署,未改过一行代码
  • 完全开源透明,每笔消耗计费可追溯
  • 充值比例:1 RMB = 1 USD (站内)
  • 消耗倍率见站内分组
  • 价格随上游成本及市场行情波动,调整时提前通知

3️⃣ 充值门槛低

  • 最低 10 元起充
  • 按量计费,无月费、无订阅费
  • 余额 永不过期

4️⃣ 新用户福利

  • 注册即送 10 U 站内额度
  • 本帖评论再送 5 U 站内额度
  • 全模型可用,无门槛直接体验

💰 退款政策

  • 余额随时可退
  • 扣除已赠送额度后 全额退还
  • 对服务不满意,7 天内联系客服处理

🧾 开票说明

  • 累计充值金额 > 500 元可申请开具发票
  • 方便公司报销,具体请联系客服

🤝 企业合作

  • 欢迎企业客户洽谈专属方案
  • 支持独立分组、定制倍率、专属渠道等需求
  • 开放分销合作,有意者请联系客服
  • 上游号商报价合作,长期稳定采购,量大从优

🔒 隐私保护

  • 不存储 Prompt 和响应内容
  • API 请求实时转发,不落盘
  • 全程 HTTPS/TLS 加密

💻 Claude Code CLI 提醒

  • v2.1.78+ 默认启用 1M Context,Token 消耗会显著增长
  • 建议手动切回 200K
/model opus
/model sonnet

🎁 福利领取方式

  • 评论本贴,发 UID ,领取 5U 体验额度
  • 扫描二维码加入官方交流群领 10U 体验额度

扫码加群

148 comments by RyanCui at 10:56:13 in 推广


继续启动! 19 元/月质保整月的 gpt plus!

昨天 V 友们太热情了,给了我这个刚开始搞副业的中年程序员亿点小小的震撼,今天继续上货!

19/r 月,充到自己账号,不共享不中转,质保整月,掉了重新补,补不了的按天退钱,主打一个良心!

小店地址: https://pay.ldxp.cn/shop/JVDCG8IG

TG 群: https://t.me/+FrPczGaCtTVhZTc9

QQ 群:1087590361

94 comments by GaryLee at 08:34:57 in 推广


硕 2 大厂 2 年,想 all in 考公,打算入职江浙沪的小厂做过渡,求建议

先抛问题,感谢 v 站的各位大哥观看,也希望各位能根据自己的经验,给点建议,鞠躬感谢!

  1. 我是否要去这家小厂。还是说自己准备面试去试试外企或者国企
  2. all in 考公是否风险,我需要预防什么,以及我需要怎么做

背景:本硕 985 ,在北京一家大厂做 agent 开发,强度特别大,作息 10 10.30 5 并且涉及一些 agent infra 的工作。连续 2 年都是高绩效,有晋升。

个人想法:对于未来程序员很悲观,特别是大厂升不上去,一直在一线城市的人。而且我是一个特别内耗的人(主要原因),对于 ai 很乐观,对于自己很悲观,对于安稳生活的极度渴望,不要求大富大贵,自己一个人一个月到手 6k 就很满足了,所以才想考江浙的体制内。

现有路径:

  1. 自己已经去年就开始准备考公了,现在粉笔行测模考均能保证 70 分以上,剩下的就看考场状态。但是申论太差了,没有那种体制内的写作灵感,导致每次考试申论的分数都不好看,今年国考和省考都只有 60 出头。所以想找个小厂,能正常下班,专心备考,且能有一定收入,维持日常的生活。
  2. 之前实习有个小厂的老板,人数大概 50 人,主要是 ToG 的业务,去年营收 5k 个。本科实习的时候就特别看好我,我硕士毕业后也一直想让我去他那里工作。前几天重新沟通了,对方也愿意接收我,base 应该 18k ,每天 6 点能下班,一个月大概有 10 天加班到 8 点。做的方向应该就是大模型和 agent 相关了。然后估计会独立负责一块,估计也有点压力。我之前自己都是螺丝钉,负责一小部分,害怕自己接不了这个活。

93 comments by RotkPPP at 13:30:44 in 职场话题


有人会觉得很可怕吗 ,

这么小的孩子,在幼儿园的一举一动都被墙外的家长眼睛盯着, 在没有边界的监视下的成长,会形成怎样的性格,会成为以后怎样的枷锁

90 comments by HammondY5an at 14:20:39 in 生活


Anthropic 宣布在 Claude 平台推行身份验证机制

原文

Anthropic 正在其 Claude 平台逐步推行身份验证机制,当用户访问特定功能或触发常规平台完整性检查时,系统会要求通过第三方合作伙伴 Persona Identities 完成验证以防止滥用、执行使用政策并履行法律义务,用户需提供有效的政府签发证件(如护照、驾照或国民身份证)并拍摄实时自拍。身份验证数据仅用于确认用户身份及合规用途,不会用于模型训练,也不会共享给第三方用于营销。

若验证后发现用户多次违反政策、来自不支持的地区或未满 18 岁,其账号仍可能被封禁。

88 comments by enzocc at 14:12:01 in Claude


科普一下低价 gpt 是怎么来的 说白了就是卡 bug 的灵车。
像新加坡、日本、英国这些地区,有时候会有首月免费试用。Telegram 上有 bot 可以全自动免费帮你开通。你只要把自己的 access token 贴进去,它就帮你操作。原理基本就是 ip 代理到免费试用活动区,拿虚拟信用卡、假地址之类的东西去薅首月试用。
这种东西真不建议碰。先不说稳不稳,光是把自己的 token 交出去这件事就已经很危险了,封号、盗号、隐私泄露都有可能。如果 GPT 确实能给你的生活和工作带来帮助,老老实实付费订阅得了。再说了,低价区一个月也就 70 多,真没必要省这点钱

86 comments by xitler at 13:50:07 in 程序员


求助: Trae 用支付宝免密支付扣了我 7 个月,客服拒绝退款

买了 Trae 月包之后因为工作原因一直没用,结果发现账单里连续被扣了 7 次,时间跨度从去年 10 月到今年 4 月,期间零登录、零使用。 去找客服,对方回复说:

"月包首次购买时默认自动续费,官网定价页和收银台都有说明,不需要可以自行取消。已过期权益暂不支持退款。"

几个问题想问问大家:

扣费方式用的是支付宝小额免密支付,不是 App Store 或微信或支付宝那种订阅制——后者至少扣费前会有明显提醒,免密支付基本是无感扣款 仅靠邮件通知续费,说实话有多少人会认真看账单邮件?这个通知方式本身就是在规避用户感知 官网"有说明"和用户"被有效告知"是两回事,7 个月没用过一次,按理说这钱收得站不住脚

目前客服只愿意退"有效期内"的部分,全额退款被拒。

有没有遇到过类似情况的?通过支付宝投诉渠道或者 12315 有效果吗?

知乎镜像问题:Trae 连续自动扣费 7 个月零使用,客服拒绝退款,这种情况有办法维权吗? - 知乎 https://www.zhihu.com/question/2027676134230247113

描述里有未使用证据

85 comments by op1sreal at 09:10:10 in 全球工单系统


26 岁确诊高血压 要靠药物降血压终身 如题 去年 12 月份进外包之前 入职体检 说我血压有点高最高 高压 180 了
然后体检中心挂了一个号去心血管 挂号 让我去做全面检测
最后住院三天 确证原发性高血压 这个意思是以后要靠靠厄贝沙坦 和美酸托尔缓释片 降血压了
.... 最后告诫大家身体要紧.....

85 comments by lyq1234 at 13:25:26 in 生活


炒股 2 年了,一些感悟。

需要谨慎的是入场的时机

需要理解的是不懂不买

痛苦的是看到黄金坑但是没子弹

最难的是确认什么时候止盈

这两年收益率刚刚到 100%,已经斩仓,虽然目前大势很好,还是决定减仓,暂时离场一段时间。

84 comments by GeekGuru at 10:49:31 in 投资


税没白交,中科院的这个数据胶囊简直太酷了

https://data.cstcloud.cn/

虽然这个网页的审美有点 old money

但我宣布,免费的跨平台最好用的个人笔记知识库+全平台( mac ,win ,ios ,Android )最好的解决方案就是 obsidian➕中科院数据胶囊 这玩意儿简直太强了,之前用 obsidian 还嫌跨平台麻烦,obsidian 的云又贵又不稳

个人永久免费 20gb+不限速简直太帅了[ 今年 2 月才开始的,有需要的赶紧薅羊毛

83 comments by zanxiongfeng at 11:44:51 in 分享发现


替尔泊肽,一个月减掉 20 斤

3 月 17 号晚上打第一针 减 9 斤 3 月 25 号晚上打第二针 没懂,出差正常吃 4 月 2 号晚上打第三针 减 12 斤 4 月 11 号晚上打第四针 截止 4 月 15 号,已经减 20 斤了

原体重 100 公斤,目前 90 公斤,耗时一个月

78 comments by adminpro at 09:28:32 in 生活


VBCode 回帖抽 20 刀余额, 共计 50 份, 新用户进群送 5 刀体验额度. Codex plus/pro 号池 0.12 倍率

VBCoding 中转站

官方地址


⚡ 当前可用服务

1️⃣ codex-to-claude 官方 plus/pro 账户号池

  • 倍率:0.12
  • 20 刀约等于 166.7 刀可用额度

2️⃣ codex / gpt 官方 plus/pro 账户号池

  • 倍率:0.18
  • 20 刀约等于 111.1 刀可用额度

抽奖活动 - 无任何套路

  1. 在本帖回复你的注册 ID (👉 个人设置查看 https://vbcode.io/console/personal ),例如:ID: 123

奖品

20 美刀余额 * 1 。共计 50 份

⏰ 截止时间

2026 年 4 月 17 日 15:00


抽奖规则

  1. 取当日 A 股沪指收盘点位整数部分,记为 S
  2. 取 15:00 前的楼层总数 N
  3. 依次计算中奖楼层:(S + k × 7) % N( k = 0, 1, 2, ...)
  4. 若中奖楼层的用户已中奖,则向下顺延至下一位未中奖用户的楼层
  5. 若抽到楼主楼层,则同样向下顺延
  6. 直到选出 50 位不同用户,每人获得 20 美刀余额

步长取质数 7 ,使中奖楼层分布更均匀,结果完全可验证。


示例

假设沪指收盘 3500 点,楼层总数 300:

序号 计算 楼层
1 3500 % 300 200 楼 ✅
2 3507 % 300 207 楼 ✅
3 3514 % 300 214 楼 ✅
... ... ...

若某楼层用户已中奖,则顺延到下一位未中奖用户,直到选满 50 人。

70 comments by vla at 10:25:11 in 推广

Built With ❤️ by jiacai2050/mofish.
 
Reply all
Reply to author
Forward
0 new messages