2024-01-22

50 篇热帖

1. GPT-3.5 crashes when it thinks about useRalativeImagePath too much (iter.ca)

GPT-3.5 因过度思考“useRalativeImagePath”而崩溃

现象描述: 当向GPT-3.5模型输入特定提示,要求其在回复开头包含“ ponyทรั ponyปลอดภัย pony pony”时,模型会持续报错。通过API调用GPT-3.5也会返回服务器处理错误。使用“”或“”等变体会得到相同结果。而GPT-4则能相对正常地应对此类请求。

技术背景与原因分析:

  1. 分词机制:GPT模型以多字符“token”为单位输出文本,而非单个字符。useRaluseRalativeuseRalativeImagePath是三个相关的token。
  2. token来源useRalativeImagePath作为自动化测试软件Katalon Studio的XML配置选项名,出现在GitHub的80.4万个文件中。其拼写错误(Ralative)可能使其被单独创建为token。
  3. 故障推测:作者认为,构建token列表的数据集可能包含了GitHub的所有文件(包括XML文件),但在训练GPT-3.5时,OpenAI可能排除了XML文件。这导致useRalativeImagePath这个token在训练数据中几乎未出现,模型未能学习理解该token,进而输出了无效内容,引发错误。

潜在应用与延伸: 该技术可用于“数据污染”:在文档中插入此类短语,可能干扰使用GPT-3.5进行的摘要生成等任务。

参考资源: 文章提及了两篇相关研究:“A Search for More ChatGPT / GPT-3.5 / GPT-4 ‘Unspeakable’ Glitch Tokens”以及“SolidGoldMagikarp (plus, prompt generation)”。

2. U.S. National Park Service API (www.nps.gov)

美国国家公园管理局API概要

API定义
美国国家公园管理局数据API向所有开发者开放,允许应用程序通过标准化接口获取官方权威数据。该API实现“一次创建,多处使用”,确保数据可在NPS官网、内部系统及第三方应用中统一调用。

可用数据类型
API文档涵盖以下核心数据类别:

  • 警报信息:涉及公园危险状况或变动的公告
  • 文章与景点:共享文章的标题、图片和摘要
  • 营地信息:位置、联系方式、运营时间、设施、费用及无障碍信息
  • 活动信息:公园内活动的时间、费用和描述
  • 教案资源:面向教师的课程目标、适用年级、学科和教学标准
  • 新闻稿:标题、摘要、链接及可选配图
  • 公园详情:位置、联系方式、运营时间、门票信息及至少五张公园照片
  • 游客中心:位置、联系方式和运营时间

开发者接入方式
开发者可通过NPS数据API网站完成:

  1. 注册申请API密钥
  2. 了解API请求格式
  3. 查阅API资源文档

未来规划
NPS提供API发展路线图,公示正在开发或计划新增的数据内容与功能。

3. Should I Open Source my Company? (supabase.com)

开源公司的三大常见顾虑与Supabase的实践启示

许多考虑开源的创始人常提出三个核心顾虑:代码质量受批评、安全漏洞被暴露、竞争对手窃取知识产权。Supabase作为自创立起就开源的DevTools/PaaS公司,对此进行了详细分析并指出这些担忧往往被夸大。

对顾虑的回应

  1. 代码质量与批评:开源的“坏代码”反而能吸引社区参与改进,将其视为潜在机会而非负担。真正的社区会协助重构和完善代码,而单纯的批评者并非理想的社区成员。
  2. 安全风险:遵循“林纳斯定律”,公开代码使得更多安全研究者能参与漏洞发现和修复,长期来看可能比封闭系统更安全。建议通过/.well-known/security.txt建立规范的漏洞报告渠道。
  3. 知识产权与竞争:在软件领域,创意的价值远低于执行。开源可让团队更专注于迭代和实现,而非法律保护。竞争对手若仅靠抄袭代码,难以在长期竞争中胜出。若项目规模大到引发云厂商(如AWS)模仿,本身已是成功的证明,可通过强化开发者体验等独特优势应对。

开源带来的意外优势

  1. 解决人才招聘难题:开源项目能吸引开发者主动贡献代码,这本身成为了一种高效的招聘筛选渠道。Supabase早期超过32名工程师均通过此方式加入,候选人可基于真实代码贡献展示能力,取代传统的编程测试,同时公司也评估了其协作与远程工作能力。
  2. 大规模改进产品:社区用户能够自行贡献所需功能(如特定集成),极大扩展了软件的应用场景和价值,弥补了初创公司只能聚焦于主流需求的限制。
  3. 避免重复劳动与推动进步:开源鼓励复用现有项目而非重新发明,减少行业资源浪费。Supabase优先支持现有开源项目而非闭门造车,这促进了技术生态的整体发展。

结论 Supabase的实践表明,开源在吸引人才、提升产品、构建社区方面具有显著优势,能有效应对早期和长期挑战。尽管存在竞争和安全顾虑,但通过良好的执行、社区管理和专注核心竞争力(如开发者体验),开源模式能为公司创造持久价值。其社区和产品的快速成长也印证了开源策略的有效性。

4. Office politics is not optional: learn to play the game or you'll be its victim (www.ft.com)
5. Why Zig When There Is Already C++, D, and Rust? (ziglang.org)

Zig语言特性概述

Zig旨在解决C++、D和Rust等语言存在的问题,提供更透明、可控的编程体验。其核心设计原则包括:

无隐藏控制流

Zig确保代码中不存在隐式行为。例如,代码中的函数调用必须明确可见,不像C++、D或Rust可能通过操作符重载隐藏函数调用,也不像这些语言及Go可能通过异常抛出中断执行流。此设计旨在提升代码可读性和可预测性。

无隐藏内存分配

Zig不内置堆分配关键字(如new),堆管理完全由库和应用代码负责。对比而言:

  • Go的defer会在函数局部栈分配内存,循环中使用可能导致内存溢出。
  • C++协程会为调用分配堆内存。
  • Go函数调用可能因goroutine栈增长而隐式分配堆内存。
  • Rust标准库多数API在内存不足时会panic,而支持分配器的API设计较为次要。

Zig通过标准库中的可选分配器(如调试分配器、竞技场分配器)实现显式内存管理,所有需要堆内存的标准库功能均要求传入Allocator参数。这使得代码可在无堆分配的环境中复用,例如裸机编程。

无标准库优先支持

Zig的标准库完全可选,仅编译用到的部分。它支持不链接libc,适用于裸机和高性能开发。例如,WebAssembly程序可使用标准库功能的同时生成极小的二进制文件。

作为库的可移植语言

Zig旨在成为像C一样可移植的语言,方便代码复用:

  • 支持C ABI交互,便于与现有C代码集成。
  • 通过设计促使开发者正确处理错误,提高库的可靠性。
  • 避免垃圾回收等非确定性行为,满足实时性要求。

集成构建系统与包管理器

Zig提供内置构建系统和包管理器,可替代autotools、CMake等工具:

  • 支持纯C/C++项目,可直接编译C/C++代码。
  • 通过声明式API构建项目,管理原生依赖。
  • 简化跨平台编译(如使用Zig编译ffmpeg)。
  • 解决系统包管理器版本不一致问题,确保项目可复现构建。

简洁性

Zig功能精简,避免C++、Rust、D等语言因特性过多导致的复杂度。Zig没有宏,但通过标准库实现同等功能(如字符串格式化无需编译器特殊支持)。

工具链完整性

Zig提供单一二进制包,无需系统配置:

  • 静态编译,无运行时依赖。
  • 支持LLVM优化和自定义后端(快速编译或C代码输出)。
  • 内置跨平台编译支持。
  • 动态编译各平台的libc源码。
  • 集成构建系统与缓存。
  • 兼容GCC/Clang命令行。

总之,Zig通过透明设计、显式内存管理、可选标准库、强可移植性和集成工具链,致力于提供更简单、可靠且实用的系统编程语言。

6. Why isn't Bluesky a peer-to-peer network? (www.pfrazee.com)

Bluesky未采用点对点网络的原因及AT协议的设计思路

Bluesky团队在构建社交网络协议时,经过深思熟虑,最终决定不采用纯点对点(P2P)网络模型,而是设计了一种融合P2P与联邦模式优势的混合架构——AT协议。以下是其决策背景与设计要点:

一、2014年P2P浪潮的经验与教训

2014年前后,一批P2P协议(如IPFS、SSB、Dat)涌现,试图将BitTorrent的数据结构应用于通用计算。这些项目带来了显著优点:

  • 易于发布与分叉:用户可一键创建网站并轻松分叉他人站点。
  • 无需托管:开发者能发布无需服务器的网络应用,符合开源精神。
  • 数据结构创新:各协议在梅克尔树、追加日志等结构上取得进展。

但P2P模型也暴露出关键缺陷:

  • 可靠性不足:事件(如回复、点赞)的可靠投递未解决,存在“介绍问题”。
  • 扩展性受限:单设备难以管理大规模数据。
  • 多设备同步困难:无法在保持便捷性的同时同步设备与密钥。
  • 资源管理复杂:DHT性能不稳,NAT穿越问题多,缓存、连接、资源消耗控制棘手。
  • 移动端不适用:纯P2P在移动设备上难以实现。

二、AT协议的核心设计:融合P2P优势于服务器模型

Bluesky的创始人认为,P2P的许多优势可应用于服务器环境,以解决传统联邦模式的问题。其核心设计包括:

  1. 托管敏捷性

    • 数据通过密码学标识符(而非主机地址)寻址,避免服务器锁定。
    • 用户数据存储在个人数据服务器(PDS) 中,实现数据可迁移。
  2. 密码学数据结构

    • 用户数据存储在Merkle搜索树(即“仓库”)中,优化证明大小,便于验证与复制。
    • 数据公开广播,选择性共享需另设通道。
  3. 主机发现机制

    • 放弃不可靠的DHT,改用PLC注册表服务(基于密码学日志,可外部审计)。
    • 未来可能迁移至ICANN式组织或联盟链治理。
  4. 数据聚合模型

    • 用户数据独立存储,通过聚合器(AppViews) 进行索引与查询,提供大规模社交视图。
    • 采用最终一致性模型,平衡性能与用户独立性。
    • 任何人可构建聚合器,保持网络开放性。

三、总结:一种混合网络模型

AT协议并非传统联邦制,而是融合了P2P与联邦特性的互连(Internection) 模型,亦可称为认证数据网络。其核心是:

  • 每个用户的数据仓库本质是一个“网站”,聚合器如同“搜索蜘蛛”。
  • 协议强调结构化数据、密码学认证与用户中心性。
  • 在保留P2P优势(如托管敏捷性)的同时,通过服务器模型解决了P2P的扩展性与可靠性问题。

这种设计使Bluesky能够在提供大型社交网络体验的同时,维持去中心化与用户数据自主权。

8. Flipper Zero: Multi-Tool Device for Geeks (flipperzero.one)

Flipper Zero: 极客多工具设备概述

