2024-10-16 Hacker News Top Stories #
- Web 浏览器工程:本书介绍了如何从零开始构建一个基本但完整的 Web 浏览器,涵盖了从网络请求到 JavaScript 的所有方面。
- 谷歌承诺购买核能初创公司 Kairos Power 生成的电力:谷歌将支持在美国建造七座小型核电反应堆,用于供电于人工智能相关的业务,同时推动美国核能复兴。
- 最酷炫的 Deal With It 表情符号生成器:这个网页是一个在线工具,用于生成"GIF emoji",用户可以上传自己的图片或输入图片网址,工具会使用人工智能模型进行面部检测,并生成一个带有"GIF emoji"效果的动画图像。
- 网络体验的现状:这个网站模拟了一系列的当下网络访问的现状:搜索,然后从展示的结果中找到自己感兴趣的文章,点击之后,就是一系列的“离奇”操作的开始。
- 钢制栗子冠军被指控作弊后被判无罪:世界坚果锦标赛男子冠军大卫·雅金斯因携带钢制坚果被指控作弊,但经过调查后被判无罪。
- 血压测量中的常见错误:研究发现,常用的手臂位置可能会大大高估血压读数,导致高血压的误诊。
- 常规牙科 X 光检查没有证据支持:美国牙科协会并不推荐每年进行常规牙科 X 光检查,事实上,ADA 的指南从 2012 年开始就不再推荐成年人进行年度 X 光检查。
- Gettiers 在软件工程中的应用:这篇文章讨论了哲学家 Edmund Gettier 在 1963 年发表的一篇三页论文对软件工程的影响。
- C23 版本的《现代 C 编程》现已可供免费下载:C23 版本的《现代 C 编程》现已可供免费下载,新版增加了对整数的支持,包括新的位精确类型、新的 C 库头文件、对 128 位类型的支持以及对枚举类型的改进。
- Zamba2-7B 语言模型发布:Zyphra 公司发布了 Zamba2-7B 语言模型,宣称其在质量和性能方面超越了目前领先的 7B 模型。
Web Browser Engineering (2021) #
https://browser.engineering/index.html
本书是关于 Web 浏览器工程的,介绍了如何从零开始构建一个基本但完整的 Web 浏览器,涵盖了从网络请求到 JavaScript 的所有方面。
书中共分为四个部分,分别是加载页面、查看文档、运行应用程序和现代浏览器。每个部分都详细介绍了浏览器的工作原理,包括下载网页、解析 HTML 和 CSS、处理用户输入等。同时,书中还讨论了现代浏览器的特性,如添加视觉效果、调度任务和线程、动画和合成等。最后,书中还总结了未涉及的内容,并对 Web 浏览器的发展趋势进行了展望。
本书适合对 Web 浏览器感兴趣的读者,尤其是那些想深入了解浏览器工作原理的开发者和技术爱好者。通过阅读本书,读者可以了解到 Web 浏览器的内部工作机制,并对现代 Web 开发有更深的理解。
HN 热度 634 points | 评论 103 comments | 作者:MrVandemar | 14 hours ago #
https://news.ycombinator.com/item?id=41846780
- 布局是网页工程中非常困难的部分,尤其是 CSS 2 的核心部分设计不合理,导致很多奇怪的特性相互作用
- 视频解码已经由硬件接管,因此对电池的消耗不如以前严重
- Servo 源代码展示了实现生产级别的 CSS 布局需要大量的代码,但这是可以做到的,CSS 有其逻辑性
- CSS 布局的复杂性在于不同布局模块可以以各种方式嵌套,导致模块间交互复杂
- 有人希望有一种比 CSS 更简单的布局语言,但目前大多数人还是选择使用 CSS3 或回到纯文本
- React Native 中只提供了 flexbox 布局,人们对此相当满意,尽管有些人希望有 grid 布局
- CSS 风格的布局有其优缺点,但在不同分辨率、不同设备上布局大量元素时,没有明显优于 CSS 的替代方案
- 绝对像素定位在不同分辨率的显示器上表现不佳,而使用约束编程布局大量控件时也会出现问题
- 一些开发者更喜欢 iOS 的约束布局,认为它在小设备上表现良好,且不需要使用间隔符
- 有人怀念使用 VB 进行像素定位布局 UI 的简单性
- 一个简单的布局系统可以显著提高绘制和滚动的速度,尤其是在功能手机浏览器上
Google commits to buying power generated by nuclear-energy startup Kairos Power #
https://www.wsj.com/business/energy-oil/google-nuclear-power-artificial-intelligence-87966624
谷歌将支持在美国建造七座小型核电反应堆,这是一个首次尝试的交易,旨在满足该科技公司对电力的日益增长需求,以供电于人工智能(AI)相关的业务,同时推动美国核能复兴。根据协议条款,谷歌承诺购买由核能初创公司 Kairos Power 建造的七座反应堆所产生的电力。该协议的目标是在 2030 年底之前新增 500 兆瓦的核电。
这一合作不仅是谷歌在能源领域的重要举措,也显示出科技公司对于可持续能源和清洁电力的关注。随着人工智能技术的发展,数据中心的电力需求不断上升,传统的能源供应方式难以满足这种增长,因此,探索核能作为一种可靠的电力来源显得尤为重要。
HN 热度 563 points | 评论 497 comments | 作者:atomic128 | 1 day ago #
https://news.ycombinator.com/item?id=41840769
- 谷歌与 Kairos Power 签订协议,购买小型模块化核反应堆产生的电力,计划 2030 年前上线首个反应堆,2035 年前部署更多反应堆,提供 500 兆瓦的 24/7 无碳电力。
- Kairos Power 的 Hermes 反应堆设计基于 1960 年代的熔盐反应堆实验,采用常压运行,可能显著降低建设成本。
- 历史上的熔盐反应堆实验中,反应堆容器因裂变产物碲而变脆,这是已知问题,而非意外。
- 熔盐反应堆(MSR)的研发和商业化需要巨额资金,且面临诸多技术挑战,如容器腐蚀和裂变产物管理。
- 现代压水堆(PWR)同样具备被动安全性,且铀资源并不稀缺,现有燃料再处理技术已成熟。
- 太阳能、风能和钠离子电池技术已相对成熟,可能不需要额外大量投资和研发。
- 钠离子电池在实践中比锂离子电池便宜,但能量密度较低,未来可能通过技术改进提高能量密度。
Show HN: I built the most over-engineered Deal With It emoji generator #
https://emoji.build/deal-with-it-generator/
这个网页是一个在线工具,用于生成"GIF emoji"。用户可以上传自己的图片或输入图片网址,工具会使用人工智能模型进行面部检测,并生成一个带有"GIF emoji"效果的动画图像。
用户可以调整一些参数,如循环次数、帧延迟、最大尺寸等。网页还提供了一些示例图片,用户可以直接使用这些图片来生成"GIF emoji"。整个过程都在浏览器中完成,工具的源代码也公开在 GitHub 上。
HN 热度 537 points | 评论 110 comments | 作者:klimeryk | 11 hours ago #
https://news.ycombinator.com/item?id=41848150
- 这个项目展示了未来互联网的可能性,设计酷炫,使用机器学习来放置表情符号眼镜,完全没有商业广告的感觉
- 项目虽然功能强大,但所有复杂的工作都在客户端完成,服务器仅提供静态资源
- 作者分享了一个有趣的代码片段,用于在 GIF 中实现不循环的效果
- 作者表达了对未能获得工作的遗憾,但认为招聘过程并不完美,有时公司会错过优秀的人才
- 招聘时应重视候选人的热情和项目经验,而不是仅仅关注技术栈或特定技能
- 未能获得工作机会有时可以作为筛选公司的依据,表明公司可能过于短视或招聘决策者技术背景不足
- 项目展示了作者的创造力和对编程的热爱,有助于建立更好的人际关系和团队氛围
- 作者分享了自己因热情而非专业经验获得第一份软件工作的经历,强调了热情的重要性
- 项目虽然有趣,但招聘失败可能有其他复杂因素,不应完全归咎于项目本身
- 项目展示了作者的能力,公司可能意识到作者会让他们感到羞愧,因此未提供工作机会
- 项目很酷,那些不欣赏的人可以去其他地方
How I Experience Web Today (2021) #
https://how-i-experience-web-today.com
这个网站模拟了一系列的当下网络访问的现状:搜索,然后从展示的结果中找到自己感兴趣的文章,点击之后,就是一系列的“离奇”操作的开始:
- 要处理 Cokie Privacy Statement 的弹窗
- 紧接着处理浏览器是否允许通知的弹窗
- 处理订阅 Newsletter 的弹窗
- Adblock detected 弹窗
- 提示:继续阅读的弹窗,建议花钱购买稳占个,或者订阅
- 网页终于开始展示了,又要应对无尽的广告,右下角的客服弹窗,等等…
- 甚至滑动了鼠标滑轮,都会被检测到,索要 email 地址
-
HN 热度 415 points | 评论 123 comments | 作者:airstrike | 1 day ago #
https://news.ycombinator.com/item?id=41840931
- Google 的搜索结果页面充满了广告和 AI 生成的低质量内容
- 访问网站时经常遇到强制登录、位置权限请求等干扰
- 有人推荐使用 Bing 或 Brave Search 等替代搜索引擎
- 早期的 Google 搜索页面简洁无广告,值得怀念
- 网站的低质量行为通常与低质量内容相关联,建议直接关闭标签页
- 现代网站存在多种干扰用户的行为,如弹出窗口、订阅提示、反馈按钮等
- 建议浏览器开发功能,阻止这些干扰元素抢占顶层 DOM
- 有人使用反广告插件,自动点击页面上的广告以示抗议
- 网站设计中,“否”或“不”选项通常被设计得不明显,以引导用户选择其他选项
- 网站的“离开页面”提示对话框设计得令人困惑,容易误导用户
- 网站的视频播放器有时仅用于告知用户内容不可用,这种设计令人不满
World conker champion found with steel chestnut, cleared of cheating #
世界坚果锦标赛(World Conker Championships)因男子世界冠军大卫·雅金斯(David Jakins)被发现携带钢制坚果而被指控作弊。雅金斯在北安普顿郡南威克举行的比赛中首次夺冠,但在赛后被发现携带一枚钢制坚果。
雅金斯否认使用钢制坚果参赛,他说钢制坚果只是为了好笑而随身携带的。比赛组织者正在调查此事。
HN 热度 397 points | 评论 546 comments | 作者:notamy | 21 hours ago #
https://news.ycombinator.com/item?id=41844545
- 钢制栗子冠军已被 VAR 裁定清白
- 初步调查表明他无辜,但还需进一步证实
- 世界冠军赛存在可疑之处,比赛组织者不应参与竞赛
- 捕获钢制栗子无法证明他未暗中使用,应被取消资格
- 比赛有录像,可以判断他是否使用了钢制栗子
- 马栗子(用于玩栗子游戏)和食用栗子是不同的,马栗子有毒
- 栗子游戏规则在爱尔兰和英国学校中非常复杂,有多种强化栗子的方法
- “飞机”是指玩家以肩高位置进行水平挥动栗子的动作
- 栗子游戏中的某些规则如“no stamping”可以事先协商改变
- 有扁平侧面和锋利边缘的栗子被称为“切奶酪器”
Commonly used arm positions can overestimate blood pressure readings: study #
https://medicalxpress.com/news/2024-10-commonly-arm-positions-substantially-overestimate.html
研究发现,常用的手臂位置可能会大大高估血压读数,导致高血压的误诊。研究人员比较了三种不同的手臂位置:手臂放在桌子上、手臂放在腿上和手臂悬挂在身体一侧。结果显示,放在腿上的手臂位置高估了收缩压(血压读数的上限)近 4 毫米汞柱,悬挂在身体一侧的手臂位置高估了收缩压近 7 毫米汞柱。研究人员强调,手臂位置对准确的血压测量至关重要,应遵循临床指南,使用桌子或其他表面支撑手臂进行测量。
研究人员还指出,高血压是美国成年人中常见的健康问题,约有半数美国成年人有高血压。高血压如果不治疗,会增加中风、心脏病发作等严重心血管疾病的风险。因此,早期筛查和监测血压对于高血压管理至关重要。
研究人员建议,临床医生应遵循最佳实践指南,确保患者的手臂得到适当支撑,以获得准确的血压读数。同时,患者也应自我倡导,在临床环境和家中测量血压时,确保手臂得到适当支撑。
HN 热度 323 points | 评论 222 comments | 作者:wglb | 1 day ago #
https://news.ycombinator.com/item?id=41840023
- 医疗领域中并非所有人都了解血压测量方法的准确性问题。
- 血压测量受姿势、放松程度、手臂位置、近期活动等因素影响很大。
- 单次血压测量结果不应作为医疗建议的依据,需要多次测量以确定趋势。
- 医院和诊所的血压测量主要用于捕捉严重高血压,而非精确测量。
- 年龄增长和动脉硬化会影响血压调节系统,导致血压升高。
- 体温变化也会影响血压测量结果,寒冷天气可能导致血管收缩。
- 膀胱充盈会提高血压和心率。
- 血压研究通常会要求受试者在测量前静坐 5 分钟,保持双腿不交叉,避免紧张和焦虑。
- 任何运动都会显著提高血压。
- 血压监测应考虑个体差异和外部因素,以确保数据的可靠性。
Routine dental X-rays are not backed by evidence #
https://arstechnica.com/health/2024/10/do-you-really-need-those-routine-dental-x-rays-probably-not/
美国牙科协会(ADA)并不推荐每年进行常规牙科 X 光检查。事实上,ADA 的指南从 2012 年开始就不再推荐成年人进行年度 X 光检查。最新的指南强调,患者的 X 光暴露应该被最小化,任何 X 光检查都应该有临床上的理由。
然而,许多牙医仍然坚持每年进行 X 光检查的做法。一些专家认为,这是因为牙科行业缺乏数据来支持其做法,且存在过度治疗和过度诊断的问题。
一些专家呼吁进行随机临床试验来评估 X 光检查的风险和益处,特别是对于低风险的成人患者。他们还指出,牙科 X 光检查的使用应该基于临床上的怀疑,而不是例行检查。
此外,专家们还指出,牙科行业的独特性使得其难以受到外部监督,这可能导致过度治疗和过度诊断的问题。他们呼吁牙科行业应该更加注重证据-based 的做法。
HN 热度 319 points | 评论 357 comments | 作者:keithly | 1 day ago #
https://news.ycombinator.com/item?id=41842294
- 年轻牙医可能因债务压力而过度推销服务
- 无保险患者通常会得到不同的对待
- 一些牙医诊所可能存在保险欺诈行为
- 大型连锁牙科诊所可能更倾向于推销昂贵的治疗计划
- 随着时间推移,越来越多的商业行为变得像是提取利润而非提高服务质量
- 私募股权公司收购的牙科诊所可能采用高压销售策略
- 医生拥有的可靠牙科诊所在某些地区越来越难找
- 一些牙医过于追求完美,会将小问题放大
- 文化上对完美牙齿的期望增加了治疗成本
- 患者应明确表示自己无保险,以避免不必要的推销
- 无保险患者在不那么豪华的诊所通常会得到更好的服务
- 一些牙医诊所的收费和定价不透明,容易引起误解
- 一些牙医可能因商业压力而改变诊断和治疗建议
Gettiers in software engineering (2019) #
https://jsomers.net/blog/gettiers
这篇文章讨论了哲学家 Edmund Gettier 在 1963 年发表的一篇三页论文对软件工程的影响。Gettier 的论文挑战了传统的知识定义,即"知识是有理由的真信念",并提供了三个案例,称为"Gettier 案例",这些案例表明即使有理由相信某事,但仍然可能不知道它。
文章的作者将 Gettier 案例应用于软件工程,描述了两个例子。在第一个例子中,作者在开发一个搜索引擎时,发现自己破坏了自动聚焦功能,但实际上是因为同事修改了框架代码导致的。在第二个例子中,作者调查了一个用户报告的 bug,发现代码修改似乎是原因,但实际上是因为电子邮件服务宕机。
文章指出,Gettier 案例在软件工程中很常见,开发者需要注意这些情况,以避免错误地诊断问题。作者认为,拥有一个术语来描述这些情况,可以帮助开发者更好地识别和解决问题。文章最后总结说,软件开发是一个复杂和不断变化的领域,开发者需要具备良好的批判性思维和解决问题的能力。
HN 热度 293 points | 评论 210 comments | 作者:FigurativeVoid | 1 day ago #
https://news.ycombinator.com/item?id=41840390
- Gettier 问题中的例子展示了即使信念被证明为真,也可能缺乏真正的知识
- 通过增加预测能力作为“正当真信念”的前提,可以解决 Gettier 问题中的某些例子
- Gettier 问题在现代知识论中已不再那么令人恐惧,因为它揭示了知识定义中的逻辑问题
- 任何屏幕上的背景都可能是 CGI 或 AI 生成的,因此基于屏幕背景的信念可能不被正当化
- Gettier 问题的流行可能是因为论文简短,便于阅读和讨论,而非问题本身有多深刻
- 知识的定义与是否能产生有效预测有关,而非单个实例的正当性
- Gettier 问题揭示了在任何证据水平下,都无法确保信念的绝对正确性,因为可能存在误解或幻觉
- 知识与知道你拥有知识之间存在区别,后者依赖于对前者的正当化理解
- Gettier 问题本质上是对知识定义的争论,这种争论可以无休止地进行下去
The C23 edition of Modern C #
https://gustedt.wordpress.com/2024/10/15/the-c23-edition-of-modern-c/
C23 版本的《现代 C 编程》现已可供免费下载。https://hal.inria.fr/hal-02383654 新版的主要目的是更新到新的 C 标准 C23。新版增加了对整数的支持,包括新的位精确类型、新的 C 库头文件、对 128 位类型的支持以及对枚举类型的改进。还增加了对 nullptr 常量和其底层类型的支持、语法注释、类型泛型编程等新特性。同时,还增加了对复合表达式和 lambda 表达式的讨论,以及国际化和程序失败的处理。
HN 热度 290 points | 评论 134 comments | 作者:bwidlar | 8 hours ago #
https://news.ycombinator.com/item?id=41850017
- C 和 C++ 是不同的语言,不应混用
- C++ 设计时考虑了与 C 代码的互操作性,可以直接包含 C 头文件
- C++ 的 I/O 流特性存在争议,虽然使用广泛但有改进空间
- 使用 C++ 的 I/O 流时,需要处理好错误检查和错误状态
- C++ 的 I/O 流在性能、本地化支持、代码重用和 C/OS 互操作性方面存在问题
- C++ 的 I/O 流在不涉及本地化和互操作性时,仍然可以提供较好的类型安全和便利性
- 使 C 头文件在 C++ 中可用需要一些额外的工作,如使用
extern "C"
Zamba2-7B #
https://www.zyphra.com/post/zamba2-7b
Zyphra 公司发布了 Zamba2-7B 语言模型,宣称其在质量和性能方面超越了目前领先的 7B 模型,如 Mistral-7B、Gemma-7B 和 Llama3-8B。Zamba2-7B 的主要特点包括:
- 架构改进:Mamba1 块被替换为 Mamba2 块,使用两个共享注意力块(ABAB 模式),并应用 LoRA 投影矩阵来增强模型的表达能力。
- 训练数据:使用 3 万亿个标记的预训练数据集,包括 Zyda 和公开可用数据集,并进行了严格的过滤和去重。
- 训练方法:采用了 “annealing” 预训练阶段,快速衰减学习率,使用高质量的数据集。
- 性能:Zamba2-7B 在标准语言建模评估集上表现出色,尤其是在延迟和生成速度方面。它比 Llama3-8B 快 25% 并且每秒生成的标记数量提高了 20%。
Zamba2-7B 的发布是语言模型领域的一个重要进展,可能会对自然语言处理和人工智能等领域产生重大影响。
HN 热度 275 points | 评论 70 comments | 作者:dataminer | 1 day ago #
https://news.ycombinator.com/item?id=41842975
- 模型权重可以在 Hugging Face 上找到,但目前不支持 GGUF 格式
- Zamba2-7B 需要使用 Zyphra 的 transformers 库分支来运行
- Zamba2-7B 的部分基于 Mamba,因此在 llama.cpp 上不支持 GPU 加速
- Zamba2-7B 的主要优势在于低延迟、生成速度和内存使用效率
- 相比于 Phi3.5,Zamba2-7B 在训练数据量上更少,但性能提升有限
- Mamba 架构在能效方面有显著优势,运行时功耗更低
- 使用两个注意力头可能分别关注精确表示和语义上下文,类似于人类记忆的双表征系统
- 模型的性能提升更多依赖于高质量的训练数据,而非架构本身
- Apache 许可证适用于模型权重,尽管它主要用于软件许可
- 目前缺乏独立的、最新的模型性能排行榜,难以评估 Zamba2-7B 的实际表现
- Mamba 架构在较小模型上表现出色,但在大规模模型上的应用尚不明确