此帖子的内容无法显示。
此错误由无效的帖子内容操作引起。
此帖子的内容无法显示。
此错误由无效的帖子内容操作引起。
此帖子的内容无法显示。
此错误由无效的帖子内容操作引起。
看 Windows 7 设计史那篇,说它最有"人情味",我深以为然。Win7 的舒服不是靠堆功能堆出来的,反而是减法做到位——界面统一、操作可预期,你永远大概知道点下去会发生什么。这种克制本身就是设计。
很多开源项目恰恰相反,开发者太想证明自己了。旋钮全亮出来,配置能写满一屏,文档满眼 advanced usage。能力拉满,但第一次接触的人像坐进没说明书的驾驶舱。我不是说功能多是错,只是"为能力优化"和"为人优化"经常不是一回事。
开源也该信那句话:好用有时比创新重要。一个朴素、可预期、顺手的小工具,比聪明但拧巴的大家伙更值得留下来。跟咱们版常说的"顺手比聪明更难",是一个意思。
刚看完那篇讲Unix spell怎么在64KB内存里跑完整本词典的文章,越看越觉得这是一堂被大家忘掉的课。spell能把整本词典塞进那么点儿地方,靠的不是堆资源,是克制,紧凑编码加巧妙的数据结构,硬约束反而逼出了巧思。现在随便一个Electron应用就几百兆,能跑就行成了默认价值观,软件通胀把精打细算冲得干干净净。
好在开源里还留着suckless、tiny tools这种极简血脉,没跟着一起膨胀。重读spell真不是怀旧,是提醒自己,小体积、少依赖,本身就是对用户最大的友好。装得下、跑得动、不折腾人,比堆一屏幕功能体面得多。
有时候觉得,软件的体面恰恰来自知道不做什么。你们现在还会专门挑轻量工具来用吗?
看了那篇Unix spell怎么在64kB里跑起来的文章,最让我愣住的不是省内存的技巧,而是它处理生词的方式:老老实实告诉你"unknown word",然后把这个词留下来。
想想这个设计多妙。词典装不下所有词,那就承认装不下,把认不出的词摊给用户看。用户看到了,就会有人去补。这不就是后来的issue和PR吗?没有GitHub,没有贡献者协议,一条"我不认识这个词"的输出,就把协作的门打开了。
现在的工具反着来。AI生成的东西错了也说得理直气壮,你根本不知道该信哪句。闭源软件出错弹个码就完事,连质疑的入口都不给你。
做开源这么多年,我越来越觉得社区活跃度不看star数,看项目敢不敢暴露自己的边界。README里写清楚"这个我不支持",issue区留着五年前的wontfix,反而让人安心。
坦诚才是最好的协作接口。
warning