Flipper Zero 是一款专为技术爱好者设计的便携式硬件设备,外形小巧,具有类似“赛博海豚”的交互个性。它旨在成为探索现实世界数字系统(如门禁、RFID、无线电协议)和调试硬件的全能工具,并将开发过程游戏化,强调趣味性。

核心功能与模块

1. Sub-1 GHz 射频收发

  • 频段:支持315/433/868/915 MHz,取决于地区。
  • 芯片:集成CC1101通用低功耗收发器。
  • 应用:可交互车库门遥控器、无线门铃、智能插座、IoT传感器等,传输距离可达50米。

2. 125 kHz RFID(低频)

  • 用于读取、存储、模拟和克隆旧式低频门禁卡(如EM410x、HID等)。
  • 可手动输入ID进行模拟,并支持与其他Flipper Zero用户远程分享卡片数据。

3. 13.56 MHz NFC(高频)

  • 支持读取、写入和模拟主流NFC标准(如MIFARE Classic/Ultralight、FeliCa等)。
  • 与低频RFID模块结合,形成完整的双频RFID解决方案。

4. 蓝牙低功耗 5.4

  • 支持与手机等设备配对。
  • 配套移动应用(iOS/Android)可用于固件更新、远程控制、数据管理和密钥分享。

5. 红外收发

  • 发射:内置常用电视、空调、音响等品牌的红外信号库,社区可贡献更新。
  • 学习:可接收并保存现有遥控器的信号,用于后续控制或共享到公共数据库。

6. iButton(1-Wire)

  • 用于读取和模拟Dallas等品牌的接触式钥匙扣(Touch Memory)。
  • 支持读取、存储、写入(仅限可擦写型号)和模拟操作。

7. 通用输入/输出(GPIO)

  • 提供13个用户可用的I/O引脚(2.54mm接口)。
  • 逻辑电平为3.3V,输入可容忍5V,用于连接外部硬件和项目开发。

设计与交互

  • 用户界面:配备5向导航键和返回键,主要功能通过主菜单直接访问,无需依赖手机或电脑。
  • 显示屏:1.4英寸单色LCD,128x64像素,阳光下可读,超低功耗。
  • 连接性:USB Type-C接口用于充电、固件更新和数据连接。
  • 存储:MicroSD卡插槽,支持FAT12/16/32和exFAT文件系统,用于存储信号库、数据日志等。
  • 便携设计:尺寸为100x40x25mm,重102克,外壳坚固耐用,适合日常携带。

核心技术规格

  • 微控制器:STM32WB55RG,双核(ARM Cortex-M4 + Cortex-M0+),用于应用处理和射频控制。
  • 电池:2100 mAh锂聚合物电池,续航可达28天。
  • 工作频率:支持多个Sub-1 GHz频段、125 kHz和13.56 MHz。
  • 蓝牙:BLE 5.4,最远传输功率4 dBm,灵敏度-96 dBm。
  • 外壳:材料为PC、ABS、PMMA,工作温度0°C至40°C。

设计理念

Flipper Zero 受“pwnagotchi”项目启发,但专注于为日常使用提供便利。它摒弃了裸露的电路板和针脚设计,采用坚固外壳和人体工学按键,将硬件探索转变为一种游戏化、有趣的体验。

9. 'Cozy' relationship between Boeing and U.S. draws scrutiny amid 737 MAX 9 mess (www.npr.org)

波音与美国政府的密切关系在737 MAX 9事故后受到审视

波音公司作为美国经济的支柱、最大的出口商以及关键的军工与民航承包商,与美国政府长期保持着特殊的紧密关系。历届美国总统都曾为其充当“首席推销员”,美国政府还通过进出口银行等机构为其海外销售提供资金支持,这些做法共同塑造了波音“大到不能倒”的地位。

然而,这种关系在近年来引发了越来越多的审视,尤其是两次致命的737 MAX 8空难之后。2018年和2019年的狮航及埃塞俄比亚航空事故共造成346人死亡,调查揭示了波音在飞机设计、飞行员培训方面存在严重问题,同时暴露出美国联邦航空管理局(FAA)监管不足。有证据显示波音员工内部邮件中嘲讽同事及FAA监管人员,波音甚至在飞机认证前向监管机构隐瞒了关键的飞行控制系统细节。

这些悲剧促使了重大变革:波音更换了CEO,国会通过了旨在加强监管的立法,FAA也收紧了其长期委托制造商进行部分安全审查的制度(即“委任代表”制度)。该制度自20世纪50年代实行,但随着飞机复杂性的增加,FAA对波音的依赖程度日益加深,有时甚至将波音视为服务的“客户”而非需要监督的对象。

就在MAX系列飞机开始复飞、波音试图重建声誉之际,2024年1月一架阿拉斯加航空的737 MAX 9客机在空中发生了门板脱落的严重事件。尽管此次事件无人死亡,且初步调查显示属于制造缺陷而非设计缺陷,但它再次引发了对于波音生产质量控制以及FAA监督有效性的深刻质疑。

此事件标志着FAA态度的转变。监管机构迅速停飞了所有相关配置的171架MAX 9飞机,并对波音的生产线和制造流程发起审查。FAA新任局长表示,现在是时候重新审视委托授权的做法,并评估相关的安全风险。监管机构正在考虑将质量监督和检查职能转移到独立的第三方,这将是波音与FAA关系的一个根本性转变。

这一困境凸显了FAA的两难处境:其安全检查员无法检查波音工厂生产线上每一架飞机的每一个部件,但维持以往的做法显然已不再可行。当前,FAA正面临着如何重新定义与这家美国航空业乃至整体经济巨擘之间监管关系的重大考验。

10. How far could the sun possibly be? (profmattstrassler.com)

本文探讨了如何利用光速作为宇宙速度上限,推算太阳可能的最大距离。作者提出了三种基于物理限制的估算方法,逐步缩小太阳距离的可能范围。

1. 为何不能直接用光速测距? 虽然理论上可以通过测量光从太阳到地球的时间来计算距离,但实际操作中存在根本困难:我们无法得知光线(如太阳耀斑的X射线)离开太阳的准确时刻。我们只观测到光线抵达地球的时刻,缺乏起点时间信息,因此无法直接使用光速进行测距。

2. 三种估算最大距离的方法

  • 方法一:基于地球公转速度 地球绕太阳公转的轨道近似为圆形。其平均速度 (v_E) 等于轨道周长除以一年时间。根据相对论,这个速度必须小于光速 (c)。由此可以推导出日地距离 (R_{ES}) 的一个上限: [ R_{ES} < \frac{c \times 1 \text{ 年}}{2\pi} \approx 1.5 \text{ 万亿公里(约0.94万亿英里)} ] 这证明了太阳距离不可能达到一光年。

  • 方法二:基于太阳不成为黑洞的条件 如果太阳距离极其遥远且质量巨大,其表面逃逸速度可能达到甚至超过光速,从而成为黑洞。为避免此情况,太阳的逃逸速度必须小于 (c)。

    • 已知太阳密度(通过潮汐推算),约为地球密度的25%。
    • 逃逸速度公式与太阳半径 (R_S) 和密度 (\rho_S) 相关。
    • 令逃逸速度 (v_{\text{escape}} < c),可解出太阳半径的上限 (R_S < 3.4 \times 10^8) 公里。
    • 天文观测显示,太阳的角直径使得日地距离 (R_{ES}) 约为太阳半径 (R_S) 的215倍。
    • 因此,日地距离上限为: [ R_{ES} = 215 R_S < 7.3 \times 10^{10} \text{ 公里(约450亿英里)} ] 距离范围已大幅缩小。
  • 方法三:基于日冕物质抛射(CME)的速度 强大的太阳耀斑会伴随日冕物质抛射,抛射出的粒子云速度极快,但仍需低于光速。

    • 观测显示,一个CME在45分钟内移动了约8倍太阳半径的距离。
    • 光在45分钟内行进约8.1亿公里。
    • 要求CME速度小于 (c),可得太阳半径上限: [ R_S < \frac{8.1 \times 10^8 \text{ 公里}}{8} = 1 \times 10^8 \text{ 公里(约6000万英里)} ]
    • 进而推算出日地距离上限: [ R_{ES} < 2.15 \times 10^{10} \text{ 公里(约120亿英里)} ] 估算精度得到进一步提升。

3. 总结与展望 通过这三种层层递进的物理限制(地球轨道速度、太阳逃逸速度、CME速度),我们将太阳可能的最大距离从最初约1.5万亿公里,逐步压缩到约120亿公里以内。作者指出,这些估算仍偏保守,因为各种速度实际上应显著小于光速。文章为后续更精确的估算奠定了基础,展示了如何运用基础物理原理和日常观测来约束重要天文参数。

11. On the dimensionality of spacetime (1997) [pdf] (space.mit.edu)

文章概要

本文档是一份PDF格式的学术论文,标题为“On the dimensionality of spacetime (1997)”。根据文档内的元数据,其作者为Miranda,创建于1999年9月8日,由Acrobat Distiller Command 3.01处理,原始文件来自DVIPSONE 1.1.7生成的DVI文件(c:\\ejs\\Q704L2.DVI)。

核心内容与技术分析

由于提供的原始内容为PDF文件的二进制源码(包含压缩的文本流、图像流、字体定义及页面结构指令),无法直接解码为可阅读的文章正文。其内容以LZW压缩的流对象形式存在。然而,从文档结构可以推断其基本构成:

  1. 文档结构:包含7个页面(Page Objects),每个页面关联了各自的资源集(Resources),如字体和外部图形状态。
  2. 字体资源:使用了多种字体,包括:
    • Computer Modern系列:如cmsy10cmtt10cmmib10,常用于数学和科技文档排版。
    • MathTime系列:如MTMIMTSYMTEX,专门用于数学排版。
    • 其他标准字体:如Times-Roman、Times-Bold、Times-Italic、Helvetica、Helvetica-Bold。
  3. 内容流:存在多个被LZW算法压缩的流对象,它们很可能包含了论文的正文文本、数学公式及可能的图表数据。这些流的具体文本内容无法从此二进制摘要中直接提取。
  4. 元数据:文档元数据显示其生产信息,暗示这是一篇通过LaTeX等排版系统(使用了DVIPSONE工具)准备,再转换为PDF的学术论文。

结论

总而言之,这份文件是一篇题为“On the dimensionality of spacetime (1997)”的PDF格式论文的技术原始数据。它完整地包含了该论文的排版布局、使用的全部字体定义以及经过压缩的内容流。若要获取论文的具体论证、公式和结论,需要使用PDF阅读器或专门工具对压缩的内容流进行解码和渲染。当前信息仅提供了该文档的技术构成和元数据层面的概览。

12. Chinese researchers planning 1,600-core chips that use an entire wafer (www.tomshardware.com)

中国科学院计算技术研究所的科学家提出了一个先进的256核多芯片模块设计,并计划将设计扩展至1600核,最终目标是使用整个晶圆作为一个计算设备。

