Weekly#25

新的一周,祝你过得开心啦 (ノ>ω<)ノ

News | Article

Chat is a bad UI pattern for development tools

代码迫使人类精确。这是好事–计算机需要精确。但这也迫使人类像机器一样思考。

人工智能本应改变一切。最后,纯英语可以成为一种编程语言–一种人人都会的编程语言。没有语法。没有规则。想说什么就说什么。

当前的人工智能工具假装编写软件就像对话一样。其实不然。它就像编写法律。你使用的是英语,但你要定义术语、制定规则,并管理你所说的每句话之间复杂的互动关系。

这就是核心问题所在。如果不明确自己想要什么,就无法构建真正的软件。历史上每一个成功的编程工具都反映了这一真理。人工智能曾短暂地欺骗了我们,让我们以为只要通过聊天就能实现软件的运行。

当你的意图被记录在文档中,而不是散落在聊天记录中时,英语就成了一门真正的编程语言:

  • 您可以一次性查看整个系统
  • 您可以明确并改进您的意图
  • 您可以正确跟踪更改
  • 团队可共同开发系统
  • 要求成为自己的质量检查
  • 变化始于明确的规范

通过聊天的方式使用 LLM 构建,确实容易丢失一些上下文,聊天结束后,之前是怎么构建的可能就无从追溯,尽管有聊天记录,但也比较分散。

作者认为通过文档记录的方式,可以改善聊天带来的问题。

平时自己在使用 LLM 的时候也可以看看如何整理会话,便于调整和追踪,例如可以将 prompt 写在一个文件里,用文件去迭代 prompt?

S1: The $6 R1 Competitor?

让 LLM 思考更长的时间,它返回的结果就会更准确,更符合要求。

目前 LLM 通过将它的思考放在 <think>...</think> ,一旦过了 </think> 就会返回思考结果。

S1 通过多次替换 </think> 为 “wait”,延长了思维链,从而让 LLM 不断自省。

通过这种方法,他们的模型 s1-32B 在竞赛数学问题上的表现比 o1-preview 高出 27%。

而且 S1 的训练成本只有 6 美元,这使得可以非常方便且频繁地去微调模型,验证想法。

再说一遍,人工智能与政治密不可分,抱歉。

关于 OpenAI & Anthropic 的巨额资金,人们议论纷纷。

看到 S1 或 DeepSeek V3 等降低成本的创新,人们很容易认为 OpenAI & Anthropic 庞大的数据中心是在浪费钱。

我认为不是,拥有 10,000 台 H100 只意味着你可以做比 S1 多 625 倍的实验。

如果你认为人工智能的发展是国家安全的首要优势,那么你绝对应该希望有更多的资金投入到人工智能的发展中,使其发展得更快。

Source

S1 非常重要,因为它说明了当前开放式人工智能的发展速度。

如果考虑到 OpenAI 和 Anthropic 等公司的计算能力,那么人工智能发展的潜在真实速度就会让人瞠目结舌。

S1 不是 R1 或 o1 的复制。这些都是纯强化学习(RL)的演示。

S1 表明,有监督的微调(SFT)同样显示出巨大的潜力。

这意味着,研究人员在推进推理时间扩展方面有多种途径可以研究。

Source

Personal Software Is Becoming A Trend

现在用 LLM 可以轻松的构建一个应用,作者认为或许以后会有越来越多的人,针对自己的独特需求,自己构建应用,而不是依赖别人的应用。

The Anthropic Economic Index

Anthropic Economic Index 是一个旨在理解 AI 对劳动市场和经济长期影响的倡议。

经济指数第一篇论文的主要发现是:

  • 今天,使用主要集中在软件开发和技术写作任务中。超过三分之一的职业(大约 36%)在至少四分之一的相关任务中使用 AI,而大约 4%的职业在其相关任务的四分之三中使用它。
  • AI 的使用更倾向于增强(57%),即 AI 与人类能力协作并增强其能力,而不是自动化(43%),即 AI 直接执行任务。
  • AI 的使用在与中高薪职业相关的任务中更为普遍,例如计算机程序员和数据科学家,但在最低和最高薪资的角色中则较低。这可能反映了当前 AI 能力的局限性,以及使用该技术的实际障碍。

Your AI can’t see gorillas

作者将一份数据给 LLM 分析,数据在图表上会绘制出一只大猩猩的图案。

