每日HackerNews RSS

受一篇建议开发者避免在 CMake 中编写复杂工具的教程启发,作者决定通过用 Brainfuck (BF) 编写光线追踪器,来探索“最简单”的编程语言。 BF 是一种图灵完备的语言,仅包含八个指令和一个无限长的存储单元带。为了克服该语言的极端局限性,作者实现了一套带符号的 Q16.16 定点算术系统来处理非整数,并开发了一条类似编译器的流水线。该流水线将类似 C 语言的逻辑转换为中间表示,将变量映射到特定的 BF 内存地址,并使用手动长除法和重复加减法算法实现了乘法、除法和平方根等基本运算。 最终生成的程序大小为 23MB,远大于其生成的 0.9MB 图像,且运行速度极慢,最初预计渲染单张 400x225 的图像需要两个多月。尽管存在这些限制,该项目仍成功渲染出了具有极小精度误差的近似结果。随后对即时(JIT)解释器进行的优化大幅提升了性能,这表明即使是最深奥的语言,在投入足够的(尽管是不切实际的)工程努力后,也能完成复杂的计算任务。

一位开发者分享了他的项目“Brainfuck 光线追踪器”,在 Hacker News 上引发了技术讨论。虽然该项目使用了 Brainfuck 语言,但用户指出,代码并非手写而成;开发者构建了一个编译器流水线,将 C 代码翻译为特定领域语言(DSL),最终生成了约 22MB 的 Brainfuck 代码。 讨论集中在这种抽象的优劣上。批评者认为,通过算法生成的 Brainfuck 代码通常因过度的数据移动和重复的内存单元清零而效率低下。专家贡献者指出,目前的设计使用了固定内存地址,这使得该语言沦为有限自动机,而非发挥其图灵完备的潜力。 作者承认了这些局限性,并表示该项目旨在实践第一性原理的编译器设计,而非进行性能优化。讨论还涉及了未来的改进方向,例如在 DSL 中实现编译器自举,以及通过更先进的内存管理来减少冗余操作。总的来说,社区对该项目的技术抱负以及作者在方法论上的坦诚表示赞赏。

**HomelabFest 2027** 是面向自托管、家庭网络、数字隐私及硬件折腾爱好者的顶级盛会。本次活动将于 **2027 年 9 月 12 日至 14 日** 在密苏里州圣查尔斯的圣查尔斯会议中心举行,旨在汇聚社区力量,共同庆祝从迷你设备到全尺寸服务器机柜的各类软硬件配置。 参会者将有机会与志同道合的爱好者交流,向受邀内容创作者学习,并探索家庭基础设施领域的最新技术。 **注册现已开放**,早鸟票售价 125 美元(优惠截至 11 月或售完即止)。活动地点距离机场仅 10 分钟路程,并与 Embassy Suites 酒店直接相连,为外地宾客提供便利的住宿条件。 无论您是经验丰富的专家还是刚刚搭建首个家庭实验室的新手,本次活动都为您提供了一个分享知识、共庆自托管世界的独特平台。欲了解更多日程安排、赞助商信息或预订门票,请访问 HomelabFest 官方网站。

对不起。

有用、困惑,还是缺少了什么?我很乐意听听您的意见。 您的反馈 邮箱(选填,用于回复) 网址 您的反馈是私密的。您的邮箱仅用于回复,绝不会用于为您订阅新闻通讯。 发送反馈

抱歉。

丹佛国际机场(DIA)于1995年启用,以其自动化行李处理系统的惨败而臭名昭著。该项目构想于20世纪80年代,旨在解决老旧的斯特普尔顿机场(Stapleton Airport)的容量限制问题,但整个工程却深受政治博弈、施工中途的设计变更以及缺乏航空公司协作等问题的困扰。 为了实现宏大的“枢纽辐射式”效率目标,该市斥资委托建造了一个全系统覆盖的自动化行李网络,使用一种名为“Telecar”的装置——即由复杂软件控制、在轨道上运行的小型运载车。然而,该系统在建造时缺乏充分的模拟测试,也没有制定“B计划”。在测试期间,这项技术频繁故障,不仅经常损坏行李、丢失物品,还导致了严重的物流堵塞。这些备受瞩目的灾难性故障导致机场的开业时间推迟了16个月。 最终,该市改用传统的“拖车加人工”系统才得以使机场投入运营。这个耗资数百万美元的失败自动化系统,由于其庞大且神秘的地下基础设施,成为了各种阴谋论的主题,并最终在2005年被彻底弃用。如今,这场行李处理系统的惨剧已成为工程狂妄自大以及在大型基础设施项目中忽视运营现实所带来危险的经典案例研究。