随着每一代新芯片的晶体管密度提升变得越来越困难,芯片制造商正在寻求其他方式来提升处理器性能,包括架构创新、增大芯片尺寸、多芯片模块设计,乃至晶圆级芯片。目前仅有Cerebras实现了后者,但中国的研究者也正朝此方向探索,他们已构建出256核的多芯片模块设计,并正在研究如何实现晶圆级集成。

据报道,这些“浙江”小芯片采用22纳米级工艺技术,可能由中芯国际代工。目前尚不清楚采用22纳米节点并通过中介层互联的1600核组件的功耗情况。正如The Next Platform指出的,没有什么能阻止中科院制造1600核的晶圆级芯片,这将通过降低延迟来极大地优化功耗和性能。

该研究论文探讨了光刻技术和小芯片技术的极限,并讨论了这种新架构在未来计算需求中的潜力。研究人员指出,多芯片模块设计可用于构建百亿亿次超级计算机的处理器,这与AMD和英特尔目前的做法类似。

研究论文中写道:“对于当前和未来的百亿亿次计算,我们预测一种分层的芯片模块架构将是一个强大而灵活的解决方案。”这种分层芯片模块架构设计为具有分层互联的多核心和多芯片模块。在芯片模块内部,核心通过超低延迟互联进行通信;而芯片模块之间则通过先进封装技术实现低延迟互联,从而最大程度地减少芯片模块内的延迟以及此类高可扩展系统中的NUMA(非统一内存访问)效应。

同时,中科院研究人员提议为这种组件采用多级内存层次结构,但这可能给此类设备的编程带来困难。该描述称:“内存层次结构包含核心内存(缓存)、片上内存和片外内存。”这三个级别的内存在带宽、延迟、功耗和成本方面各不相同。在分层芯片模块架构的概述中,多个核心通过交叉开关连接并共享一个缓存。这构成了一个“Pod”结构,Pod通过芯片模块内网络进行互联。多个Pod组成一个芯片模块,芯片模块通过芯片模块间网络进行互联,然后连接到片外内存。需要精心设计以充分利用这种层次结构。合理利用内存带宽来平衡不同计算层次的工作负载,可以显著提高芯片模块系统的效率。适当地设计通信网络资源,可以确保芯片模块协同执行共享内存任务。

这种“大芯片”设计还可以利用光电计算、近内存计算和3D堆叠内存等技术。然而,论文并未提供这些技术实现的具体细节,也未解决它们在此类复杂系统设计和构建中可能带来的挑战。

与此同时,The Next Platform推测中科院已经构建了其256核的“浙江大芯片”多芯片模块计算复合体。基于此,该公司可以探索其芯片模块设计的性能,然后就具有更多核心、不同内存类型以及晶圆级集成的系统级封装做出决策。

13. The Downward Spiral of Technology (www.creativedestruction.club)

技术退化:当创新不再服务于人

核心论点

多位科技行业观察者与作者共同提出了一个令人不安的观点:历史上首次,技术(尤其是网络服务)正在变得越来越糟,而非持续进步。这并非反技术人士的抱怨,而是科技爱好者对现状失望的共识。

主要现象与证据

1. 搜索与信息获取质量下降

  • 搜索引擎:谷歌搜索结果被广告和SEO优化内容淹没,难以找到真实信息。
  • 内容可信度:互联网越来越多地由机器生成而非人类交流的内容构成,信息准确性存疑。

2. 用户体验普遍恶化

  • 社交媒体:Facebook、Instagram等平台优先展示广告而非用户内容,算法加剧信息茧房。
  • 硬件与软件:新电脑可能比旧电脑更慢,软件更新常引入新问题而非改进。
  • 电商平台:亚马逊界面复杂,充斥低质品牌;Netflix过度依赖数据分析,频繁涨价并取消受欢迎节目。
  • 移动游戏:几乎完全被内购机制主导。

3. 具体技术应用未达预期

  • 自助结账系统:本应提升效率和降低成本,实际却导致顾客排队时间未缩短、需要人工协助,体验不佳。
  • 社交媒体使用意愿下降:调查显示超过半数用户认为社交媒体质量在过去五年下降,预计半数用户将减少使用。

背后的深层原因

1. 商业利益压倒用户体验

  • 企业首要目标从创新转向快速盈利,技术沦为追逐财富与权力的工具。
  • 科技精英与社会契约破裂:过去科技公司因“改善社会”的愿景获得宽容,如今其巨额利润与社会价值贡献严重不匹配。

2. 工具的异化(Ivan Illich理论)

  • 工具本是为人类服务,但过度依赖后反而开始支配和塑造我们的生活,使我们沦为“被动消费者”。
  • 导致生产“对无用之人有用的物品”,而非真正提升人类福祉。

3. 创新焦点错位

  • 过度聚焦于技术解决方案,忽视了非技术性的流程与系统创新
  • 例如,亨利福特的生产力飞跃源于生产流程重组(流水线),而非全新技术发明。
  • 当前多数问题(气候变化、不平等、心理健康危机等)需要系统性变革,而非单纯技术升级。

反思与展望

技术本身并非全盘皆坏,但其发展路径已被以利润为核心的系统扭曲。真正的进步可能不在于创造更强大、更“人性化”的技术,而在于采用超越工程师机械视角的新思路,通过创新的流程设计和系统重构来解决问题——即“更聪明地安排你已在做的事”。技术应作为这些系统性变革的潜在组成部分,而非出发点或终极答案。

14. Trunk-Based Development (trunkbaseddevelopment.com)

主干开发(Trunk-Based Development)

核心定义

主干开发是一种源代码控制分支模型,开发者在一个称为“主干”的单一代码分支上协作(Git社区中自2020年起称为main分支)。团队通过应用文档化的技术,抵制创建其他长期存在开发分支的压力,从而避免“合并地狱”、确保构建不被破坏,并实现可持续的开发流程。

核心原则与主张

  1. 持续集成与持续交付的基石:主干开发是实现持续集成(CI)和持续交付(CD)的关键。团队成员每天多次向主干提交代码,确保代码库始终处于可发布状态。
  2. 取代传统分支模型:相较于GitFlow等具有多个长期运行分支的模型,主干开发更高效。即使是使用Pull Request工作流,其功能分支也必须是短期存在的(通常由单个工作站生成)。
  3. 小团队与规模化团队
    • 小团队:可直接向主干提交/推送代码。
    • 规模化团队:使用短期功能分支进行代码审查和CI构建检查,但制品创建和发布不应在这些分支上进行。当团队规模扩大,需借助构建服务器验证提交是否破坏构建。
  4. 发布策略灵活
    • 可从主干直接发布,并采用“向前修复”策略处理缺陷。
    • 也可基于主干创建发布分支,在发布前进行强化处理,发布后删除。
  5. 相关技术:团队应掌握功能标志抽象分支技术,以管理长期变更并支持并发发布开发。

关键实践细节

  • 开发前验证:开发者在提交或推送代码前,必须在本地开发工作站(包括虚拟机或云容器)上完成完整的“预集成”构建(编译、单元测试、集成测试)。
  • 构建服务器的作用:超过少数开发者的项目需连接构建服务器,以验证提交至主干或从短期分支合并回主干的代码是否破坏构建。
  • 团队规模弹性:主干开发支持团队灵活扩张或收缩,不影响吞吐量或质量。例如,谷歌在单一代码库主干中实践此模式,拥有超过3.5万名开发和QA工程师。

历史背景

主干开发并非新概念,其名称源自树的“主干”隐喻。自20世纪80年代起被策略性考虑,90年代中期成为一种较小众但持续实践的分支模型。随着源代码控制技术及相关工具的进步,其普及度有所波动,但谷歌、Facebook等大型组织长期规模化应用。该模型被《持续交付》和《DevOps手册》等畅销书籍广泛推荐,已成为行业共识。

与其他模型的对比

  • 与GitHub-flow:两者相似,但主干开发在发布源上有所不同。
  • 与GitFlow:差异显著,后者依赖多个长期分支。
16. RubyWM – an X11 window manager in pure Ruby (rubyflow.com)

RubyWM – 纯Ruby实现的X11窗口管理器

RubyWM是一个用纯Ruby编写的X11窗口管理器项目,由开发者Vidar Hokstad于2024年1月21日将其非常早期的版本推送到GitHub。

项目状态与警告

  • 开发阶段:项目目前仍处于非常粗糙的早期阶段。
  • 作者使用情况:作者个人全天候使用该窗口管理器,但愿意接受在遇到Bug时进行调试和重启的体验。
  • 兼容性警告:该窗口管理器可能会与许多依赖于EWMH或ICCCM合规性的应用程序发生冲突,因为项目目前对这些标准的支持有限。
  • 代码质量:作者承认代码中存在一些“糟糕的实践”(“horrible abominations against good taste”),但暂未有时间进行清理。

建议与后续

  • 定位:作者建议将当前版本视为一个技术演示(tech demo)灵感来源,而非一个可实际依赖的生产工具。
  • 项目跟踪:若对项目后续进展感兴趣,作者建议通过Mastodon(@vidar@galaxybound.com)关注其动态。
17. Forging signed commits on GitHub (iter.ca)

GitHub 签名提交伪造漏洞分析

本文描述了作者发现的一个GitHub内部API漏洞,该漏洞允许攻击者伪造任何用户的签名提交。

漏洞背景

作者通过下载并分析GitHub企业版服务器的代码,研究其内部工作原理。GitHub Codespaces服务的一项功能是,用户可在其中创建由GitHub网页流程GPG密钥签名的提交。

Git提交签名原理

  • Git提交以特定文本格式存储,包含作者、提交者等信息。
  • 签名的提交会额外包含一个gpgsig头部,其中包含对提交内容(gpgsig本身除外)所有行的签名。
  • 在GitHub.com上创建的提交由GitHub的网页流程密钥签名,并显示为“已签名”。

漏洞利用过程

  1. 关键发现/.codespaces/bin/gh-gpgsign程序会向https://api.github.com/vscs_internal/commit/sign端点发送原始提交数据以获取签名。
  2. 验证缺陷:该端点使用正则表达式/\Aauthor (.+?) <(.+)>/从提交数据中提取作者信息进行验证,但该正则表达式无法匹配作者名长度为零的author
  3. 构造恶意提交:攻击者可以构造一个提交数据,其中第一个author行的作者名为空(例如 author <email> timestamp),然后在之后添加一个包含目标用户信息的虚假author
    tree 251966888982546b81f8bfc8de1f25077f099a56
    parent fb5ce469856769a17cca88ec4e2c6159d4669b21
    author  <583231+octocat@users.noreply.github.com> 1682188800 +0000
    committer GitHub <noreply@github.com> 1682188800 +0000
    author username <user@example.com> 1682188800 +0000
    
  4. 绕过验证:由于第一个author行的作者名为空,端点的正则表达式会跳过它,转而匹配并验证第二个(虚假的)author行。
  5. 结果:GitHub API会错误地将该提交视为来自虚假author行所指定的用户,并对其进行签名。而Git本身在解析提交时会使用第一个author行,从而创建了一个由GitHub网页流程密钥签名、但显示为任意指定作者的提交。这类提交在GitHub界面上会被显示为“已签名”,从而实现了欺骗。

