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 生成,可能有误。

    编程与软件工程worrydream.com编辑精选

    编程的未来

    The Future of Programming

    3次上首页
    4年跨度
    994累计得分
    443条评论

    2013 — 2017,它一次次回到首页

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

    导读

    Bret Victor 的著名演讲《编程的未来》:回顾 1960-70 年代编程先驱们的各种探索(可视化编程、直接操作数据等),指出许多好想法被抛弃而非被解决,我们狭隘地把少数几种范式当成了编程的全部。演讲呼吁重新质疑这些历史选择,探索编程本可以是什么样子。

    为什么经久不衰:它把'编程为什么是现在这个样子'变成一个可以质疑的历史问题,多年来反复引发共鸣,对任何想突破现有编程范式的人仍是必看的思想起点。

    关键词 Bret Victor编程的未来可视化编程编程史

    HN 评论精选

    演讲的核心不是怀旧,而是指出好想法被抛弃了,我们应质疑历史选择

    为什么大家都以为这个演讲是说这些问题'几十年前就被解决了'?我的理解恰恰相反:这些问题不是被解决了,而是被抛弃了。我们视野变窄,把一小撮想法当成了编程的全部。这个演讲不是在说早期程序员什么都更好,恰恰相反——我们应该质疑他们的决定,不要把任何东西视为理所当然。为什么这些好想法都出现在 60 年代到 70 年代初?因为那时技术刚好进步到能做点事,但还没人知道编程'应该'是什么样子,而他们知道自己不知道,所以什么都试了。

    fasquoika查看英文原文

    Why does everyone seem to believe this talk is about the fact that these problems were "solved" decades ago? My takeaway is that, no, these things weren't solved, they were abandoned. We got tunnel vision and decided that a handful of ideas were what programming is, rather than just a tiny subset. This talk isn't about how the early programmers were better at everything, if anything it's the opposite, that we should question their decisions and not take anything for granted. "Do you know why these ideas, and so many other good ideas came about in this particular time period, the 60's-early 70's? Why did it all happen then? It's because it was late enough that technology kinda got to the point where you could actually kinda do things with computers, but it was still early enough that nobody knew what programming was. Nobody knew what programming was supposed to be. And they knew they didn't know, so they tried everything."

    可视化编程被放弃是因为它是一堆未解难题,文本有不可替代的工具生态

    我很喜欢这个演讲,但可视化编程那部分相当不成熟。我做过专业可视化编程。人们几十年来一直在尝试攻克'画图编程',这不是被遗忘的想法,维基百科上列着几十年的各种尝试。我们仍用文本写代码,是因为可视化编程不是一个难题,而是一堆难题:导航、搜索、格式化、版本管理、调试、编译、分析、审查……文本是方便的序列化格式,可以借助 Unix 哲学组合最好的工具,而图形没有这样的通用语言。用文本不是教条或懒惰,而是让这些工具在图片上工作比在文本上难几个数量级。

    humanrebar查看英文原文

    I very much enjoyed Bret's talk, but the visual programming part of his talk was rather half-baked. I say this as someone who has done visual coding professionally in the past. People have been trying to crack the "drawing programs" nut for decades. It's not a forgotten idea. It's so not forgotten that there is a wikipedia page listing dozens of attempts over the years: http://en.wikipedia.org/wiki/Visual_programming_language. The reason we still code in text is because visual programming is not a hard problem -- it's a dozen hard problems. Think about all of the tools we use to consume, analyze, or produce textual source code. There are code navigators, searchers, transformers, formatters, highlighters, versioners, change managers, debuggers, compilers, analyzers, generators, and review tools. All of those use cases would need to be fulfilled. Unlike diagrams, text is a convenient serialization and storage format, you can leverage the Unix philosophy to use the best of breed of the tools you need. We don't have a lingua franca for diagrams like we do for text files. It's not due to dogma or laziness that we use text to write code. It's because the above list of things are not trivial to get right and making them work on pictures is orders of magnitude harder than making them work with text. EDIT: Wordsmithing

    演讲是'今不如昔'的错觉,真正的创新一直在研究前沿发生

    2040 年会有人发现 Haskell,痛哭为什么业界流行的是 C#++.cloud,并以此哀叹世界的糟糕状态。别拿 50 年前论文里的东西和今天商业界在用的比,应该和现在论文里的比——概率编程、范畴论在函数式编程中的应用、类型理论、软件事务内存,一直都有有趣的东西在进行。这就像《午夜巴黎》:每个时代的人都以为最好的时代在过去。这个演讲就是这种情绪蒙蔽了清醒的判断。

    stiff查看英文原文

    In 2040 someone will discover Haskell, shed tears on why C#++.cloud is so widespread instead in the industry, and use it to conclude the sorry state of the world. Seriously, don't compare what was published in papers 50 years ago with what business uses today, compare it with what is in papers now, and there are lots of interesting things going on all the time, when was the last time you even checked? Probabilistic programming? Applications of category theory to functional programming? Type theory? Software transactional memory? Woody Allen did this great movie some time ago, "Midnight in Paris", where the main character, living in present times, dreams of moving back in time to the 1920s as the best time for literature ever. When the occasion to really go back appears though, he discovers the writers of the 1920s thought the best literature was done in 1890s, and so he has to go back again, then again, ... This talk is like this, sentiment blinding a sober assessment.

    演讲为重新设计编程工具提供了概念基础,现状远非极限

    这是 Bret 的一场精彩演讲,呼应了社区里近来的许多讨论。有趣的是他从完全不同的角度抓住了我们一直在琢磨的同样核心问题:我从'什么让编程变难'的数据入手,他则从历史看是什么让编程与众不同。这个演讲为下一步——提出解决方案——打下了很好的概念基础。我在 Light Table 上的工作至少证明了一点:我们现在拥有的离我们本可以达到的还差得很远。编程是坏的,我已经开始理解如何系统地解决这种坏。

    ibdknox查看英文原文

    It's a fun talk by Bret and I think he echoes a lot of the murmurings that have been going around the community lately. It's funny that he latched onto some of the same core tenants we've been kicking around, but from a very different angle. I started with gathering data on what makes programming hard, he looked at history to see what made programming different. It's a neat approach and this talk laid a good conceptual foundation for the next step: coming up with a solution. In my case, my work on Light Table has certainly proven at least one thing: what we have now is very far from where we could be. Programming is broken and I've finally come to an understanding of how we can categorize and systematically address that brokeness. If these ideas interest you, I highly encourage you to come to my StrangeLoop talk. I'll be presenting that next step forward: what a system like this would look like and what it can really do for us. These are exciting times and I've never been as stoked as I am for what's coming, probably much sooner than people think. EDIT: Here's the link to the talk https://thestrangeloop.com/sessions/tbd--11

    历次讨论

    同类还值得读

    1. 开源应用架构

      The Architecture of Open Source Applications

      《开源软件架构》(AOSA)是一本在线免费书,邀请知名开源项目的作者亲自剖析其内部设计,涵盖 SQLAlchemy、LLVM、Audacity、Apache、Bash 等系统。

      编程与软件工程上首页 9 次 · 2011–2024aosabook.org编辑精选
    2. 编程语言简史:简短、不完整且多半错误

      A Brief, Incomplete, and Mostly Wrong History of Programming Languages

      一篇以戏谑、故意不准确的方式回顾编程语言史的博客文章,用夸张轶事和讽刺定义串起 Lisp、C、C++、Java、JavaScript、PHP 等语言。

      编程与软件工程上首页 8 次 · 2009–2021james-iry.blogspot.com
    3. SQLite 是如何测试的

      How SQLite is tested

      SQLite 官方文档页,系统介绍 SQLite 的测试体系:多种测试方法(TCL 测试、模糊测试、回归测试、静态分析等)和海量测试用例,展示了这个小型开源项目如何靠极致测试获得…

      编程与软件工程上首页 8 次 · 2009–2025sqlite.org编辑精选
    4. 高级编程语言(2009)

      Advanced programming languages (2009)

      Matt Might 的经典文章,按用途推荐“高级编程语言”:如果追求就业就选主流语言,如果追求表达力、学术研究或创业,则推荐 Haskell、OCaml、Scala 等函数式语…

      编程与软件工程上首页 8 次 · 2009–2022matt.might.net
    5. 我的 Forth 与栈机器经历

      Yosefk - My history with Forth & stack machines

      作者以亲身经历回顾了使用 Forth 语言和栈式机器的历程:既赞叹其简洁优雅、代码量小、可自举的优点,也坦率指出栈操作在实际编程中的痛苦,以及 Forth 社区文化中的问题。

      编程与软件工程上首页 8 次 · 2010–2024yosefk.com编辑精选

    打赏支持

    打赏二维码

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

    WeChat

    关注向阳乔木

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

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

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