作者让 LLM 看看能看到什么,但 LLM 只能分析数据,却看不到大猩猩。

随着使用 LLMs/agents 执行不同科学和技术任务的想法逐渐成为主流,了解它们的优缺点将变得非常重要。

在我看来,当前最明显的弱点是创建初始可视化时与分析上传的 PNG 可视化文件时的模式识别能力存在差异。

虽然这些模型能很好地创建可视化,但它们似乎并不能明确地 “看到” 它们,除非有提示。

此外,它们的数据分析能力似乎更侧重于量化指标和汇总统计,而较少关注数据的可视化结构。

在某些方面,这可以被看作是一种功能而非缺陷。

人类天生就能从云层中看到人脸,从随机噪音中看到趋势,而这些模型似乎恰恰相反。

Source

Tech's Dumbest Mistake: Why Firing Programmers for AI Will Destroy Everything

作者认为为人工智能解雇程序员会毁掉一切,原因是:

  • 初级程序员训练不足,过度依赖人工智能。我们将拥有一大波更像人工智能操作员而非真正工程师的程序员。
  • 那些解雇了工程师的公司将争先恐后地修复人工智能生成的代码留下的烂摊子。
  • 最优秀的程序员将非常稀少(也非常昂贵),只有最富有的公司才能负担得起。

不要放弃磨练自己的功底,不要过分依赖 AI。

现在,让我们来谈谈这一切中真正的赢家:那些预见到混乱即将来临并拒绝随波逐流的程序员。

他们没有接受 FAANG 的工作,而是深入系统编程、人工智能可解释性或高性能计算领域。这些人对技术的理解是人工智能无法复制的。

你猜怎么着?他们将变得非常昂贵。

公司很快就会意识到,人工智能无法取代经验丰富的工程师。

但到那时,工程师的数量会越来越少。

很多人将会自己创业,有些人将会深耕于利基领域,还有一些人则会忙得不可开交(或太有钱了),根本无暇顾及你那即将倒闭的软件部门。

想请他们回来?希望你有雄厚的资金和好运气。

剩下的几个认真的程序员的收费会让高管哭笑不得。

即使你成功聘用了他们,他们也不会留下来玩公司政治,也不会和无用的中层经理打交道。

他们会为你修复破损的系统,开出令人瞠目的高额发票,然后一走了之。

Source

A blog post is a very long and complex search query to find fascinating people and make them route interesting stuff to your inbox

你的在互联网的痕迹会吸引和你一样的人,通过写博客分享你的 “怪癖”,你就会找到那些和你有相同 “怪癖” 的人。

所以说尽情地写吧,不用担心写得如何,你的奇特之处就是你的有趣之处 :)

我输入的词语越精确、越小众,互联网就越能为我匹配到能与我建立有意义关系的人。

这种精确性对我来说很难,部分原因是我对交流方式的理解是通过阅读大众媒体形成的。

写给普通大众的文章,你需要宽泛、平淡一些。

我不想要大众。我想要的是一群特定的人,一群能够帮助我这个沉迷于某些智力问题的人前进的人。

我不知道这些人是谁。我只知道他们存在。因此,我的写作是一个搜索查询。

它的措辞必须能够找到这些人,必要时还能筛选出其他人。

Source

无论如何,通过追求自己的兴趣,你将走向复杂。

简单的事情不再让你感到惊讶。因此,你会把注意力转向更复杂的事物。

这是一种神奇的算法:做有趣的事情,就会神奇地对世界产生复杂的理解。

可悲的是,它还会把你引向一条很可能以孤独和啜泣结束的道路。

导致你走上这条路的原因是,引起你兴趣的特殊复杂性具有高度的特异性。

人们会对各种各样的事情感兴趣。

我从可靠的渠道听说,甚至还有人对巴西足球运动员的名字感兴趣!

如果你的兴趣越来越复杂,就意味着如果你过分追求这些兴趣,最终就会沉迷于你周围其他人都不关心的事情。

Source

博文就是一个搜索查询。

你写博文是为了找到你的族群;你写博文是为了让他们知道,他们应该向你的收件箱发送什么样的精彩内容。

如果你遵循常识,你所写的东西恰恰会帮助你找到这些人。

Source

RTFM or: how I'm (re-)learning to love documentation