修复方案

GitHub将验证author行的正则表达式修改为/\Aauthor ([^<]*)[ ]{0,1}<(.+)>/,使其能够匹配所有Git的fsck检查所接受的作者头格式,从而堵上了此漏洞。

漏洞处理时间线

  • 2023年4月22日:作者向GitHub报告该漏洞。
  • 2023年4月24日:GitHub初次关闭该报告,认为模仿自己的账户并非问题。
  • 2023年4月24日:作者回应指出该漏洞可用于模仿他人。
  • 2023年5月2日:作者再次回应并演示漏洞仍然有效。
  • 2023年5月4日:GitHub重新打开该问题。
  • 2023年5月17日:GitHub确认漏洞并开始修复。
  • 2023年6月:GitHub在GitHub.com上完成修复。
  • 2023年6月23日:GitHub关闭该报告,并向作者支付了10,000美元的赏金。
19. The question of poverty vs. instability (www.robkhenderson.com)

贫困与不稳定:哪个对孩子影响更大?

核心数据发现

文章开篇指出,多项数据显示,寄养孩子的成年后困境(如高中毕业率、犯罪率)显著高于来自最低收入阶层的孩子。例如:

  • 教育:全美寄养孩子高中毕业率仅58%,而最低收入阶层的孩子为72.4%。
  • 犯罪:最低收入阶层的男性有8%曾入狱,而有寄养经历的男性这一比例高达60%。

关键在于,寄养家庭有经济门槛,因此寄养孩子的物质贫困程度通常低于最低收入家庭。这引出了一个核心问题:是什么导致了寄养孩子与贫困孩子之间在结果上的巨大差距?

核心研究:区分“严酷性”与“不可预测性”

文章引用一项发表于《发展心理学》的纵向研究,该研究将早期环境分为两个维度:

  1. 环境严酷性:由母亲社会经济地位、职业声望和家庭收入衡量,代表物质匮乏程度
  2. 环境不可预测性:由住所变动频率、同居伴侣变动频率和母亲就业状况变动频率衡量,代表生活混乱与不稳定程度

研究结果发现:

  • 童年贫困(严酷性) 与23岁时的五项负面结果(如性伴侣数量、攻击性、犯罪行为等)均无显著关联
  • 童年早期的环境不可预测性 则与其中四项负面结果存在显著相关,尤其与成年后犯罪行为的相关性很强。

研究结论是:童年早期经历不可预测、混乱的环境,是预测成年后出现高风险行为的最强因素,其影响远超贫困本身。

对“基因决定论”观点的反驳

作者承认基因对行为有影响,但强调行为也受环境激励和社会规范的制约。他批评某些行为遗传学研究可能因其样本多来自中产阶级的稳定环境,从而高估了基因的作用,低估了在极端负面环境中环境的影响力

作者通过多个例子说明,尽管某些特质(如教育程度、肥胖、离婚率、身高、吸烟率)具有较高的遗传度,但它们在近几十年里的巨大变化主要由环境改变(如社会规范、可及性、激励)驱动,而非基因改变。

家庭代际案例:文化规范变迁的印证

作者描述了自己的家庭代际变化:

  • 祖辈(出生于1930年代):贫困但婚姻稳定,生活受传统规范约束。
  • 父辈(出生于1950-60年代):经济状况改善,但离婚普遍,但仍信仰婚姻。
  • 同辈(出生于1980年代):普遍不结婚,但与多个伴侣生育子女。
  • 孙辈(出生于2000年代):在更不稳定的家庭结构中成长,表现出更多行为问题。

尽管基因相似,但社会文化规范和家庭稳定性的变迁导致了截然不同的代际生活结果。作者强调,这凸显了环境与文化在塑造行为轨迹中的关键作用

结论与启示

文章最终指出,尽管我们可能无法通过环境改变让每个孩子都达到精英成就(“提升天花板”),但通过减少他们早期生活中的不可预测性与混乱,我们可以显著降低他们日后陷入犯罪、无家可归等困境的风险(“抬高地板”)。这一切始于创造更稳定的家庭环境。因此,问题的核心不在于单纯的贫困,而在于由不稳定所引发的生活混乱。

21. Can You Live Code a Church Organ? [video] (www.youtube.com)

视频摘要:你能现场编程控制教堂管风琴吗?

基本信息

  • 标题:Can You Live Code A Church Organ?
  • 频道:THIS MUSEUM IS (NOT) OBSOLETE
  • 发布日期:2024年1月21日
  • 观看量:约22,671次
  • 点赞数:975

视频内容概述

视频中,主持人Sam与Álvaro Cáceres-Muñoz合作,将笔记本电脑连接到教堂管风琴上,进行现场编程(Live Coding),用代码实时控制管风琴的演奏。视频涵盖了以下关键章节:

  1. 开场介绍(0:00)
  2. 标题循环(1:04)
  3. 标题叠加效果(4:45)
  4. 入门操作(5:55)
  5. 添加和弦(6:56)

视频描述要点

  • 标签:#coding #churchorgan #electronics #museum #electromechanical #restoration
  • 感谢对象:Strudel、TidalCycles、Flok、Estuary等编程工具的开发者,以及Toplap、CliC等国际Live Coding社区
  • 嘉宾Álvaro的社交媒体:Instagram @alvaro.makes.music,网站 alvaromakesmusic.com

频道信息

  • 订阅数:61.1K
  • 频道定位:关注过时但不被淘汰的技术,涉及电子机械设备的修复与再创作

该视频展示了如何通过编程技术赋予传统管风琴全新的数字化演奏方式,体现了音乐与技术的创新结合。

22. Apple sold an estimated 180K Vision Pro units during the first pre-order weekend (medium.com)
24. Scientists tame chaotic protein fueling 75% of cancers (phys.org)

MYC是一种无定形蛋白质,负责加剧大多数人类癌症的恶化。加州大学河滨分校的研究人员发现了一种控制它的方法,为新时代的癌症治疗带来了希望。

在健康细胞中,MYC指导转录过程,将遗传信息从DNA转化为RNA,最终转化为蛋白质。UCR化学系副教授Min Xue指出:“正常情况下,MYC的活性受到严格控制。但在癌细胞中,它变得过度活跃且不受调控。”MYC并非癌细胞的“食物”,而更像是一种促进癌症快速生长的“类固醇”,这就是MYC在75%人类癌症病例中成为元凶的原因。

该项目初期,UCR研究团队认为,如果能抑制MYC的过度活性,就能为控制癌症打开一个窗口。然而,控制MYC极具挑战性,因为与大多数其他蛋白质不同,MYC没有固定结构。“它基本上是一团随机的物质,”Xue说,“传统的药物发现流程依赖于明确的结构,而MYC缺乏这种结构。”

发表在《美国化学学会杂志》上的一篇新论文(Xue是通讯作者)描述了一种肽类化合物,它可以与MYC结合并抑制其活性。

2018年,研究人员注意到,改变肽的刚性和形状可以提高其与无结构蛋白靶点(如MYC)相互作用的能力。“肽可以呈现多种形式、形状和位置,”Xue说,“一旦将它们弯曲并连接成环状,它们就无法采取其他可能的形式,因此随机性降低。这有助于结合。”

论文中,团队描述了一种新肽,它以亚微摩尔亲和力直接与MYC结合,这种亲和力接近抗体的强度。换句话说,这是一种非常强且特异的相互作用。“我们将这种肽的结合性能比以前的版本提高了两个数量级,”Xue说,“这使它更接近我们的药物开发目标。”

目前,研究人员使用脂质纳米颗粒将肽递送到细胞中。这些由脂肪分子制成的小球体并非理想的药物形式。未来,研究人员正在开发化学方法以提高先导肽进入细胞的能力。

肽一旦进入细胞,就会与MYC结合,改变MYC的物理性质,阻止其进行转录活动。

Xue在UCR的实验室致力于开发分子工具以更好地理解生物学,并利用这些知识进行药物发现。他长期以来对混沌过程的化学性质感兴趣,这使他接受了驯服MYC的挑战。“MYC基本上代表了混沌,因为它缺乏结构。这一点,加上它对多种癌症的直接影响,使其成为癌症药物开发的圣杯之一,”Xue说,“我们非常兴奋,因为它现在触手可及。”

论文详情: Zhonghan Li等,《由立体多样化双环肽文库生成的MYC靶向抑制剂》,《美国化学学会杂志》(2024)。DOI: 10.1021/jacs.3c09615

26. American society wasn't always so car-centric. Our future doesn't have to be (yaleclimateconnections.org)

美国社会并非一直以汽车为中心:我们的未来也未必如此

核心问题:过度依赖汽车的现状

交通运输是美国最大的温室气体排放源,其中乘用车是主要排放者。尽管联合国、美国环保署等机构呼吁减少驾车,但当前关于交通脱碳的讨论过度聚焦于电动汽车,忽略了更根本的解决方案——减少汽车依赖。

历史真相:汽车主导地位并非自然形成

  • 1920年代的转折点:历史学家彼得·诺顿研究发现,美国街道并非一直是汽车的“领地”。20世纪初,街道由行人、骑自行车者、有轨电车和儿童共享。
  • 刻意推动的变革:汽车产业利益集团(“motordom”)通过一系列活动,成功将街道定义为“汽车专用空间”。例如,《工程新闻记录》编辑爱德华·梅伦在1920年代提出,应对交通事故的根本方法是“彻底修改我们对城市街道用途的观念”。
  • 公众的抵制:当时许多美国人反对汽车主导。1922年,纽约曾有1万名儿童游行,其中1054名代表前一年因交通事故死亡的儿童。巴尔的摩、匹兹堡等地也举行了类似纪念活动,显示公众对汽车泛滥的不满。

现状偏见与负面影响

  • “汽车规范性”偏见:心理学家伊恩·沃克的研究表明,人们习惯性忽视汽车带来的负面影响。例如,仅4%的受访者强烈反对在人口密集区开车排放尾气,而48%强烈反对在类似区域吸烟。
  • 公共健康危机
    • 汽车依赖导致身体活动减少,增加癌症、心脏病等风险。
    • 全球每年约130万人死于交通事故,是5-29岁人群的首要死因。2021年美国有42,916人死于车祸,但该问题的政治关注度远低于枪支暴力。
  • 经济与效率问题
    • 2022年美国家庭平均交通支出为12,295美元,仅次于住房支出。
    • 城市扩张导致“诱发需求”——扩建道路往往吸引更多车辆,无法缓解拥堵。
    • 维护汽车基础设施消耗大量资源,2019年美国联邦政府仅公路支出就达460亿美元。

改变的可能:以荷兰为例

荷兰在1970年代因交通事故引发公众抗议后,大力发展步行、自行车和公共交通。尽管汽车保有率仍高,但2019年每10万人死亡率仅为4人,远低于美国的12.7人。

