HackerURLs

一次又一次被重新发现的经典。

同一个链接,相隔一年以上,一次又一次被人重新发现、再次冲上 Hacker News 首页。能经受住这种时间检验的,大多是值得一读再读的文章。每篇附中文标题,讨论最热的那些再加上中文导读和高赞评论翻译。

从名人堂开始
  • 4,700+篇经过时间检验的经典

Hall of fame

名人堂

在经典库里看全部精选

上首页次数最多、而且有中文导读的 30 篇。时间轴上每个黑点是一次上首页,空心点是一次没冲上去的投稿。

  1. 正在载入经典…

Archive

经典库

按第一次上首页的年份分布,点柱子筛选。

排序

    About

    这些经典是怎么挑出来的

    1. 01

      合并同一个链接

      读取 Hacker News 自 2006 年以来的全部链接投稿,把 http/https、www、跟踪参数等写法不同的同一篇文章合并成一条。

    2. 02

      只留经得起时间的

      同一链接至少两次拿到 50 分以上(约等于上首页),而且两次相隔一年以上;再由 AI 剔除状态页、产品首页和新闻事件。

    3. 03

      写导读、译评论

      上首页次数最多的 2,000 篇配上中文导读、"为什么经久不衰",并精选翻译 HN 高赞评论。导读由 AI 生成,可能有误。

    设计与产品robinsloan.com编辑精选

    应用可以是一道家常菜

    An app can be a home-cooked meal (2020)

    3次上首页
    4年跨度
    1,827累计得分
    471条评论

    2020 — 2024,它一次次回到首页

    黑点是上首页(≥ 50 分)的那次投稿,空心点是没冲上去的投稿,点越大分数越高。

    导读

    Robin Sloan 用“家常菜”类比个人软件:他描述自己为家人做的一个不公开发布、只服务小范围的小应用,并由此说明写程序不必总以产品化、规模化为目标。为自己或亲友的具体需求做一个小工具,就像在家做饭——私密、可改、够用就好。文章鼓励把编程看成一种日常表达,而不是只属于专业开发者或商业公司。

    为什么经久不衰:它把软件从“必须成为产品”的叙事里解放出来,让人看到小规模、只为具体人写代码的价值;在平台垄断和 AI 批量生成应用的时代,这个提醒反而更珍贵。

    关键词 个人软件家常菜类比小规模开发产品化反思

    HN 评论精选

    用菜谱类比说明程序天然应当可以复制、修改和分享。

    你们有些人可能不写程序,但也许会做饭。做饭会用菜谱;从朋友那里拿到菜谱,也会按自己口味改——少放盐、加蘑菇,甚至按自己的水平大改。改完做给朋友吃,朋友喜欢,可能会问你要菜谱;你就把改过的版本抄一份给他。菜谱和程序很像:都是为得到某个结果而执行的一系列步骤。所以对程序做同样的事也很自然:复制给朋友、按自己的需求修改;它在别人那里好用,但你的任务不同,改完后也可能对别人有用。

    teddyh查看英文原文

    Now, some of you may not ever write computer programs, but perhaps you cook. And if you cook, unless you're really great, you probably use recipes. And, if you use recipes, you've probably had the experience of getting a copy of a recipe from a friend who's sharing it. And you've probably also had the experience — unless you're a total neophyte — of changing a recipe. You know, it says certain things, but you don't have to do exactly that. You can leave out some ingredients. Add some mushrooms, 'cause you like mushrooms. Put in less salt because your doctor said you should cut down on salt — whatever. You can even make bigger changes according to your skill. And if you've made changes in a recipe, and you cook it for your friends, and they like it, one of your friends might say, “Hey, could I have the recipe?” And then, what do you do? You could write down your modified version of the recipe and make a copy for your friend. These are the natural things to do with functionally useful recipes of any kind. Now a recipe is a lot like a computer program. A computer program's a lot like a recipe: a series of steps to be carried out to get some result that you want. So it's just as natural to do those same things with computer programs — hand a copy to your friend. Make changes in it because the job it was written to do isn't exactly what you want. It did a great job for somebody else, but your job is a different job. And after you've changed it, that's likely to be useful for other people. Maybe they have a job to do that's like the job you do. So they ask, “Hey, can I have a copy?” Of course, if you're a nice person, you're going to give a copy. That's the way to be a decent person. — Richard Stallman, 2001 (https://www.gnu.org/philosophy/rms-nyu-2001-transcript.html)

    简单工具能让非专业者几小时做出自用应用,第一次编程体验应像写菜谱一样直接可用。

    最近我想做几个简单应用,通过 API 请求控制家里用 Raspberry Pi 搭的设备。朋友推荐了拖拽式应用构建器 Thunkable,我惊讶于做东西竟这么简单。几小时就做好所有应用,没有复杂构建流程,直接从网站下载 apk。有人可能看不上它用 Scratch 写代码,但我觉得人们第一次编程就该是这样:写一个简单菜谱,马上得到一个能用的简单程序。

    laurieg查看英文原文

    Recently I wanted to make a few simple apps that would make api requests and control a few things around my house set up with raspberry pis. A friend recommended me the drag and drop app builder Thunkable[1] and I was blown away by just how easy it was to make something. In a couple of hours I had all the apps I needed. No complicated build process, just download the apk from the site. Some people might turn their noses up at it because it uses scratch for writing the code but I feel this is what people's first experience of coding should be like. Write a simple recipe, get a simple program that they can use straightaway. These that must be an app or a web app to have any relevance to people. [1] https://thunkable.com/

    为妻子定制的极具体小工具,不打算分发,正体现“家常菜式”软件。

    我为妻子做过类似的事:她喜欢在 Android 上读乙女视觉小说,而游戏设计和盈利方式让“回到某条故事线”很难。我注意到她反复截图手机,问她在做什么——她说喜欢重读故事,所以翻相册来满足。于是我写了一个围绕 adb 的简单封装,给它做了个普通 C# WPF 前端,把点击和自动截图调用传进去。她插上手机、打开应用,就能在 PC 上读视觉小说,截图也保存在 PC 上。我还做了其他处理应用来管理这些文件。有些免费应用能解决很多问题,但没有一个完全合意,很多看起来还很不靠谱。我不打算分发自己写的软件,因为它太针对她的需求;最多可能放到某个地方备份源码,因为她时不时会要求加新功能。

    bentcorner查看英文原文

    I've done something very similar for my wife: She likes reading otome visual novel games on Android and the game design/monetization strategy means that it's difficult to "go back" to a story line. I noticed her repeatedly screenshotting her phone and asked what she was doing - she said she likes to re-read the stories and so she swipes through her gallery to satisfy this need. So I built a simple wrapper around adb, built a plain C# WPF front end for the wrapper and passed through clicks and automated screenshot calls for her. So she plugs in her phone, fires up the app, and she can read her VNs on her PC and have screenshots saved on the PC for her. I built a variety of other processing apps to solve other needs for managing these files. There were some free-to-download apps that solved a lot of these problems but none in quite the right way, and a lot of them looked fairly sketchy. I don't really have any intention of distributing the software I wrote because it's so specific to her needs, and at best I might throw it up somewhere so I have the source backed up, as every once in awhile she asks for something new to add to this program.

    专用商业软件未必优于个人定制的小工具,灵活自用很重要。

    “家常菜式”软件这个比喻太妙了。我用过同样的比较来解释我对临时电子表格被领域专用软件取代的不安。新软件常常“更好”,就像餐厅菜比家常菜“更好”,但人们能构建小规模、超灵活、刚好满足自己需求的软件也很棒。

    gklitt查看英文原文

    "Home-cooked" software is such a lovely analogy. I've used the same comparison to explain my unease about ad-hoc spreadsheets being replaced by domain-specific software [1]. Often the new software is "better" just like restaurant food is "better" than a home-cooked meal, but it's also great when people can build small-scale, super flexible software that works perfectly for just their own needs. 1: https://twitter.com/geoffreylitt/status/1177607448682582016

    历次讨论

    同类还值得读

    1. 贝塞尔曲线入门

      A Primer on Bézier Curves

      Pomax 编写的贝塞尔曲线在线教程,从基础概念一路讲到曲线求交、投影、曲率等进阶内容,并配有可交互的示例和配套的 bezier.js 库。

      设计与产品上首页 7 次 · 2014–2022pomax.github.io编辑精选
    2. WebGL 水面模拟

      WebGL Water

      Evan Wallace 制作的 WebGL Water 演示:在浏览器里实时渲染一片水面,展示折射、反射和焦散等 GPU 图形效果。

      设计与产品上首页 6 次 · 2011–2025madebyevan.com
    3. 设计建议:永远不要使用黑色

      Design Tip: Never Use Black

      设计随笔提出“永远不要用纯黑”的建议,主张在界面和绘画中改用深灰或带色相的暗色,并借阴影与色彩关系来论证。

      设计与产品上首页 5 次 · 2012–2021ianstormtaylor.com
    4. 用于思考不可想象之物的媒介

      Media for Thinking the Unthinkable

      Bret Victor 的这个页面围绕《Media for Thinking the Unthinkable》展开,探讨我们用来思考和表达复杂问题的媒介,以及以文字/符号为主的传…

      设计与产品上首页 5 次 · 2013–2020worrydream.com编辑精选
    5. 页面重量很重要

      Page Weight Matters

      博文讲 YouTube 工程师 Chris Zacharias 的一次页面瘦身实验:团队做了一个更轻量的页面版本,起初从整体平均加载时间看反而更慢;按地理区域分层后才发现,轻量版…

      设计与产品上首页 4 次 · 2012–2022blog.chriszacharias.com

    打赏支持

    打赏二维码

    觉得有用,请作者喝杯咖啡。

    WeChat

    关注向阳乔木

    微信公众号「向阳乔木推荐看」

    微信公众号「向阳乔木推荐看」二维码

    微信扫一扫;在微信里打开本页时,长按二维码识别。