工具与资源worrydream.com编辑精选
Tangle:用于创建响应式文档的 JavaScript 库
Tangle is a JavaScript library for creating reactive documents.
2011 — 2013,它一次次回到首页
黑点是上首页(≥ 50 分)的那次投稿,空心点是没冲上去的投稿,点越大分数越高。
导读
Tangle 是 Bret Victor 开发的一个开源 JavaScript 库,用来制作「响应式文档」(reactive document):文字叙述中嵌入可拖动的数字和控件,读者调整参数时,正文里的数值和相关文字会实时更新。页面用一个州立公园的例子演示了这种把说明、数据和交互融合在文本本身、而非依赖图表的做法。
为什么经久不衰:它用最轻量的方式把「读」变成了「动手调」,是可探索解释与响应式文档潮流的先驱,十多年后的今天这个思路依然有启发性,库本身也简单到可以直接拿来用。
HN 评论精选
Tangle 的价值在于把内容与交互结合,是一种全新的表达方式。
我第一反应是「挺酷的!」,但不确定到底谁需要它。随后我意识到,这其实是一种非常不同的数据表达方式:它会逼着你不仅想清楚要说什么,还想清楚该怎么说,如何在文档正文里直接演示这些想法,而不是简单写一句「参见图 1.1」。这可能真的会带来一种在网页上展示数据的新方式,弥合复杂动画与纯文本之间的鸿沟。我见过的带酷炫动画的网站里,99.9% 的动画都与周围内容完全脱节;而把内容和交互以简单的方式结合在一起,我很少见到。赞。
methodin查看英文原文
My first thought was "this is pretty cool!" but wondering who actually needs it. I then had the realization that this is, in fact, a very different way of data expression. It would force you to think not only about what you are saying, but how you are saying it and how to demonstrate the ideas within the text of the document itself and not simply say "Refer to fig 1.1". This could truly present a new way of displaying data on the web. It could bridge the gap between complex animations and simple text. 99.9% of all sites I see that contain some cool animation are completely independent of the content surrounding them. Having the content and interactions married together in a simple way is really something I've not seen too often. Kudos.
与 Wolfram CDF 对比,Tangle 免费、开源、开放。
我觉得把它和 Wolfram 的可计算文档格式(CDF)对比很有意思:CDF 只能用 Mathematica 编写,只能用专门的 CDF Player(或 Mathematica)打开,商业使用还得授权;而 Tangle 是免费的、开源的(MIT 许可),JS 在大多数浏览器里都能运行,也可以用任何文本编辑器编写。
troymc查看英文原文
It's interesting (for me, anyway) to contrast this with Wolfram's Computable Document Format (CDF, see http://www.wolfram.com/cdf/ ). CDF documents can only be written using Mathematica, are only playable using a special CDF Player (or Mathematica), and you have to license CDF for commercial use. Tangle is free and open source (under an MIT License), JS is "playable" in most web browsers, and JS can be written using any text editor.
批评州立公园的示例不易理解,认为多变量关系用方程式更清晰。
虽然 Bret Victor 关于响应式文档的想法很有趣,但我认为这个页面的第一个例子(州立公园那个)特别不友好、很难让人看懂。我的观点非常接近 Evan Miller 一篇关于「不要扼杀数学」的博文(也受其影响),强烈推荐一读。大意是:对于三四个以上变量之间的关系,方程式其实才是最友好的信息传达方式。那篇文章最后几段专门讨论了 Tangle 这个网页。
lightcatcher查看英文原文
Although Bret Victor's ideas behind reactive documents are interesting, I think the first example on this page (regarding the state parks) is particularly unfriendly and difficult to gain any understanding from. My views very closely aligns with (and was influenced by) Evan Miller's blog post [1] on the top that I highly recommend you read. The overall gist is that equations are actually the friendliest way to spread information about the relationships between several (ie more than 3 or 4) variables. The final paragraphs of Evan Miller's essay address this particular webpage (the Tangle demo) in particular. [1] http://www.evanmiller.org/dont-kill-math.html
质疑它是否已被现代双向数据绑定框架取代,但概念仍有意义。
几年前看到这个时我印象非常深刻——不只是作为一个 JS 库,而是作为交互式(Bret 称之为响应式)文档的概念。这应该是 HTML 作为一种媒体的发展方向,并带着这个问题:「有什么是 HTML 能做而其他媒体做不到的?」但情况已经变了很多——它是否已经被 Angular、Knockout 这类双向数据绑定的客户端库取代了?用这些库复现它的功能大概相当容易。
WickyNilliams查看英文原文
I saw this a few years back and was seriously impressed with the idea, not just as a JS library but the concept of interactive (or reactive as Brett calls them) documents. This is where HTML should be going as a form of media, armed with the question, "what can HTML do that other forms of media cannot?" But a lot has changed since then - has this been superseded by client-side libraries with two-way data binding? e.g. angular or knockout. It would probably be quite trivial to duplicate the functionality in either of those libraries.
历次讨论
同类还值得读
直接在浏览器中启动 Linux 内核
Boot a linux kernel right inside your browser.
Fabrice Bellard 的 JSLinux 页面,用 JavaScript 在浏览器里启动一个 Linux 内核,并提供一个可交互的终端环境。
工具与资源上首页 5 次 · 2011–2025bellard.orgHacker News 未公开功能与行为清单(2018)
A List of Hacker News's Undocumented Features and Behaviors (2018)
数据科学家 Max Woolf 整理的 Hacker News 未公开功能与行为清单,涵盖投票机制、排名算法、账号惩罚等社区运作细节。
工具与资源上首页 5 次 · 2019–2025github.comMapSCII:在终端中用盲文和 ASCII 渲染地图
MapSCII – Braille and ASCII map renderer for the console
MapSCII 是一个在命令行终端里渲染地图的开源工具,用盲文字符和 ASCII 字符把地理数据画成可交互浏览的字符地图。
工具与资源上首页 5 次 · 2017–2025github.com顶尖大学的免费在线课程
Free Online Courses from Top Universities
Open Culture 整理的一份免费在线课程合集,汇集了全球顶尖大学(如 MIT、斯坦福、耶鲁等)向公众开放的网络课程资源,涵盖音频、视频等多种形式。
工具与资源上首页 5 次 · 2010–2022openculture.com淘气字符串:容易引发用户输入问题的字符串清单
Naughty Strings: A list of strings likely to cause issues as user-input data
一个 GitHub 仓库,收录了大量容易让程序出问题的用户输入字符串,如特殊字符、emoji、SQL 注入片段、系统命令等,供开发者用于测试输入处理逻辑。
工具与资源上首页 4 次 · 2015–2020github.com