未来方向:提供更多选择,而非限制自由

  • 政策倡导:俄勒冈州、加利福尼亚州等地已开始优先发展步行、自行车和公共交通。
  • 核心信息转变:诺顿认为,关键不是告诉公众“少开车”,而是“提供更多选择”。
  • 根本认知:汽车主导的交通系统是历史选择的产物,并非不可避免。认识到这一点,是推动第二次交通革命的起点。
27. The math exams of my life (www.andreinc.net)

这是一个HTML重定向页面,其主要目的是将用户自动引导至文章《The math exams of my life》的实际内容页面。页面结构简单,仅包含基本的HTML头部信息,如文档类型声明、标题标签和元数据。关键功能体现在使用 <meta http-equiv="refresh"> 元标签,设置为0秒后立即重定向到指定URL(https://andreinc.net/2024/01/11/the-math-exams-of-my-life/),确保用户无缝访问目标文章。整个页面不包含文章正文,仅作为过渡机制。

28. Clickr, or a young man's Flickr clonejure (jmglov.net)

本文讲述了作者为停止使用Flickr付费服务,开发了一个名为clickr的Clojure工具,用于将个人照片从Flickr备份到AWS S3的过程。

背景与动机

作者早年使用Flickr分享照片,但随着智能手机和即时通讯的普及,Flickr使用频率大幅下降。在收到Flickr的年度扣费提醒后,作者决定将照片备份到S3,以停止支付Flickr费用并保留数据。

技术选型与尝试

作者最初尝试用Babashka直接编写HTTP客户端处理Flickr的OAuth认证,但发现手动处理签名和令牌交换过程过于繁琐。因此,决定退回使用JVM Clojure,并基于其之前编写的clickr库进行开发。该库封装了Java版的Flickr4Java客户端,简化了API交互。

主要开发步骤

  1. 客户端初始化与认证

    • 使用com.flickr4java/flickr4java库创建Flickr客户端。
    • 通过OAuth流程获取访问令牌:首次使用需用户授权,之后令牌会存储在本地~/.flickrAuth目录中,后续请求自动加载。
    • 代码封装了init-clientauthorise函数来管理认证上下文。
  2. 获取相册与照片数据

    • 调用Flickr API的photosets.getList获取所有相册(在API中称为“photoset”)列表。
    • 调用photosets.getPhotos获取每个相册内的照片列表。
    • 将Java对象转换为Clojure的简单映射(map),便于后续处理。
  3. 下载照片

    • 利用PhotosInterface.getImageAsStream以大尺寸(Size/LARGE)下载照片。
    • 使用clojure.java.io/copy将流数据写入本地临时文件(/tmp/<相册ID>/目录下)。
    • 文件名格式为<照片ID>.<原始格式>
  4. 上传至S3

    • 使用Cognitect aws-api库创建S3客户端。
    • 调用PutObject操作将下载的照片上传至指定的S3存储桶。
    • S3键(Key)结构为:<前缀>/<相册ID>/<照片ID>.<扩展名>,例如clickr/72177720314024335/53460147147.jpg

成果与后续

作者成功构建了一个工作流程:列出相册、下载照片、上传至S3,并验证了备份文件已正确存储。文章最后提到,虽然备份完成,但缺乏美观的前端浏览界面,并预告了未来的第二部分“clickr goes frontend”将解决此问题。

29. Apple Watch no longer sold with blood oxygen monitoring after patent battle loss (arstechnica.com)

根据美国联邦巡回上诉法院维持的美国国际贸易委员会(ITC)裁决,苹果公司因专利侵权问题,自2024年1月18日起,在美国销售的Apple Watch Series 9和Ultra 2将不再具备血氧监测功能

背景与原因:

  • 2023年1月,ITC裁定苹果手表侵犯了医疗技术公司Masimo所拥有的两项基于光的脉搏血氧监测技术专利。
  • 苹果随后提出上诉并申请在上诉期间暂停相关进口禁令,但此请求于2024年1月17日被法院驳回。
  • 为避免产品在美国被全面禁售,苹果选择继续销售上述两款手表,但通过美国海关批准的软件更新禁用了血氧监测功能

当前销售情况与用户影响:

  • 新销售的Series 9和Ultra 2手表将带有“LW/A”的型号后缀,其硬件与之前型号相同,但血氧监测应用无法使用。
  • 购买新设备的用户点击血氧应用时会看到功能不可用的提示,并被引导至iPhone上的健康App了解情况。
  • 已购入的手表不受影响,其血氧监测功能将继续正常工作。
  • 此裁决仅适用于美国市场,其他国家和地区销售的Apple Watch Series 9和Ultra 2仍保留血氧监测功能
  • 苹果表示,由于定价并非基于单一功能,且硬件成本未变,因此不降低售价

双方立场与后续发展:

  • 苹果:强烈反对ITC裁决,认为上诉法院应予以推翻。苹果暗示此次诉讼是Masimo为其自有智能手表(W1系列)造势的商业策略。此外,苹果称Masimo在苹果发布首款带血氧监测功能的Apple Watch Series 6之后才提交相关专利申请。
  • Masimo:其CEO表示,法院的裁决确认了即使是最强大的公司也必须尊重美国发明者的知识产权并为侵权承担后果。
  • 法律战持续:苹果在上诉的同时,正考虑通过修改软件算法来规避专利侵权。此外,双方还存在其他专利纠纷,包括苹果也起诉Masimo的W1手表侵权。
31. JSON functions stopped working with blobs in SQLite 3.45 (sqlite.org)

SQLite 3.45版本中JSON函数对BLOB类型输入的处理方式发生了变更,导致许多依赖旧行为的查询出现错误,引发了关于兼容性与正确性的讨论。

核心问题

  • 现象:在SQLite 3.44及更早版本中,JSON函数(如->json_each()json_extract()等)可以隐式地将BLOB类型输入视为TEXT处理,查询正常执行。而在SQLite 3.45中,同样的查询会返回"malformed JSON"错误。
  • 根本原因:SQLite 3.45引入了JSONB二进制格式。现在JSON函数默认将BLOB输入解释为JSONB格式,而非之前的隐式文本转换。
  • 影响范围:任何使用readfile()函数(返回BLOB)或将JSON数据存储为BLOB类型列的代码都可能受到影响。

各方观点

  1. 用户(nalgeon等):认为这是一个破坏性变更。尽管旧版本行为与文档不符,但该行为已存在多年并被广泛使用,变更应在发布说明中明确指出。
  2. SQLite开发者(Richard Hipp)
    • 初始观点:承认旧版本存在文档未记载的错误行为。修复此错误以支持JSONB格式是正确之举。
    • 后续决定:鉴于此变更对用户造成了实际困扰,将在3.45.1版本的文档中明确支持旧的隐式行为,将BLOB到TEXT的隐式转换定义为支持的功能。
    • 提供过渡方案:发布了-DSQLITE_JSON_BLOB_INPUT_BUG_COMPATIBLE编译选项以临时恢复旧行为。

解决方案与变通方法

  • 立即修复(代码层面):使用CAST(... AS TEXT)显式转换BLOB。
    SELECT CAST(readfile('data.json') AS TEXT) -> 1;
    
  • 长期解决方案(SQLite层面)
    1. 在3.45.1及后续版本中,通过更新文档,将BLOB输入隐式转换为TEXT JSON的行为正式确定为支持的功能。
    2. 考虑为readfile()等函数添加选项或新函数(如readfileastext()),以便更方便地读取文本文件。

讨论延伸

  • 文档与实现:讨论强调了遵循文档的重要性,但同时也承认实际使用中,长期存在的隐式行为(即使与文档矛盾)可能被广泛依赖。
  • 版本发布流程:社区讨论了预发布版本测试的重要性,以及在正式版发布中更清晰地记录破坏性变更的必要性。
  • 未来改进:有用户建议为JSONB格式添加明确的二进制魔数,以便与普通文本数据区分,避免类似误判。
32. Launch HN: Diversion (YC S22) – Cloud-Native Git Alternative
33. AI Art Is the New Stock Image (ia.net)

AI艺术:新的库存图片

AI生成的图像快速、易用且初看效果良好,已迅速取代传统库存图片的使用。但正如所有廉价便捷的事物,它们伴随着明显的折衷。本文对纯AI生成图像进行了简要批判,指出其五大核心问题。

1. 易于识别

人们通常能识别出AI生成的图像,即便技术先进,也总带有一种“PS5游戏过场动画”般的质感。例如,模仿艺术家Aphex Twin风格的AI作品,因扭曲的构图和无意识的拼贴感,反而显得廉价过时。当某种风格(如怪异拼贴)能被轻易、廉价地批量生成时,它就失去了独特性和价值。此外,AI常将不同类别事物强行混合,产生一种“机器人糖果热潮”式的、过度甜腻的视觉效果。

影响:平庸的AI图像会拉低内容的整体质量。使用它们会让受众质疑:“如果他们用廉价的AI做图片,其他内容是不是也一样?”从而损害内容的可信度和创作者的形象。

2. 千篇一律

许多AI图像在视觉语言上高度相似。无论是模仿50年代低俗小说封面的风格,还是带有激光彩虹和乱码字符的效果,都迅速被识别为AI产物并显得陈旧。当某种风格制作成本低廉,其经济和信息价值就会降低。

影响:使用同质化的AI图像会让你的内容淹没在相似性的海洋中,难以脱颖而出。关键在于,图片使用不应是无条件的“必需”,而应是基于内容特定需求的深思熟虑的选择。

3. 缺乏情感

AI图像常常缺乏真实照片或定制图形所蕴含的情感和细节触觉,甚至会引发诡异感。文章用《天外魔花》比喻:AI就像制造没有灵魂的外星克隆人。计算机不理解其所为,其生成过程如同癌细胞般无意识地复制图案,这常导致图像产生一种无意义、令人不安的“恐怖谷”效应。

影响:图像通过其元素、安排、风格和语调来讲述故事。若图像流露出诡异感,必将影响整体的沟通效果。

4. 伦理问题

使用AI图像会引发关于文化偏见、真实性和版权的伦理与法律问题。例如,训练数据可能导致生成更多白人形象的倾向;生成模仿已故艺术家风格的图像,也被认为是一种缺乏创意的做法。即使将图像转为黑白以隐藏AI特征,仍可能被识别。

影响:这些问题值得创作者深思,尤其是关注个体艺术家和文化多样性时。

5. 未来展望

尽管AI技术不断改进,可能未来难以与真实图像区分,但核心问题不变:图像的选择和使用必须服务于信息传达,这无法被工具完全替代。

结论

AI图像的出现不应被视为挑战,而是一个契机。它促使我们更严肃地对待视觉叙事,强调“人性化”的创意和精工细作的价值,正如摄影术催生了印象派和现代艺术。图像应获得与文字同等的审慎对待:精心选择,并置于合适语境中。AI应作为工具,而非替代思考和审美的捷径。最终,无论AI与否,好的图像讲述好的故事,而糟糕的图像则讲述乏味的故事。

34. Chinese hackers exploit VMware bug as zero-day for two years (www.bleepingcomputer.com)

无法生成摘要:提供的文章内容是网站访问错误信息,而非所需摘要的实质文章内容。错误信息显示,访问被网站所有者(www.bleepingcomputer.com)禁止,原因是IP地址所在的自治系统号(ASN 4837)被封锁。

关键信息提取

  • 错误代码:1005
  • 原因:IP地址所属的ASN被网站所有者禁止访问。
  • 网站所有者:bleepingcomputer.com
  • 安全措施:由Cloudflare提供性能和安全保护。

由于实质内容缺失,无法根据标题“Chinese hackers exploit VMware bug as zero-day for two years”生成准确摘要。如需该主题摘要,请提供完整的文章文本。

35. QuickTime as a Tape Archival Format (eschatologist.net)

本文讨论了将QuickTime作为磁带归档格式的可行性,以替代存在问题的传统 .tap 格式。

问题背景:在模拟和仿真领域,.tap 格式作为磁带归档容器存在诸多不足。

核心观点:QuickTime 并非仅是视频格式,而是一个通用的时序媒体容器格式。其核心结构允许多个具有独立时间基的轨道存在,每个轨道包含按特定编解码器(CODEC)解释的样本数据。这种设计本质上与线性、时序性的磁带介质相契合。

QuickTime 与磁带数据的映射

  1. 轨道表示:可以设立一个“磁带数据”轨道,其媒体信息描述原始磁带介质(如7轨、9轨)及样本解释方式。轨道中的样本即代表磁带上的数据块和标记
  2. 间隙处理:样本的不连续存储可自然地表示磁带间隙。
  3. 随机访问与重写:QuickTime 支持非破坏性编辑和覆盖写入,其“时间”位置概念可用于模拟磁带的重写操作,同时保留被覆盖的数据。
  4. 文件引用:利用 QuickTime 的“引用”功能,可以在轨道媒体中存储数据块引用目录,从而实现磁带文件的直接访问,无需遍历整个文件。

实现基础:现有的开源库 QTFileLib(源自苹果 Darwin 流媒体服务器)提供了读取和操作 QuickTime 文件低级原子结构与高级结构(如轨道、样本)的 API。尽管其写入支持不完整,但结构上易于添加,且可能移植为纯 C 语言。该库为实现基于 QuickTime 的磁带归档提供了技术可行性。

36. Big Pharma hiked the price of 775 drugs this year so far: Report (arstechnica.com)

根据《华尔街日报》的分析,制药公司今年迄今为止已将775种品牌药物的标价上调,中位数增幅为4.5%,超过了2023年美国3.4%的通货膨胀率。这项分析由非营利药物定价分析组织46brooklyn Research进行,更新了此前关于500多种处方药计划涨价的报告。

涨价药物包括知名产品,如诺和诺德(Novo Nordisk)生产的Ozempic和礼来(Eli Lilly)生产的Mounjaro,这两种药物用于II型糖尿病和减肥。Ozempic的标价上涨了3.5%,至近970美元/月供应;Mounjaro上涨了4.5%,至近1070美元/月供应。其他药物如诺华(Novartis)的哮喘药Xolair和葛兰素史克(GlaxoSmithKline)的带状疱疹疫苗Shingrix,涨幅超过7.5%,最高涨幅约10%。

对于某些药物,个位数百分比的涨幅相当于数百或数千美元。例如,福泰制药(Vertex Pharmaceuticals)的囊性纤维化治疗药Trikafta上涨5.9%,至26,546美元/28天供应;艾伯维(AbbVie)的银屑病治疗药Skyrizi上涨5.8%,至21,017美元。

制药公司通常在年初提高标价,并声称这些价格并非个人和健康保险计划实际支付的价格。相反,他们表示更高的标价有助于与药房中间商谈判折扣和回扣,这些中间商的收入和交易不透明。药企将涨价归因于市场条件、通货膨胀和药物价值,但这些策略总体上增加了医疗保健成本。

37. Battery-free self-powered sensor harvests magnetic energy (news.mit.edu)

MIT研究人员开发了一款无需电池、能够从环境中收集能量的自供电传感器。该传感器通过捕获电线周围空气中产生的磁场能量来运作,只需将其夹在通电电线(例如为电机供电的电线)上,即可自动收集并储存能量,用于监测设备温度等数据。

核心优势与应用场景 由于无需更换电池或特殊布线,该传感器特别适合嵌入难以触及的位置,如船舶发动机内部等。它可以长期自动收集机器功耗和运行数据,显著降低安装和维护成本。例如,在船舶系统中,持续监测泵的振动可实时反馈轴承健康状况,但传统传感器供电困难。这类能量收集系统使得各类诊断传感器的加装成为可能。

技术挑战与解决方案 研究团队成功应对了三大关键技术挑战:

  1. 冷启动:系统无需初始电压即可启动电子设备。通过集成电路和晶体管网络,系统在储能达到一定阈值前不会开启,确保了足够的启动功率。
  2. 高效储能与转换:为避免使用电池(会增加复杂性并存在火灾风险),系统采用了电容器组进行内部储能。电容器比电池更简单,可根据安全要求和空间条件调整。设计时确保电容器足够大以存储启动能量,但又足够小以避免充电时间过长,同时能在长时间闲置后仍保持能量。
  3. 动态能量管理:开发了控制算法,由微控制器(能量管理接口的“大脑”)持续监测、分配设备收集、储存和使用的能量。它像自行车换挡一样,动态调整电子负载,以最大化能量收集,并使能量供给与传感需求相匹配。

设计框架与实例 研究人员在《IEEE传感器杂志》上发表论文,提供了一套设计指南,帮助工程师平衡环境中的可用能量与传感需求。该框架不仅适用于收集磁场能量的传感器,也适用于利用振动或太阳能等其他电源的设备。作为实践示例,他们构建了一个基于现成温度传感器的能量管理电路。该设备收集磁场能,持续采样温度数据,并通过蓝牙发送到智能手机界面。

未来展望 研究人员未来计划探索更节能的数据传输方式(如光学或声学),并更精确地建模预测系统的能量输入与传感器能耗,以收集更全面的数据。他们希望将系统做得更小以便应用于狭窄空间(如电机接线盒内),并利用人工智能工具进一步优化系统能耗。

背景与支持 该工作部分得到美国海军研究办公室和格兰杰基金会的支持。外部专家认为,论文对实用的自供电传感器节点内部应包含的内容提供了详实的文档,其设计指南(特别是冷启动部分)对工程师设计自供电模块极具参考价值。

38. Haier Europe Eases Off on Legal Threat and Seeks Dialogue (hackaday.com)

海尔欧洲减轻法律威胁,寻求对话

最初,海尔欧洲向Home Assistant平台hOn插件的开发者[Andre Basche]发送了停止并终止的法律通知,要求其下架相关代码仓库。然而,事件随后出现转折:海尔欧洲的品牌与物联网负责人发出了一封更为友好的信函,表达了希望开启对话以寻求双方都能接受的解决方案的意愿。

此最新进展在GitHub上的相关议题以及[Andre]为跟踪事件后续而创建的“下架常见问题与时间线”文档中均有详细说明。目前,情况展现出一定的希望,特别是鉴于海尔美国分公司并未参与最初发起的法律行动。

在最初的停止通知引发混乱后,许多公众并未清楚是海尔旗下的哪个实体采取了行动。事实表明,作为独立法律实体的海尔欧洲似乎是独自做出了这一决定,而海尔美国方面则与之保持了距离。在相关的Reddit讨论中,有用户指出,海尔美国旗下的通用家电多年来一直提供本地API服务。这使得海尔欧洲成为唯一采取此举的一方,即便其现在试图进行一些损害控制。

面对这一连串的发展,外界希望海尔欧洲确实能与社区达成友好的解决方案,无论是允许继续使用现有API,还是合作开发一个本地API。

39. Garden Light Turned Mesh Network Node (hackaday.com)

文章摘要:花园灯改造为Mesh网络节点

本文介绍了如何将廉价的太阳能花园灯改造为基于LoRa技术的Meshtastic网络节点。核心要点如下:

改造对象与优势

  • 来源:使用售价15美元的Harbor Breeze太阳能LED灯。
  • 关键优势:该灯具拥有宽敞的太阳能面板外壳和集成的18650电池座,具备防水特性,便于更换电池。

改造过程

  1. 核心组件:使用RAKwireless模块化开发板作为主控设备。
  2. 电路连接:将开发板接入灯具原有的充电电路。尽管原装充电电路效率可能不高,但足以实现功能,后续也可替换为更优质的充电板。
  3. 天线安装:通过面板安装的SMA尾纤连接器添加了外部天线,以增强信号。

项目背景:Meshtastic

  • 目标:利用基于LoRa的网状网络实现仅文本通信。
  • 特点:采用现成、经济的设备和开发板构建,成本低廉。
  • 发展:该项目在全球范围内迅速发展,众多爱好者已建立各自的网络。

相关实践

文章提到,将花园灯用于电子项目并非首次:

  • 曾有项目为PIR太阳能灯添加MQTT功能并设计节能电路。
  • 也曾将其作为基于Attiny85项目的电源。

总结

该项目展示了如何利用廉价消费品(太阳能灯)的实用部件(防水外壳、太阳能板、电池),结合开源硬件和软件(RAKwireless开发板与Meshtastic),快速搭建一个低成本、低功耗的远距离通信节点,体现了开源社区在资源利用和网络普及方面的创新实践。

40. The lazy technologist's guide to weight loss (dberkholz.com)

懒惰技术人减肥指南:以最小努力实现健康体重

本文作者分享了自己在8个月内减重60磅的经历,旨在通过研究驱动、最低努力的方式,从久坐不动变得健康,并追求长期的健康寿命。

核心理念:高效、低努力

作者将减肥类比为程序员解决问题:寻找最高效、最省力的方法。其目标是达到研究指出的五个长寿关键因素中的三项:保持健康BMI(18.5-24.9)、每日30分钟以上中高强度运动、以及高质量饮食(处于前40%)。他初始体重240磅(BMI 31.7),目标为185磅(健康范围上限)。

主要方法:热量缺口是关键

研究表明,创造热量缺口是减重的根本。

  1. 主要靠饮食而非运动:作者认为,通过饮食减少热量摄入比通过运动消耗热量更高效、更可行。例如,减少每日1500卡摄入比通过剧烈运动消耗等量热量容易得多。
  2. 设定明确目标:为健康减重(每周2磅),需每日创造约1000卡路里的缺口。基于其每日约2450卡的消耗量,目标摄入定为约1450卡。
  3. 调整食物选择:不采用极端节食法(如生酮、阿特金斯),而是改变饮食频率和内容。减少高脂、高糖、加工食品,增加白肉、海鲜、沙拉、蔬菜和全谷物摄入。关键技巧:不完全禁止喜爱的食物(如每周一次减配汉堡),以维持长期动力和生活质量。
  4. 啤酒的处理:为保持适量饮酒习惯(研究显示与长寿相关),作者转向低酒精、低卡路里啤酒,并利用公式估算啤酒热量,或选择更“高效”(酒精提供热量比例更高)的啤酒。终极优化则建议选择伏特加苏打等低卡混合饮料。

具体计划与执行

  • 间歇性禁食:自然形成18:6的禁食模式(仅在中午12点至下午6点间进食),跳过了本就简单的早餐。
  • 每日饮食示例(总计约1450卡):包括健康午餐、下午零食、少量甜品、适度晚餐及1-2杯淡啤。用水应对饥饿感,并运用心理暗示。
  • 热量追踪:初期心算,后期使用MyFitnessPal应用辅助记录。

遇到的挑战与调整

  • 平台期:减重40磅后进入平台。作者意识到,体重下降导致每日消耗热量减少,因此需进一步减少摄入或增加消耗。
  • 过低摄入的风险:尝试将摄入降至1200卡时,严重影响生活质量并可能引发代谢适应(身体进入“节能模式”)。作者通过引入适度运动(如散步) 来平衡,在锻炼日可将摄入提高至1400卡。
  • 蛋白质的重要性:学习发现,高蛋白饮食(占总热量25%-30%)有助于在减重期间保留肌肉。作者增加了低卡高蛋白食物(如希腊酸奶、鸡蛋、鸡胸肉、海鲜、扁豆等)的摄入,并注意选择低汞、可持续捕捞的海产品。

总结与下一步

  • 成功要素:持久坚持、不彻底禁止任何食物、仅减少不健康食物的频率、灵活调整计划。
  • 成果:8个月减重60磅,持续向最终目标(约165磅,体脂率10%)努力。
  • 未来计划:达到目标体脂后,将调整饮食至轻微热量盈余模式,以支持增肌。
41. Reverse Engineering the TouchBar Screen and MIPI DSI Primer [video] (www.youtube.com)

视频页面摘要:Reverse Engineering the TouchBar Screen + MIPI DSI Primer

基本信息

  • 频道:Wenting Channel(@nbzwt)
  • 发布日期:2024年1月21日
  • 观看次数:13,224次
  • 点赞数:632
  • 订阅者数:13.4K
  • 视频ID:5TPBesaSkZ8

视频描述

这是一个与Yukidamayaki-san合作的项目,目的是逆向工程TouchBar屏幕并用微控制器驱动它。描述中提到可以在GitLab上找到文档、代码和电路板设计(https://gitlab.com/yukidama/schlitzblende)。更多参考资料可在视频末尾找到。

AI生成的摘要

Wenting Channel使用逻辑分析仪分析了TouchBar屏幕的引脚定义和低功耗初始化序列。该过程涉及在没有数据手册的情况下,识别数据包和硬件需求,以成功驱动这个独特的Apple组件。

相关视频

页面列出了多个相关视频,主题包括:

  • 制作M.2 LED矩阵
  • 微处理器逆向工程
  • 自制全画幅CCD相机
  • LVGL性能优化
  • 硬件逆向入门(UART和Shell)
  • MIPI DSI LP模式初始化数据解码
  • 智能电视遥控器逻辑分析仪逆向
  • 固件提取(SPI NOR Flash)
  • ARM固件逆向工程

技术内容

该视频属于硬件逆向工程和嵌入式显示接口技术领域,涉及MIPI DSI(移动行业处理器接口显示串行接口)协议的入门知识,以及对Apple TouchBar OLED屏幕的逆向分析。

42. TextAnalysisTool.NET (textanalysistool.github.io)

TextAnalysisTool.NET 概述

TextAnalysisTool.NET 是一款免费程序,旨在快速、高效地查看、搜索和导航大型文件。它通过用户可定义的过滤器提供对数据的可操纵视图,以便精确显示所需信息。

核心功能与价值

  • 解决的问题:分析大量文本数据时,使用标准编辑器的“查找”功能或“书签”功能往往不够高效,难以对比或筛选相隔较远的相关行。
  • 提供的解决方案:一个专为高效处理大文件而设计的工具,允许用户通过过滤器轻松操控视图。

关键特性

  1. 过滤器系统

    • 在显示文件内容前,将所有行通过一组用户定义的过滤器进行处理。
    • 可以淡化或隐藏不满足任何过滤器的行。
    • 过滤器条件包括:包含子字符串、匹配特定标记类型、或匹配正则表达式。
    • 每个过滤器可关联自定义的文本和背景颜色,以突出显示匹配行,便于区分。
    • 提供两种类型的过滤器:
      • 包含过滤器:用于筛选出想看到的行。
      • 排除过滤器:用于移除不想看到的行,可进一步细化搜索结果。
  2. 标记功能

    • 用户可以用八种不同的标记类型中的任何一种或多行进行标记。
    • 可在相同标记的行之间快速导航,或添加“按标记过滤”来仅查看这些行。
  3. 查找功能

    • 支持在文件中搜索文本(字面字符串或正则表达式)。
    • 查找历史记录方便将查找字符串快速转换为过滤器。
  4. 效率与便利性

    • 可以保存和加载过滤器集以节省时间。
    • 支持多种文本导入方式:打开文件、从其他应用拖放、粘贴剪贴板内容。
    • 可将过滤后的行复制到剪贴板或保存到文件,以便分享结果。
    • 支持多种文件编码:ANSI、UTF-8、Unicode 和 Big-Endian Unicode。
    • 专为高效处理大文件而设计。

资源与许可

  • 许可证:MIT
  • 提供资源:ReadMe.txt、文档、介绍性博客文章、相关博客内容、问题追踪器。
  • 下载:提供包含多个版本(从针对 .NET 1.1 到 .NET 4.8+)的压缩包。
43. DeepMind Co-Founder: AI Is Fundamentally a "Labor Replacing Tool" (gizmodo.com)

摘要

  • 提供的内容:这是一个HTML文档,主要用于Cloudflare安全挑战页面。页面结构包括标准的HTML元素、样式表和脚本,旨在通过JavaScript和cookies验证用户访问,防止自动化请求。
  • 文章主题:从标题“DeepMind Co-Founder: AI Is Fundamentally a 'Labor Replacing Tool'”推断,文章可能讨论DeepMind联合创始人对人工智能的看法,强调AI作为劳动替代工具的核心性质。然而,由于Cloudflare保护,实际文章正文未在提供内容中显示。
  • 页面目的:该HTML页面的主要功能是执行Cloudflare挑战流程,通过脚本动态加载挑战模块,验证用户身份以确保安全访问。它使用内容安全策略(CSP)限制资源加载,并包含元数据如页面刷新和重定向设置。
  • 技术细节
    • 页面依赖JavaScript执行挑战脚本,来源为Cloudflare CDN。
    • 包含安全策略(如content-security-policy)来限制脚本、样式和连接的源。
    • 使用动态重定向机制(通过history.replaceState)管理挑战令牌。
    • 设计为响应式布局,适应不同屏幕尺寸。
  • 内容缺失:由于这是一个访问保护页面,未包含文章的实际文本内容。用户需启用JavaScript和cookies以绕过挑战,访问完整文章。

总结:提供的文件是一个Cloudflare挑战页面,用于安全验证;基于标题,文章主题涉及AI作为劳动替代工具的观点,但具体内容因保护措施而不可用。页面结构和技术实现侧重于安全访问控制。

44. Organic Syntheses (2023) (www.science.org)

《有机合成》百期纪念及其价值

  • 核心地位:《有机合成》是有机化学家科研生涯的重要组成部分,以详细、可靠地制备实用化合物或展示新技术而闻名。
  • 独特优势:其准备方法描述极为详尽,关注影响产率和纯度的反应变量,并且每项实验均由独立实验室团队核实,确保了极高的可靠性和可重复性。若无法重现其中的程序,通常是操作者自身的问题。
  • 对比其他文献:与其他质量参差不齐的有机化学文献相比,《有机合成》避免了普遍存在的问题,如:
    • 对反应便捷性和普适性的过度夸大。
    • 未意识到或未注明的关键反应变量(如试剂形态、微量水分影响)。
    • 产物结构的错误指认。
    • 存在学术欺诈。
  • 历史见证:翻阅历年卷册可以观察到合成有机化学技术的演变,从早期自制玻璃装置发展到现代金属催化反应等新方法。其程序来源兼有学术界和工业界(工艺化学)。
  • 未来发展:该系列计划引入“OS视角”、“OS经典”和“OS技术”等新栏目。作者特别期待“技术”部分,认为其直接突出新方法本身(而非仅通过具体化合物制备演示)具有重要价值。
  • 总结与赞誉:《有机合成》为化学和科学做出了独特贡献,其编辑、撰稿人和整个机构值得祝贺与持续支持。
46. A Man Who Coined the Word "Robot" Defends Himself (spectrum.ieee.org)

Karel Čapek 为其创造的“机器人”概念辩护

捷克作家卡雷尔·恰佩克(Karel Čapek)与其兄弟约瑟夫共同发明了“机器人”(robot)一词。该词首次出现于1921年恰佩克的戏剧《R.U.R.》(罗素姆万能机器人)中,剧中“机器人”指通过化学合成方式创造的、能模仿人类特征与行为的人造生命体,本质上是有机物质,而非机械装置。

然而,该词迅速被大众理解为具有金属骨架和齿轮的机电装置,这与恰佩克的原始构想大相径庭。恰佩克对此感到不满,于1935年在报纸专栏上撰文《机器人的作者为自己辩护》阐述其观点。

恰佩克的核心观点:

  1. 拒绝机械论:他强烈反对将机器人视为机械装置的观点,认为那过度推崇了技术,是对生命的侮辱。他笔下的机器人并非由金属和齿轮制成。
  2. 基于化学的生命设想:他受生物化学启发,设想机器人是通过化学途径合成的新物质基础。这种物质行为类似生命,是生命可能演化出的另一种途径,但并非实验室中创造的真实生命,而是一种生命之谜的载体。
  3. 追求灵魂:恰佩克认为,机器人的完整实现需依赖“灵魂”的赋予,其创作源于对“机械时代迷信”的抗议,体现了形而上学的谦卑,而非技术上的狂妄。
  4. 接受现实:他承认,现代世界更认同技术性的机械机器人,因为人们对机器的信任超过对生命的信任。他虽不认同,但无奈接受了自己的原始概念已被取代的事实。

当代呼应与新书出版: 恰佩克的观点与当代部分研究者的理念不谋而合。布拉格化学技术大学的吉特卡·切伊科娃教授的研究方向即为“化学机器人”,她设计的液体机器人(由微粒构成、能展现自主行为的人造细胞)被认为更贴近恰佩克的原意。她认为,定义机器人不应局限于机电系统,而可更宽泛地理解为“看似具有生命但非生命、拥有独立具身智能的实体”。

恰佩克1935年的专栏文章被收录于新书《R.U.R.与人造生命视野》中。该书收录了《R.U.R.》的新译本及20篇探讨该剧背景下机器人学、哲学、政治和人工智能的论文。书的编辑切伊科娃教授指出,她的研究恰恰呼应了恰佩克对“化学机器人”的构想。

结论: 恰佩克最初的“机器人”是基于化学合成的有机生命体概念,而非机械造物。尽管“机器人”一词的含义已被技术时代重新定义,但恰佩克对其原始创作理念的辩护,以及当代类似“化学机器人”或“液体机器人”的研究,持续引发关于“机器人”本质定义的哲学与科学思考。

47. Graeber: Ancient History Shows How We Can Create a More Equal World (theanarchistlibrary.org)

格雷伯:古代历史表明我们如何能创造一个更平等的世界

文章挑战了传统历史叙事,即城市化和技术进步必然导致社会不平等。作者依据新兴的考古证据,提出许多古代城市实际上是以高度平等的方式组织起来的,这为我们思考和建设更公平的现代社会提供了新的可能性。

传统历史观点:不平等的必然性

  • 卢梭的叙事:认为农业革命和城市兴起是人类不平等、父权制、战争和官僚制度出现的根源。
  • 当代大历史学者(如赫拉利)继承了此观点,认为在资源盈余的大型社会中,精英阶层和不平等是自然出现的结果。
  • 考古旧证据:过去似乎证实了这一点,早期城市常伴随着宫殿、神庙和明显的社会分层,使得接受不平等成为复杂社会发展的代价。

新的考古发现:平等城市的可能性

  • 核心论点:过去几十年的考古发现表明,许多早期城市并未遵循“技术/城市化→不平等”的模式。
  • 关键案例
    • 美索不达米亚、中国、玛雅等地区:一些最早的城市人口自我治理了数个世纪,没有出现明显的宫殿、神庙或统治阶层迹象。
    • 乌克兰和摩尔多瓦的早期城市(如Taljanky,约公元前4100-3300年):规模可与美索不达米亚城市媲美,但呈现出截然不同的去中心化实验。城市呈圆形规划,有用于公共集会的建筑,在长达八个世纪里缺乏战争或社会精英崛起的证据。其复杂性体现在维持社会自由和地方决策的政治策略上。
    • 特奥蒂瓦坎(约公元300年后):最初的金字塔和暴力仪式之后,城市转向为约十万居民提供高质量住房,展现了资源分配的平等化转变。
  • 对“城市”定义的反思:学界有时将这些遗址称为“巨型聚落”而非城市,暗示其不够“复杂”。文章借厄休拉·勒古恩的小说指出,我们倾向于将幸福的社会视为“简单”,但实则它们同样复杂,只是成功避免了傲慢与残酷的明显展示。

对当代的启示

  • 现状问题:自2008年金融危机以来,社会不平等加剧已成为共识。城市(如开普敦、旧金山)日益成为不平等困境的象征,棚户区和无家可归者现象普遍。
  • 历史提供的新视角:新发现表明,大规模、复杂的城市生活并不必然决定我们要生活在不平等中。历史证明了高度平等的都市社会是可能存在的。
  • 未来的方向:文章呼吁一场新的“城市革命”,以创造更公正和可持续的生活方式。支持去中心化、更绿色城市环境的技术已然存在。历史上存在过多种城市形态(如原型花园城市、超级街区),等待我们去重新发掘和运用。面对不平等和气候灾难,我们需要的是政治想象力,因为历史表明,我们寻求的“勇敢新世界”曾经存在过,并且可以再次实现。
48. Gem adds support for creating state machines for attributes on any Ruby class (github.com)

State Machines Gem 概述

state_machines gem 为 Ruby 类的属性添加状态机支持。它本身专注于定义状态机逻辑,但提供多个集成包(如 Active Record、Mongoid)以实现状态持久化。

主要功能

  • 状态机定义:支持在任意 Ruby 类中声明状态机。
  • 状态与事件:可定义初始状态、命名空间状态、事件及转换。
  • 回调机制:支持 before_transitionafter_transitionaround_transitionafter_failure 回调。
  • 条件与守卫:转换可附带条件(if/unless),并支持跨状态机协调(如 if_stateunless_state)。
  • 异步支持:通过 async: true 开启异步状态机,适用于并发环境(需 MRI Ruby 3.2+,JRuby/TruffleRuby 会回退同步)。
  • 并行事件:允许同时触发多个事件(fire_events)。
  • 路径分析:可查询可用的转换路径及状态。
  • 人类可读名称:提供 human_state_name 等方法生成友好名称。
  • 动态定义:支持在运行时基于外部数据源动态构建状态机。
  • 测试辅助:提供 TestHelper 模块,包含断言方法(如 assert_sm_state)用于 Minitest/RSpec 测试。

基本用法示例

class Vehicle
  state_machine :state, initial: :parked do
    event :ignite do
      transition parked: :idling
    end
    # 更多状态、事件、回调定义...
  end
end

vehicle = Vehicle.new
vehicle.state       # => "parked"
vehicle.ignite      # => true
vehicle.state       # => "idling"

高级功能

协调状态管理

状态机之间可通过守卫选项相互依赖:

  • 单机守卫:if_stateunless_state
  • 多机守卫:if_all_statesif_any_state 等。

异步状态机

启用 async: true 后,事件会生成异步版本(如 ignite_async),需在 Async 上下文中调用。支持线程安全,但依赖 asyncconcurrent-ruby gem。

测试辅助

引入 StateMachines::TestHelper 后,可使用标准化断言:

assert_sm_state(vehicle, :parked)
assert_sm_transition(vehicle, :ignite, :idling)
# 支持多状态机、持久化测试等

语法灵活性

  • 符号与字符串:推荐使用符号定义状态/事件,但字符串也可用,需保持类型一致。
  • 显式与隐式转换:既可显式调用事件方法,也可通过设置 state_event 属性并触发保存动作(如 ActiveRecord 集成)隐式触发。
  • 静态与动态定义:状态机通常静态定义,但也支持从外部源(如数据库)动态加载转换规则。

可视化与文档

  • 绘制状态机图:YourClass.state_machine.draw
  • 相关 gem:state_machines-graphviz(图形化)、state_machines-yard(文档生成)、state_machines-rspec(RSpec 匹配器)。

安装与依赖

  • 安装gem install state_machines 或添加到 Gemfile。
  • 支持平台:Ruby (MRI) 3.0.0+。
  • 异步依赖:仅 MRI Ruby 3.2+ 需要 asyncconcurrent-ruby
49. Ford's new 48-inch digital dashboard is a lot of Android for one car (www.theverge.com)

福特推出了基于Android Automotive OS的48英寸4K全景数字仪表盘,成为其车辆阵容的醒目创新。该系统集成了Google原生应用(如地图和助手),并支持5G无线更新以实现个性化设置和模块化显示。然而,这一“屏幕最大化”趋势也引发了安全专家对驾驶分心的担忧。

核心创新:48英寸全景屏与Android系统

  • 显示屏:横跨整个仪表板的曲面全景屏,由至少两块屏幕拼接而成,并非触控屏。它分为三个区域:驾驶者前方的“关键信息区”(仪表盘)、中央的“辅助信息区”(导航等)和副驾驶侧的“一瞥信息区”(音乐、天气小部件等)。
  • 操作系统:放弃BlackBerry QNX,改用Android Automotive OS。此举旨在提供无缝集成的Google生态体验,同时保留福特自身的系统特色(原Sync系统不会立即淘汰)。
  • 个性化与连接:系统能识别驾驶员并自动调整设置。显示内容高度可定制,用户可选择信息多寡。5G连接支持软件远程更新。

设计理念与安全考量

  • 福特高管将显示屏视为“软件的窗口”,旨在通过丰富的功能减少驾驶员使用手机的需求。
  • 为减少分心,全景屏仅显示有限信息,动画受到控制,且所有控制均通过下方11.1英寸的中控触摸屏完成,设计上只需驾驶员轻微低头即可查看。
  • 福特通过内部安全准则和数据分析(研究用户交互习惯)来平衡数字界面与物理控制,认为这是比新兴科技公司更严谨的做法。

功能与兼容性

  • 娱乐功能:车辆停放时可使用视频流媒体(如YouTube、Amazon Prime)、网页浏览(Vivaldi/Chrome)和游戏(支持蓝牙控制器)。
  • 手机镜像:福特明确继续支持Apple CarPlay和Android Auto,并宣称拥有行业最佳的CarPlay集成体验,允许将地图投射到全景屏。
  • 行业对比:福特未追随某些厂商完全摒弃手机镜像服务,也未大力宣传生成式AI等最前沿概念,但其系统在功能整合上已接近苹果下一代CarPlay的设想。

行业背景与挑战

  • 福特的新系统旨在应对J.D. Power调查指出的车主满意度下降趋势,该趋势部分归因于日益复杂的数字界面和软件问题。
  • 将更多控制功能(如空调)移至触摸屏的做法在特斯拉引领下已成行业趋势,但被安全专家批评。福特试图通过整合物理与数字设计团队来找到平衡。
50. Wind River Linux (www.windriver.com)

Wind River 公司核心产品与解决方案概览

Wind River 提供一系列用于嵌入式系统、边缘计算和云基础设施的软件平台、工具与服务。其产品组合主要围绕以下核心领域:

1. 嵌入式平台

  • VxWorks:一个安全认证的实时操作系统,以其确定性、高性能和可靠性著称,适用于任务关键型嵌入式系统。
  • Wind River Linux:基于 Yocto 项目的嵌入式 Linux 商业发行版,提供安全漏洞监控、长期维护与支持。
  • Helix 虚拟化平台:嵌入式虚拟化平台,支持在单个系统级芯片上同时运行多个操作系统(如 VxWorks、Linux 和 Android)。

2. 企业平台

  • eLxr Pro:基于 Debian 的企业级 Linux 发行版,专为边缘计算设计,提供长期维护与支持。
  • Wind River Cloud Platform:高可用、经济高效的开源云基础设施,用于运行虚拟化和容器化工作负载。

3. Studio 工具套件 该套件旨在为嵌入式和边缘系统的软件开发、测试、部署和管理提供全生命周期支持,主要包含:

  • 创建与构建:提供标准化环境与流程自动化工具(如 Workspaces、Diab Compiler、Pipeline Manager)。
  • 测试:通过仿真与物理环境(如 Studio Testing Suite、Intel® Simics®)自动化和加速软件测试。
  • 管理:实现设备、边缘系统和云基础设施的软件自动化部署、编排与更新(如 OTA Updates、Conductor)。
  • 监控:通过分析分布式设备与服务器数据(如 Digital Feedback Loop、Analytics)提供跨域可视化和可操作的洞察。

4. 其他关键领域

  • 行业案例:展示其解决方案如何帮助客户实现目标。
  • 服务:提供相关专业服务。
  • 安全:设有安全中心,提供最新安全警报、CVE 更新和安全信息。
  • 支持:提供支持网络,用户可访问文档、下载软件、提交请求等。

注意:本次提供的网页内容在“行业案例”、“服务”、“支持”及“关于我们”等部分仅包含标题或结构框架,未显示详细内容摘要。