作者年轻的时候会阅读很多的手册,游戏的,软件的都有。

但是后来有了 Stack Overflow, ChatGPT 以及作者身份的变化—从开发人员变成管理者,从单身变成父亲,他越来越少花时间看手册。

但是作者认为他的很多知识都是从阅读手册获得的,阅读手册学习也是一种能力,所以他想找回这个习惯。

作为一个书呆子,全文阅读技术手册和技术规范不仅是我身份的核心部分,而且我多年来从中获得的知识也应该是我工作价值的核心所在。

如果我失去了自己的优势,就会发生不好的事情–我最担心的就是自己会成为那种对自己的能力和实际知识过于自信的领导者。

Source

晚上留出时间学习—否则,无论我有多大的动力,也不会有机会。

Source

写 weekly,看书,学习也是,要给自己留一些时间出来。

They Thought They Were Free

一个环境在温水煮青蛙一样在改变置身其中的人,如果置若罔闻,不愿意去思考,或许最后就会成为那只被煮熟的青蛙,变成别人想你变成的样子。

政府与人民的分离、差距的拉大,都是在不知不觉中逐渐发生的,每一步都被伪装成(也许甚至不是故意的)临时紧急措施,或者与真正的爱国主义忠诚或真正的社会目的联系在一起。

所有的危机和改革(也包括真正的改革)都占据了人民的视线,以至于他们没有看到政府在整个过程中日益疏远的慢动作。

Source

“你的面包师朋友是对的,” 我的同事说,

“独裁统治,以及它诞生的整个过程,最重要的是转移视线。它为那些无论如何都不想思考的人提供了一个不思考的借口。

我说的不是你们的‘小人物’、面包师等;我说的是我的同事和我自己,请注意,是有学问的人。

我们中的大多数人都不愿意思考根本性的问题,也从未思考过。没有必要。

纳粹主义让我们思考一些可怕的、根本性的东西——我们都是正直的人——让我们忙于不断的变化和‘危机’,忙于‘民族敌人’的阴谋诡计,

不管是外部的还是内部的,让我们如此着迷,是的,着迷,以至于我们没有时间思考这些可怕的东西,这些东西在我们周围一点一点地增长。

我想,我们不自觉地心存感激。谁愿意思考呢?”

Source

一旦战争开始,政府就可以做任何 “必要” 的事情来赢得战争;“最终解决犹太人问题” 也是如此。

纳粹一直在谈论这个问题,但从来不敢实施,甚至在战争爆发前也不敢。

直到战争及其 “必要性” 让他们意识到可以逍遥法外。

国外那些认为对希特勒开战会帮助犹太人的人错了。

而那些在战争开始后还想着抱怨、抗议、抵抗的德国人,则是在赌德国会输掉战争。

这是一个漫长的赌注,没有多少人成功。

Source

Suspension of inbound parcels from China and Hong Kong

美国暂停从中国大陆和香港入境的包裹,不少美国的企业需要和中国供应商合作,现在他们都焦头烂额了。

问题是,我们怎么会让它发展到这一步?

为什么从来没有西方公司认真地替代 JLCPCB、PCBWay、JLCCNC 等公司?

有没有人问过自己,这些中国公司怎么会这么便宜?

JLCCNC 如何能用价值约 120 美元的原材料,通过 CNC 加工成我们指定的部件,再对部件进行阳极氧化处理,然后以约 120 美元的价格发往丹麦?这到底是怎么回事?

Source

在全球化之下,世界的每个人都有千丝万缕的联系,或许什么时候别的国家出的政策,就会影响到我们的一些生活。

希望世界和平。

The Mistakes of CSS

CSS 存在一些看起来有些怪的东西,但一直保留着,并不是维护人员不想改,而是如果改了就会影响到使用它的网站。

为什么不修复它们呢?可惜,这并不像修复某些东西那么简单。

人们已经考虑到这些怪癖来构建他们的网站,改变它们会破坏那些网站。

把它看作技术债务。

这就是我认为 CSS Working Group 值得大量赞扬的原因。

设计一旦发布就不可更改的新特性一定是一个令人紧张的经历,涉及不精确的科学。

并不是说我们没有看到规范在过去发生变化或演变——它们确实发生过——但第一次把事情做好所带来的价值是一种沉重的负担。

Source

How I learned to code with my voice