抱歉。

研究人员开发出一种“隐形眼镜实验室”,能够以非侵入性方式监测泪液中的血清素水平,为客观追踪压力水平提供了潜在的突破。与仅能提供孤立快照的抽血检测不同,这种可穿戴平台有望实现连续、实时的生化监测。 该装置由嵌入石墨烯和银电极的柔软灵活水凝胶镜片组成。它具有极高的灵敏度,即使在反复拉伸和折叠后,仍能检测到微量的血清素。在包括人造泪液和活体受试者的初步测试中,该镜片成功追踪了与压力相关的血清素波动,且未引起眼部不适。 虽然当前版本仍需外部连接,但研究团队正在开发一种可通过 NFC 将数据传输至智能手机的无线无电池原型。专家强调,这是迈向连续分子生物传感的重要转折。尽管还需要进一步研究以了解泪液化学成分如何与血液生物标志物及个人健康相关联,但该技术旨在为人们的生理和情绪状态提供一个全面、可穿戴的观测窗口。研究结果近期发表在《科学转化医学》期刊上。

抱歉。

为了构建一个可加密验证的操作系统,**tine** 的开发者发现现有的工具(如 mkosi、OBS 和 BuildStream)在灵活性、依赖管理或引导(bootstrapping)方面存在局限性,无法满足需求。因此,他们构建了 **tine**,这是一个基于 Meta 公司 **Buck2** 的全新构建系统基础。 **tine** 的设计旨在提供: * **极简需求**:仅需 `git`、`python3` 和用户命名空间(user namespaces)。 * **可复现性**:使用“沙盒”(hermetic,即隔离且固定的环境)和哈希处理,确保每次构建在比特层面都是可复现的,并支持缓存。 * **单体仓库(Monorepo)集成**:无需复杂的依赖声明,即可在 Go/Rust 组件和操作系统镜像之间实现快速迭代。 * **灵活性**:支持自定义组件、原生镜像构建(如 UKI、可引导磁盘)以及 SBOM 生成等原生安全功能。 通过利用 Buck2 基于 Starlark 的配置和内容寻址缓存,tine 为管理复杂的操作系统项目提供了一种稳健的方法。它使开发者能够在统一的环境中定义构建任务、编译代码并生成已签名的可引导镜像,同时保持对输入和基础设施的完全控制。

这篇 Hacker News 讨论探讨了为何“Tine”构建系统选择使用 **Buck2** 而非 **Nix**。参与者针对 Nix 生态系统的优缺点进行了辩论,主要议题包括: * **Nix 的局限性:** 批评者认为 Nix 在细粒度缓存方面速度缓慢,缺乏清晰的文档,且实际上被“束缚”在庞大的 `nixpkgs` 中,这往往会对运行时环境强加过多预设。 * **选择 Buck2 的理由:** 用户指出,Buck2 能更好地支持基于现有上游分发产物进行构建,而无需对整个世界进行“重新打包”。它与使用 `sysexts` 的系统更为契合,并避免了 Nix Store 链接模型的复杂性。 * **嵌入式构建的复杂性:** 讨论集中在为不同硬件(如 Rockchip/ARM)创建可启动镜像(rootfs)的难度上。虽然有人认为 Nix 可以处理这些问题,但另一些人指出,在管理复杂的厂商特定 BSP 层及非标准启动流程方面,Yocto 等工具仍然更具优势。 * **用户体验:** 许多用户将 Nix 的体验比作“密室逃脱”——既难以掌握又容易出现晦涩难懂的错误,这导致一些人更倾向于使用更简单、更专业的工具。

傅里叶变换是一种将信号从时域转换为频域的数学方法,常用于音频处理、图像压缩和滤波。 这一概念的一个迷人应用是利用本轮(即圆周运动的向量)来“绘制”复杂的形状,如动物或符号。通过计算连续路径的傅里叶系数,可以将任何封闭曲线表示为旋转向量之和。每个圆都对应一个特定的频率、半径和相位。 该过程包括: 1. **采样:** 将路径(例如来自 SVG 的路径)转换为一系列点。 2. **变换:** 对这些点应用离散傅里叶变换(DFT)以找到频率分量(系数)。 3. **重构:** 使用这些系数来设定相连圆的半径和旋转速度。 由此产生的“有序混沌”圆圈展示了任何形状都可以通过增加更多频率(圆圈)来近似。随着圆圈数量的增加,重构的路径会越来越接近原始输入。归根结底,这证明了复杂的物理形状可以被分解为一系列更简单的周期性圆周运动。

