每日HackerNews RSS

```diff --- a/src/auth/login.ts +++ b/src/auth/login.ts @@ -12,6 +12,18 @@ +export function validateToken(token: string) { + const decoded = jwt.verify(token, SECRET); + if (!decoded.exp || decoded.exp < Date.now() / 1000) { + throw new TokenExpiredError(); + } + return decoded; +} + @@ -24,8 +36,10 @@ export async function authenticateUser( - const user = await db.findUser(email); - if (!user) return null; + const user = await db.findUser(email); + if (!user) throw new UserNotFoundError(); + await rateLimiter.check(email); @@ -45,12 +59,0 @@ -export function legacyAuth(user, pass) { - return db.query('SELECT * FROM users - WHERE email = ? AND password = ?', - [user, pass]); -} ```

**Sem** 是一款全新的开发工具,旨在通过将代码库映射为实体(函数、类、方法)的依赖关系图,而非将其视为扁平文本,从而提升代码理解能力。Sem 基于 tree-sitter 构建,能够提供结构化的“爆炸半径(blast radius)”分析,从而精准识别代码变更所影响的具体组件和测试。对于大型、复杂的代码库而言,它比传统的基于行的 `grep` 或 `git diff` 效率更高。 Hacker News 讨论中的重点摘要: * **代理能力 (Agentic Power):** 开发者认为 Sem 是 AI 代理的关键“支撑”,它为代理提供了清晰的代码关系图,相比原始的行差异(line diffs),这能更有效地约束和验证模型输出。 * **性能:** 得益于 SQLite 缓存优化,Sem 能够在几秒钟内对拥有 10 万个文件的单一代码库(monorepo)进行影响分析。 * **集成:** 尽管部分用户对安装过程——特别是对 `git diff` 的“劫持”感——表示不满,但作者澄清 Sem 是一个独立的工具,并提供了用于恢复的 `unsetup` 命令。 * **愿景:** 该项目旨在推动代码审查和理解超越“历史偶然”产生的行级差异(line-level diff),提供一种更合乎逻辑、基于实体的代码演进视图。

本文详细介绍了一种稳健且与架构无关的方法,用于反虚拟化受 Themida 等虚拟机保护程序保护的代码。 作者没有依赖脆弱的模式匹配,而是利用“引导式符号执行”(Guided Symbolic Evaluation)将原生指令提升为简洁的中间表示(IR)。通过保持堆栈指针(RSP)的具体值,并使用一系列相互关联的优化遍历——包括常量提升、常量折叠、无效存储消除和指令组合——虚拟机内部的“脚手架”(如字节码解密和处理程序分发逻辑)被系统性地瓦解。 该过程旨在持续运行,直到 IR 收敛为清晰的类原生状态,随后将其降级回可执行的机器码。这种方法的关键在于通过跟踪虚拟指令指针(VIP)并准确识别 VMEXIT 模式来处理虚拟化控制流。最终输出的代码与原始功能代码几乎是一一对应的,避免了不必要的堆栈溢出等常见缺陷。文章最后指出,对于反虚拟化而言,通用的编译器优化比针对特定虚拟机的逆向工程更有效且更具可持续性;同时也承认,先进的混淆器必须实现更复杂、不可约简的表达式,才能抵御这些现代符号执行技术的攻击。

抱歉。

几十年来,大学学位曾是抵御失业的可靠屏障,确保应届毕业生在就业市场上的表现优于普通劳动力。然而,这一优势已逐渐减弱;自2019年初以来,应届毕业生的失业率一直高于整体劳动力,这一差距在2026年达到了历史新高。 值得注意的是,这种转变先于疫情和生成式人工智能的兴起,这表明这是一场长期的结构性变化,而非突发冲击。专家指出主要有两个原因:远程办公的普及限制了缺乏经验的新人获得必要的职场指导,以及人工智能对入门级职位的冲击。 关键在于,这是一场入门级职位的危机,而非学位本身的贬值。年长的学位持有者仍保持着较高的就业率,毕业生的境况也依然好于没有学位的年轻人。虽然学士学位仍具有显著的长期价值,且优于没有学位的情况,但它不再是就业的捷径。人才进入职场的传统“通道”实际上已经中断,使得从学校向职场的过渡变得比近期历史上任何时候都更加困难。

这次来自 Hacker News 的讨论探讨了美国劳动力市场的近期转变:应届大学毕业生的失业率现已高于普通劳动者,这偏离了历史趋势。 评论者强调了导致这种不稳定的几个系统性因素: * **经济排斥:** 许多人认为,住房短缺和分区政策创造了一种环境,使财富从年轻一代流向了既有的房主,导致理想的就业市场变得极其昂贵,令人望而却步。 * **“学历通胀”陷阱:** 人们普遍认为,社会过分夸大了学士学位的价值,导致了“参与奖杯”式的教育和行政臃肿,同时消除了入门级的培训渠道。 * **市场转型:** 讨论涉及了全球化、远程办公(使国内毕业生面临国际竞争)以及对人工智能和外包的日益依赖所带来的影响,这些因素进一步降低了公司招聘和培训初级员工的意愿。 * **社会幻灭:** 一些参与者表达了对现代就业“永远失望”这一现实的深切沮丧,指出年轻人进入的是一个“梯子已被抽走”的系统,这导致了“躺平”或反建制情绪的兴起。 归根结底,用户认为,如果没有经济适用房和重振的入门级就业市场,学位的价值将持续下降。