作者手疼痛到无法打字,于是她研究如何通过声音进行编程。

以前还分享过另一个人的: Hands-Free Coding

I Blog with Raw HTML

作者不依赖一些静态网站生成器(static site generator,SSR)写博客,而是通过一些方法将 markdown 转换成 HTML,因为它觉得这些平台都需要构建步骤,受限于 SSR 的约束。

我也有类似的倾向,希望减少一些外部依赖,写 blog 就是简单写一个文件,不用关心 SSR 的模版应该怎么用。

不过作者标题叫 "I Blog with Raw HTML", 让人以为他是直接写 HTML,实际上他还需要写 markdown 转换 HTML 的脚本,网页上也需要发送一些 JS 脚本,导致 Hacker News 大家并不太赞同他的观点。

除了用 HTML 写,还有人直接用 TXT 写博客,但是纯 TXT 阅读体验不是很好

也有个人说,他不再自己编写该死的 HTML了

The 2025 Pinterest Palette: This year’s trending colours

Pinterest 整理的 2025 年的流行色。

Marshmallow Test and Parenting

棉花糖实验很有名:一个小孩子在房间里盯着一个棉花糖。

如果他们等待 15 分钟,就会得到两块棉花糖,而不是只有一块。

有些孩子会戳棉花糖、舔棉花糖,或者直接狼吞虎咽。

其他人则想出了巧妙的办法来分散注意力–唱歌、闭上眼睛,甚至睡着。

结果–据说等待的孩子们在学校里取得了更高的成绩,生活得更好。

这个信息很明确:如果你能延迟满足感,你就能终生受益。

但后来的研究发现,这一结论存在严重漏洞。

Source

不是等待的孩子生活更好,而是生活更好的孩子,可能更能接受等待。

孩子们渴望可预见性。这就是为什么他们会连续 300 个晚上要求听同样的睡前故事。

这也是为什么如果作息时间毫无征兆地改变,他们会感到不安。

可预测性等于安全性。而安全能建立信任。

当他们信任我们时,他们就愿意等待、尝试和冒险。

所以,棉花糖测试的错误就在这里:它不仅关乎孩子的等待能力,还关乎成人创造一个值得等待的环境的能力。

如果作为家长和老师的我们不能始终如一,孩子又怎么会相信我们说的 “坚持住,会有更好的事情发生” 呢?

Source

那么,这里有什么启示呢?其实很简单:作为父母,我们为孩子定下了基调。

我们的行为、承诺和可靠性会影响孩子们对世界的看法。

我们是否为他们营造了一个可以安心等待的环境?

或者,我们是否在教导他们,他们需要在力所能及的时候抓住一切?

Source

想起了《杀死一只知更鸟》,书里的父亲就是一个很好的榜样,让孩子明白什么是正直,勇敢。

Tutorial | Resource

Beej's Guide to Git

一份 Git 教程。

这就直接引出了我们的目标:让我们理清这一切,从完全的 Git 新手提升到中级!我们将从简单的命令开始(据说),其中会掺杂一些操作理论。我们会发现,要正确使用 Git,了解 Git 在引擎盖下的工作至关重要。

我保证,在你读完本指南的部分内容后,你一定会开始欣赏 Git 并喜欢上它。

How to thrive in a ChatGPT world

无论好坏,LLMs 都将继续存在。

我们都在网上阅读它们生成的内容,大多数人都与 LLM 聊天机器人互动,许多人使用它们来生成自己的内容。

在一系列五到十分钟的课程中,我们将解释这些机器是什么,它们是如何工作的,以及如何在一个它们无处不在的世界中蓬勃发展。

您将了解这些系统何时可以为您节省大量时间和精力。您将了解它们何时可能会引导您走错方向。您还将发现如何看透炒作以辨别真伪。

拒绝成为受害者!普通人必备的账号安全防护法则

作者整理了一些账号保护的注意事项和方法。

How to Favicon in 2025: Three files that fit most needs

关于如何设置网站 Favicon 的教程。

Quant Wiki 中文量化百科

量化投资的一个知识分享平台。

量化投资(Quantitative Investing,简称 Quant)是一种以数学模型、统计分析和算法为基础的投资方式,是现代金融领域的重要分支。

量化交易(Quantitative Trading)由对冲基金、投行等机构主导,以数据驱动的方式进行市场分析和交易决策。借助计算机和算法,量化交易能够高效处理海量数据,快速捕捉市场中的套利机会和趋势。