抱歉。

🛡️ 快速检查 我们正在检查您的连接以防止自动滥用 为什么我会看到这个? 遇到问题?联系支持人员

抱歉。

拒绝访问。你没有权限访问该服务器上的“http://thereader.mitpress.mit.edu/the-bizarre-murky-history-of-soviet-born-tetris/”。参考编号 #18.d2753617.1790422974.ee16766b https://errors.edgesuite.net/18.d2753617.1790422974.ee16766b

这篇 Hacker News 讨论批评了一篇关于《俄罗斯方块》“模糊”历史的文章,评论者对作者提出的多项观点提出了质疑。 争议的焦点包括: * **术语使用:** 用户质疑作者使用“萨米兹达特”(samizdat,通常指被审查的政治文本)来描述电子游戏的传播,指出在苏联,软件的流通更多是基于非正式渠道而非政治目的。 * **历史准确性:** 贡献者认为该文章过分渲染了克格勃的介入以及开发《俄罗斯方块》的研究实验室的“封闭性”。 * **作者身份与剥削:** 讨论重点关注了瓦迪姆·格拉西莫夫(Vadim Gerasimov),他在青少年时期参与了游戏的共同开发,但在后来利润丰厚的授权谈判中被阿列克谢·帕基特诺夫(Alexey Pajitnov)边缘化。格拉西莫夫本人的陈述为版权整合过程提供了更复杂的叙事。 * **文化背景:** 评论者认为《俄罗斯方块》的真实故事并非冷战间谍惊悚片(这是近期电影改编中使用的手法),而是一系列混乱的授权失误与官僚博弈,大卫·谢夫(David Sheff)的《游戏结束》(Game Over)一书对此有更准确的记录。 总而言之,社区认为该文章是一个过度简化、戏剧化的叙事,掩盖了苏联软件开发在技术和法律层面的真实情况。

本项目详细记录了将第三代 iPod Nano (n3g) 的存储空间升级至 16GB 的多年努力。由于 n3g 固件并不原生支持现代 NAND 闪存芯片,作者不得不对 iPod 未公开的硬件和软件进行逆向工程。 主要挑战包括:克服 NAND 写保护、解析复杂的未文档化字节码指令集(FMISS,用于 NAND 通信),以及排查由页面几何结构不匹配导致的“bdhw”(硬件故障)错误。作者成功实现了一个 2:1 的转换桥接方案,使 iPod 能将 8KiB 的物理页面识别为 4KiB 的逻辑块。 在经历了 UI 内存池溢出、空页面 ECC 处理错误以及文件系统损坏等重大挫折后,作者通过对 EFI、磁盘模式(Disk Mode)及 RetailOS 驱动程序的仔细修补,实现了设备的稳定运行。通过使用自定义 QEMU 模拟器进行补丁迭代,作者最终获得了一台功能完备的 16GB iPod Nano。该项目是深入逆向工程的典范,所有研究成果与代码均已发布在 GitHub 上,供爱好者社区参考。

近期 Hacker News 上一篇关于升级 16GB iPod Nano 3G 的文章引发了热议,掀起了一股对专用音乐播放器的怀旧浪潮。用户们深切怀念 Nano 和 Shuffle 等设备带来的简洁体验,并将其与现代智能手机“掠夺注意力”的特性进行了对比。 许多评论者认为,对于一款配备物理转盘、大容量存储和长效续航的现代化周年纪念版 iPod,市场虽小但充满热情。尽管参与者承认此类项目可能无法满足苹果的商业需求,但一些人指出,小型制造商(如海贝音乐 HiBy)已经成功满足了那些追求“无干扰”音频体验的用户需求。 讨论还涉及了修复老旧硬件所面临的技术挑战。多位爱好者分享了他们在 NAND 闪存升级、定制 PCB 设计以及寻找遗留零件方面的经验。归根结底,这场讨论凸显了人们日益强烈的愿望——即摆脱现代订阅制移动应用的生态束缚,回归那种能够通过指尖触感、精心策划个人音乐库的纯粹体验。

更多

联系我们 contact @ memedata.com