本文介绍了如何在 PyTorch 模型中实现并集成自定义 C++/CUDA 算子,并确保其与 `torch.export` 和 AOTInductor 编译流程兼容。 **核心内容包括:** * **自定义函数:** 使用 C++/CUDA 实现并通过 `TORCH_LIBRARY_IMPL` 注册,使 PyTorch 能够根据输入设备分发算子。 * **自定义类:** 使用 `torch::CustomClassHolder` 定义,支持在 Python 中调用具有状态(存储参数)的模块。 * **符号追踪兼容性:** 为支持 `torch.export` 和 AOTInductor,开发者必须为这些算子注册“假”(抽象)版本。这使得符号追踪器能够在不实际执行 C++/CUDA 内核的情况下理解算子逻辑。 * **部署:** 编译后的模型可打包为 `.pt2` 格式。该产物具有可移植性,支持在 Python 和独立 C++ 环境中进行高性能推理(通过 `dlopen` 加载自定义算子库)。 遵循此工作流程,开发者可以将自定义 C++/CUDA 内核的高性能与 PyTorch 现代导出及编译工具链的可移植性相结合,从而确保在多种推理运行时中实现无缝执行。

抱歉。

请启用 JavaScript 和 Cookie 以继续。

《科学》杂志最近刊登了一篇关于远程办公对心理健康影响的文章,在 Hacker News 上引发了巨大争议。该论文得出的结论是:远程办公增加了孤独感,并加剧了心理健康问题,尤其是在独居人群中。 然而,批评者认为这项研究存在根本性缺陷。主要的争议点包括: * **方法论薄弱:** 质疑者指出,该研究比较的是广泛的职业类别(如软件工程与护理),而非专门比较远程与办公室工作者,未能控制行业特定的压力源。 * **混杂因素:** 评论者指出,后疫情时代伴随着大规模的科技行业裁员、经济焦虑和社会规范的转变,而研究可能错误地将这些因素归咎于远程办公。 * **测量偏差:** 批评者认为,远程办公人员在心理健康护理和抗抑郁药物使用方面的“增加”,可能反映了他们拥有更好的医疗保险渠道以及参加心理治疗的灵活性,而非健康状况的恶化。 * **主观体验:** 许多用户分享了个人经验,认为远程办公消除了有毒的办公室环境和耗费精力的通勤,让他们能够在工作之余建立更有意义的社交生活,从而改善了心理健康。 总体而言,社区大多认为这篇论文存在偏见,是旨在为“重返办公室”议程提供论据的“伪科学”。

通用内存协议 (UMP) 旨在解决人工智能体 (AI agent) 内存碎片化的问题,目前这些内存分散在各类工具、厂商和本地文件中,彼此割裂。虽然现有的 MCP (工具) 和 A2A (协调) 等标准已能处理交互,但 UMP 提供了一个标准化的、中立于厂商的内存层。 UMP 将内存视为可移植的、经过签名的、具有双重时间属性的 JSON 记录。它作为应用层协议运行,利用现有的传输方式 (如 MCP、HTTP),并与包括本地文件、SQL 数据库和向量引擎在内的现有存储方案集成。通过使用 UMP,开发者可以将项目笔记、Obsidian 知识库和智能体日志等分散数据统一为一种可互操作的格式。 主要功能包括: * **可移植性:** 数据由用户所有,基于内容寻址,并使用分布式标识符 (DID) 进行签名。 * **兼容性:** 作为现有格式 (例如 `CLAUDE.md`) 的桥梁,无需进行数据库迁移。 * **安全性:** 内置防提示词注入保护和明确的数据保留策略。 * **灵活性:** 将内存协议与底层智能分离,允许不同的引擎在质量上展开竞争,同时保持完全的互操作性。 UMP 使智能体能够跨会话和厂商进行“记忆”,无需在每次切换工具或环境时重新加载上下文。

关于“通用内存协议”(Universal Memory Protocol,简称 UMP)——一种拟议的智能体内存共享格式——的 Hacker News 讨论中,大多数观点持怀疑态度。作者 @edihasaj 旨在通过 UMP 提供一种用户所有、供应商中立的跨工具互操作标准,以解决内存碎片化问题。 批评者将该项目斥为“大模型垃圾(LLM slop)”,认为它缺乏验证其有效性所需的实证数据、基准测试或工程严谨性。许多评论者指出,简单文件系统结构(如 Markdown 文件)或 Anthropic 的模型上下文协议(MCP)等现有的行业支持标准已经能够妥善处理这一问题。 这场辩论还触及了“人工智能生成”项目公告的广泛趋势,参与者对那些缺乏市场采用或明确技术优势的“理念先行”型协议的兴起表示不满。支持者则辩称,早期阶段的实验是快速发展领域中的自然组成部分,并认为即使 UMP 目前存在缺陷,这种标准化智能体内存的努力也确实解决了开发人员面临的痛点。总的来说,共识在于,如果缺乏重要的行业支持或经证实的性能提升,该协议在获得相关性方面将面临严峻挑战。