MiniMind

2 小时完全从 0 训练 26M 的小参数 GPT!

此开源项目旨在完全从 0 开始,仅用 3 块钱成本 + 2 小时!即可训练出仅为 25.8M 的超小语言模型 MiniMind。

How they make money

可以看到一些大公司的资金来源和去向组成。

JJ Cheat Sheet

Jujutsu 是一个版本管理系统,有人整理了一份 cheat sheet 方便记忆对应的指令。

大学生活质量指北

这是一个由 Telegram 频道发起的调查启发的资料汇总项目,意在收集全世界各高校招生时不会写明但实实在在影响大学生活质量的详尽信息。

The European Accessibility Act for websites and apps by Martijn Hols

欧盟有法案,要求在欧盟运营的公司的网站和应用程序必须符合无障碍标准。

这个网站介绍了如何做好无障碍。

How to add a directory to your PATH

将目录添加到 PATH 中的一些方法。

Code Related

Creating an Angled Slider

创建倾斜滑块样式效果,效果看起来挺酷的。

Optimizing The Critical Rendering Path

一篇关于如何优化关键渲染路径的文章。

Dynamic Focus Zoom Effect with CSS @property

实现动态聚焦缩放效果,可以用来快速告诉用户当前指针位置,或者用来强调一些内容。

Change font-weight based on the user's screen DPI

相同的 font-weight 在高 DPI (Dots Per Inch) 的屏幕中,看起来会比较精细,但在低 DPI 的设备中可能会出现锯齿。

作者建议通过媒体查询,在不同 DPI 下应用不同的 font-weight,兼顾不同 DPI 的展示。

// Default font weight for low-DPI screens
h1 {
  font-weight: 300;
}

// Progressive enhancement for hi-DPI screens
// Making font thinner and more elegant
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  h1 {
    font-weight: 100;
  }
}

There are a lot of ways to break up long tasks in JavaScript.

JS 里拆分长任务,避免阻塞主线程的一些方法:

  • setTimeout() + 递归
  • Async/Await 和一个超时
  • scheduler.postTask()
  • scheduler.yield()
  • requestAnimationFrame()
  • MessageChannel()
  • Web Workers

基本思路就是利用异步,让程序不要长期占用主线程,而是分成多次异步调用;或者干脆将逻辑放到另一个线程中执行(web workers)。

之前有个页面,需要处理一个很大的对象的转换逻辑,导致页面卡顿,甚至无法交互。

后来,我将它拆分到 web worker 里执行,页面就不再阻塞了,效果很好,而且拆分到 worker 中也不复杂。

Move on to ESM-only

随着网络技术的迭代,目前看起来社区有在往 ESM 进行转变的趋势,或者同时支持 CJS 或 ESM;或者只保留 ESM。

作者鼓励社区往纯 ESM 方向发展,这样可以减少一些维护成本,减少包大小。

不过对于一些还依赖 CJS 包的项目来说,迁移估计不太容易。

如果你想知道如何构建基于 ESM 的包,可以看看 Tutorial: publishing ESM-based npm packages with TypeScript

Which rich text editor framework should you choose in 2025?

作者整理了一些富文本库,并分析了它们的优劣,需要选择富文本库的时候可以参考一下。

Differences between ESLint and TypeScript

ESLint 和 TypeScript 的区别:

  • ESLint 检查代码是否遵循最佳实践并保持一致,强制执行你应该写的内容。
  • TypeScript 检查代码是否 “类型安全”,强制限制你可以编写的内容。

结论是结合一起使用就对了。

静态分析是对源代码进行检查而不执行它。这与动态分析不同,后者是在执行源代码时进行检查。

因此,动态分析带来了执行恶意代码或产生副作用的固有风险,而静态分析则是安全的,无论源代码如何都可以执行。

Cool Bit

Smuggling arbitrary data through an emoji

使用 emoji 竟然可以偷运数据。

emoji 本质上是 unicode,每个 unicode 还可以配置一个变体选择器(variation selectors),但是这些变码不一定能显示出来,显示不出来就会回退到不带变码的字符显示。

变码拥有 256 个编码点(codepoints),足以表示一个字节。

于是,通过给 u󠇗󠆫󠆉󠇖󠅸󠆁󠇗󠆅󠆉󠇘󠆘󠅰󠇕󠆀󠆗󠇟󠆬󠅼󠇕󠆈󠆯󠇕󠆈󠆯󠇟󠆬󠆊󠇟󠆬󠅹nicode 添加看不见的变码,把数据藏到变码里,就可以藏数据。(<- 例如这句话里我就藏了信息,你可以复制然后用解码器解码看看)

What if Eye…?

麻省理工大学进行了一个研究,他们创建了一个虚拟培养皿,让数字生物的眼睛从无到有,重现数百万年的进化过程。

如果研究成功,或许以后的 AI 就能真正看到东西。

The government had been planning it for 7 years, beavers built the dam in two days and saved them $1 million

无证海狸无证施工,破坏了 100 万美元的 GDP。

笑死,当地计划花费百万美元修建河坝,计划了 7 年之久,但是生活在那里的海狸已经在政府计划的相同地点完成修建了。

Learn Shader Programming with Rick and Morty

240 行代码,使用 GPU shaders 绘制一个 Rick 头部的动画。

GPU Shader(着色器)是运行在图形处理单元(GPU)上的程序,用于处理和渲染图形数据。

retrofab

RetroFab 是一个新的在线复古电子游戏模拟集合,可以在浏览器中玩。

Obscure Islands I Find Interesting

作者找到的一些有趣的岛屿。

例如:

  • Tristan da Cunha,世界上最偏远的有人居住的岛屿
  • Hans Island,引发丹麦-加拿大战争的无意义岩石

player-one.nvim

一个 neovim 插件,可以在打字的时候出现 8-bit 音效,有种把编辑器变成了游戏的感觉。

Nokia Design Archive

诺基亚设计归档,网站设计得不错,一种不错的知识库呈现方式。但是有点卡。

聊天记录合集

分门别类的收集一些有趣的言语,并以聊天界面的形式展示。

疯狂星期四的段子有了(≖ᴗ≖๑)

WikiTok

像刷 TikTok 一样刷 Wiki。

Tool | Library

Minim: A minimal newtab

一个 Chrome 插件,在 new tab 中显示一些好看的图片。

我用了一段时间,很喜欢,推荐给你。

它很简洁,可以设置成 new tab 中只有背景图,非常的干净。背景图很好看。

monoco

为元素添加平滑圆角的库,当需要一些比较特殊形状的边框,可以考虑用这个库。

CSS Style Console Log

一个生成带样式的 console.log 的网站。

Waveform Renderer

一个渲染音频波形的库。

PDFSyntax

一个用于检查和转换 PDF 文件内部结构的 Python 库。

Open Deep Research

开源的 Deep Researsh,该仓库的目标是提供深度研究代理的最简单实现——例如,一个可以随着时间推移而细化其研究方向并深入探讨某个主题的代理。

Human Regex

一个 JS 库,人性化的正则表达式生成器,采用类似英文的语法。

postspark

生成好看的截图的工具。它支持图片,代码,Tweet,Blue Sky 等作为输入。

Flexbox Labs

Flexbox Labs 是一款可视化工具,可帮助您使用 CSS Flexbox 创建布局。它提供了一个直观的界面,可实时显示变化,便于实验和学习。

Emacs

  • sideline

    可以在 Emacs 的侧边空间显示一些信息。

  • Clean Unloading of Emacs Themes

    Emacs 中,主题是会叠加的,可能会造成相互干扰。

    作者提供了一个移除所有主题的方法,这样就可以加载一个主题而不受到其他主题的影响。

一些话 | 摘抄

Oracle justified its JavaScript trademark with Node.js–now it wants that ignored

有时候,你不得不去做那些永远也做不完的事。或者至少并行尝试?

Source

What really happens inside a dating app

核心问题是用户(你)不想约会,而想找个不现实的标准,让自己的女朋友/男朋友待在自己的床上。

Source

Advice for a friend who wants to start a blog

至少在最初几年,没有多少人会关心你写了什么,所以要让写作对你有用。

写作的方式要能让你完善对重要事物的思考。

写作是为了以更高的分辨率体验你所关心的事情–写作是为了增强你的活力。

Source

编辑时要问自己一个好问题:草稿中最薄弱的 20% 是什么?剪掉它。

Source

如果您想写 5000 字的法语语法史,但又担心人们会对此感到厌烦,该怎么办?