本文详细介绍了一个团队针对 AWS Lambda 在托管 ONNX 模型时出现持续“内存溢出”(OOM)错误的排查过程。 起初,团队试图通过缩小 `lru_cache` 来解决内存增长问题,但这反而加速了 OOM 的发生。他们发现,Lambda 报告的 `@maxMemoryUsed` 指标是执行环境的“历史最高值”(high-water mark),而非单次调用的指标,因此用它来检测内存泄漏具有误导性。 真正的罪魁祸首是 `glibc` 的内存囤积机制。由于 ONNX Runtime 使用了多线程,`glibc` 创建了多个内存池(arenas),即使在调用 `free()` 后仍不释放已分配的内存。通过将 `M_MMAP_THRESHOLD` 从 128 KB 调整为 32 KB,团队强制分配器更积极地将内存归还给操作系统,从而使囤积的内存减少了 97%。 **关键点:** * `@maxMemoryUsed` 并非单次调用指标,而是累积的历史峰值。 * RSS 指标可能具有误导性,因为分配器通常会“囤积”已释放的内存。 * 应使用 `mallinfo2()` 查看实际的堆内存使用情况。 * 在 Lambda 环境中,调整 `mmap` 阈值是一种以轻微延迟为代价,显著降低内存占用的有效方法。

抱歉。

融入您的视频编辑工作流程:ntsc-rs 不仅提供独立程序和网页版,还可作为 After Effects、Premiere 以及所有兼容 OpenFX 的软件插件使用。这包括 DaVinci Resolve、Hitfilm 和 Vegas。

**Ntsc-rs** 是一款用于模拟模拟电视和 VHS 伪影的开源工具。它的发布在 Hacker News 上引发了关于技术、美学与怀旧之间联系的热烈讨论。 许多评论者引用了布莱恩·伊诺(Brian Eno)的理论,即某种媒介曾经被视为“丑陋”的缺陷与局限,最终会成为其标志性特征,并受到后代的追捧。虽然一些用户将这种模拟视为现代电影制作的创意工具,但另一些人(尤其是那些曾在广播行业工作过的人)却对这种对 VHS 伪影的推崇感到困惑。他们认为,VHS 当初只是低质量的消费级折衷产物,而真正高带宽的模拟广播信号才拥有独特的、纯正的美学,这是数字显示技术难以复制的。 这场争论凸显了一个更广泛的文化趋势:渴望找回“简单”时代的感觉。对于年轻一代来说,这些瑕疵引发了对他们未曾经历过的时代的怀旧之情;而对于年长的用户来说,这则是美好回忆与过去处理不可靠模拟技术时所带来的职业创伤的复杂混合体。归根结底,该项目强调了我们对“质量”的认知是流动的,往往由当时可用技术的局限性所决定。

Meta 已证实,Instagram 人工智能辅助账户恢复系统中的一个漏洞导致黑客劫持了超过 20,000 个账户。此次漏洞持续时间从 4 月中旬一直到本周,源于一个编程缺陷:系统未能验证请求重置密码的电子邮件是否与目标账户所关联的地址匹配。 通过利用此漏洞,黑客诱骗人工智能聊天机器人将密码重置链接发送到未经授权的电子邮箱,前提是受害者未启用双重身份验证。这使得攻击者能够完全控制账户,并可能获取私人信息、联系方式和个人资料数据。 对此,Meta 已禁用该人工智能聊天机器人并移除了存在漏洞的代码路径。该公司目前正在审查其其他人工智能工具以防止类似攻击,并已指示受影响的用户重置密码并重新验证账户。尽管 Meta 表示尚不清楚在此次泄露事件中被访问的个人数据的具体范围,但该事件凸显了该公司在积极推进人工智能整合过程中存在的重大安全疏忽。

Meta 近期证实,其人工智能聊天机器人存在安全漏洞,导致超过 20,000 个 Instagram 账户被盗。黑客利用该系统的密码重置请求漏洞进行攻击;由于后台验证流程存在缺陷,系统未能核实请求的电子邮件地址是否与目标账户关联。这使得未经授权的人员能够劫持账户并获取个人数据,包括私信、出生日期和联系方式。 此次事件在 Hacker News 上引发了强烈反弹。批评者嘲讽了 Meta 的官方声明——尽管发生了安全漏洞,Meta 仍声称其 AI 工具“运行正常”——并将此比作“手术很成功,但病人死了”这类表述。 许多用户认为,Meta 依赖“凭感觉编码”的 AI 来替代人工客服,造成了危险的攻击面,并指出受害者往往没有渠道联系人工来恢复账户。此次泄露事件加剧了关于企业责任、仓促实施 AI 的风险以及 GDPR 相关法律后果的持续争论。许多评论者强调,这凸显了一个更广泛的系统性问题:为了追求 AI 驱动的自动化,企业未能以必要的严谨态度对待安全。

更多

联系我们 contact @ memedata.com