你应该写 5000 字的法语语法史。这将过滤你的读者,从而吸引那些喜欢你思想的人。

Source

Why Blog If Nobody Reads It?

博客中有一种隐藏的价值。

有句古老的禅语:“劈柴,挑水。” 你这样做不是为了掌声,而是因为这件事需要去做。

博客写作迫使你清晰思考。它让你理顺思路,锐化视角。你不再写废话,因为——说实话——你是在为自己写作。

如果你不能让自己感兴趣,其他人也没有机会。

当你写作时,你思考得更好。当你思考得更好时,你创造得更好。

那么,谁是真正的观众呢?

你不仅仅是为今天看不见的观众写作。你是在为:

  • 未来的你。你的帖子成为你不断变化的思想的时间胶囊。
  • 一个对的人。也许有一天,有人恰好在正确的时刻偶然发现你的话语。这对他们来说改变了一些东西。
  • 作品本身。稳定性胜过病毒式传播。百篇深度文章将超越一条单一的病毒式热门内容。

Source

How to think in writing

我之所以花了这么长的时间来确立这个显而易见的观点(写作有助于完善你的思维),是因为它引出了另一个让很多人感到震惊的观点。

如果写下你的想法总能让它们更精确、更完整,那么没有写过关于某个主题的文章的人就没有关于这个主题的完整想法。

而一个从不写作的人,对任何非琐碎的事情都不会有完全成型的想法。

在他们看来,好像是这样,尤其是如果他们没有批判性地审视自己思维的习惯。

想法会让人感觉完整。只有当你尝试用语言表达时,你才会发现它们并不完整。

因此,如果你从不对自己的想法进行检验,你不仅永远不会有完整的想法,也永远不会意识到这一点。

Source

Building an “easy” web application

通常最简单的就是最好的,尽管更多的花哨功能会更好,但它们的成本却不成比例。

Source

Life Is More Than an Engineering Problem | Los Angeles Review of Books

当讨论 LLMs 是否可能有一天发展出主观体验时,他解释道:

“这就像想象一台打印机实际上能够感受到疼痛,因为它可以打印出带有 ‘宝贝,别伤害我’ 字样的 bumper stickers。

下一版本的打印机是否能够更快地打印出这些贴纸,或者它是否能够将文本格式化为粗体红色大写字母而不是小黑字,这些都无关紧要。

这些只是表明你拥有一台更强大的打印机,而不是表明它更接近于真正感受到任何东西。”

Source

尽管现在的模型具有 “推理” 能力,但它们实际上还是 LLM,它们并不具有真正的推理能力。

大多数时候,当想法浮现在我脑海中时,它们很快就会离开我的注意力。

但偶尔,有一个想法会在几个月甚至几年的时间里不断回归。

我把这视为一个信号,提示我应该关注并以更有意图的方式思考这个想法。

Source

当我们使用搜索引擎时,我们会从互联网上获取逐字引用的文本以及原始网页的链接。搜索引擎直接从权威来源提供信息。

LLMs 像是一个重新表述信息的搜索引擎,而不是逐字提供或指向原始来源。

在某些方面,这确实很酷,但它们的重新表述并不可靠。

这就像问一个问题,然后从一个读过答案但并没有真正理解它的人那里得到一个回答,他们试图尽力重新表述。

我称 LLMs 为模糊的 JPEG,因为它们提供了互联网的低分辨率版本。

如果你使用互联网来寻找信息,而这正是我们大多数人使用互联网的目的,那么在我们有传统搜索引擎可以指向实际信息的情况下,选择低分辨率版本并没有什么意义。

Source

然而,将人工智能系统视为一种伙伴——与我们建立关系的某种事物或某个人——而不仅仅是作为工具,这样做是否会有价值呢?

这完全取决于你对“关系”的定义。

如果你是一个木工,你可能会对一套使用多年的凿子产生情感上的联结,从某种意义上说这是一种“关系”,但这与人际关系完全不同。

你可能会确保你的凿子保持锋利且无锈,并说你在尊重它们,但这与你对同事应有的尊重完全不同。

澄清这一点的一种方法是记住,人有自己的偏好,而物品则没有。

尊重你的同事意味着关注他们的偏好和兴趣,并将其与你自己的进行平衡;当他们以同样的方式回报你时,你就有了良好的关系。

相反,你的凿子没有偏好;它并不想保持锋利。当你保持它锋利时,你这样做是因为这有助于你做好工作,或者因为知道它锋利让你感到满足。

无论哪种方式,你只是在服务于自己的利益,这没问题,因为凿子只是一个工具。

如果你不保持它锋利,你只是在伤害自己。

相反,如果你不尊重你的同事,问题不仅在于这可能会让你的工作变得更困难;你还在伤害他们,因为你忽视了他们的偏好。

这就是为什么我们认为把一个人当作工具对待是错误的;通过表现得好像他们没有偏好,你是在非人化他们。

Source

On Product-Market Fit

在我们这样做之前,我们需要先了解什么是产品市场契合(PmF, product-market-fit)。我有一个简单的思考方式。它不是数学。它不是商学院的某种行话。

PmF 是当客户为你销售产品的时候。

当你以一种让人产生强烈情感反应的方式解决了某个问题时,就是达成产品市场契合的时候。人们开始支持——更重要的是,捍卫——你的产品。

Source

CSS nesting: use with caution

对于代码库,尤其是 CSS 代码库,我有一个非常简单的经验法则:初级开发人员能否理解这段代码?

Source

我想告诉你的一点是,不要觉得自己落后,因为 CSS 已成为网络标准,你今天甚至十年前编写的 CSS 都可以正常使用。

了解如何利用你现在掌握的 CSS 技能来产生影响,这比把新东西塞进你的代码库要有益得多,因为你可以这样做。

在我看来,好的 CSS 是务实、深思熟虑且有效的 CSS。

Source

Sahil Lavingia's post

不再招聘初级甚至中级软件工程师。

我们每个代码库的 token:

  • Gumroad: 2M
  • Flexile: 800K
  • Helper: 500K
  • Iffy: 200K
  • Shortest: 100K

Claude 3.5 Sonnet 和 o3-mini 的上下文窗口都有 20 万个 token,这意味着如果提示得当,它们现在可以写出 100% 的 Iffy 和 Shortest 代码。

用不了多久,人工智能就会编写 Helper、Flexile 和 Gumroad 的所有代码。我的猜测是到 2026 年底。

我们的新流程:

  1. 坐下来聊聊我们需要建造什么,边走边做深度研究。
  2. 让人工智能记录一切,并将其转化为规范。
  3. 清理规格,添加任何设计要求/其他细微差别。
  4. Devin 编写代码。
  5. 质量保证、合并、自动部署到 prod。

Boring tech is mature, not old

枯燥的技术并不老旧,而是成熟。成熟不仅体现在软件上,还体现在文档、社区和跟踪记录上。

年龄经常被用来类比成熟度,但这并不是一回事。

否则,我就会比我的 Zoomer 朋友更成熟,但我很怀疑事实是否如此。

Source

无聊技术的行为方式是可以预测的。

这是一条别人已经评估过、优化过、排除过故障并理解的康庄大道。

使用经过这么多人长时间使用的技术,意味着你不太可能遇到边缘情况、意想不到的行为,或者缺乏文档或社区知识的属性和功能。

换句话说,当出现问题时,你能向某人或某事求助吗?

Source

多媒体

Music

Yufu - Heal Me Good

109951170318842046.jpg?param=177y177
图1  《Heal Me Good 》的封面

昨夜派对 - 无尽美丽的事物

109951165420791714.jpg?param=177y177
图2  《无尽美丽的事物》的封面

昨夜派对的专辑里,除了歌曲,还有很多伴奏,也挺好听的。

昨夜派对 - 沉默是一种回答

109951168213807557.jpg?param=177y177
图3  《沉默是一种回答》的封面

生命中所有来去 都是月亮的潮汐

只有闭上眼才能看到 夜海的秘密

你会看到有船从身旁驶去

船上站着来自未来的自己

他逆着霞光 看不清模样

如一尊塑像 带着先知般的哀伤

只是沉默望着你 一句未讲

你蓦然落泪 想一路追上

跟随他去往 那迢遥未知的远方 可是未来还未来 唯有此刻 是真实

《夜海的秘密》- 2024:在夜海中观望浪潮

Author: Spike Leung

Date: 2025-02-17 Mon 00:00

Last Modified: 2025-02-17 Mon 09:29

License: CC BY-NC 4.0