开发者自负 » 代码简洁性
代码简洁性
开发者自负
2011年11月15日 by Max Kanat-Alexander
你的程序对我来说并不重要。我不在乎它的用户界面。我不在乎它叫什么名字。我不在乎是谁开发的,或者是什么版本。
我唯一在乎的是你的程序能否帮助我达成目标。如果它能做到这一点,那真是了不起的成就,你应该为此感到自豪。没有必要仅仅因为你觉得它重要,就让程序占用我更多的注意力。
当然,你的程序对你来说很重要!当你长时间编写代码时,很容易对它产生感情。编写过程如此艰难。你的聪明才智无边无际,在你智慧的巅峰上让普通人相形见绌。你克服了人类有史以来面临的一些最大智力障碍。确实,你应该在每个塔顶、每条街道,甚至地球的洞穴中大声宣扬这一点。
但请不要这样做。因为你的用户不在乎。你的开发同事可能会感兴趣,但你的用户不会。
当你真正聪明时,用户看到的是程序很棒。它如此出色,以至于用户几乎注意不到它的存在。这才是真正的卓越。
最违反这一理念的是那些每次电脑启动时弹出窗口的程序。我知道你的软件在那里。是我安装的。你真的不需要提醒我。如果我的目的是启动电脑以便使用它,你的弹出窗口如何帮助我实现这个目标?它没有帮助,所以请去掉它。
还有其他更小的问题制造方式,都围绕着占用用户过多时间或注意力:
“用户肯定能接受在使用我的产品前点击三个表单页面。” “我相信用户会想学习我为这个程序发明的所有图标,所以去掉这些图标的文字标签没问题!” “我觉得通过弹出这些对话框来中断用户工作是可以的。” “用户绝对会愿意在这个巨大的页面上搜索一小段文字然后点击它。” “我们为什么要简化这个?那会很费功夫,而且对我来说已经很简单了…”
诸如此类。
开发者真正需要的谦逊是愿意将自己的身份从用户的世界中移除。停止告诉用户程序的存在。不要认为用户在乎你的程序,想要花时间使用它的界面,或者想要了解它。他们在乎的不是你的程序——而是他们自己的目标。完美地帮助他们实现目标,你就能为他们创造出完美的程序。
-Max
分享 点击在Facebook上分享(在新窗口中打开) Facebook 点击在LinkedIn上分享(在新窗口中打开) LinkedIn 点击在Hacker News上分享(在新窗口中打开) Hacker News 点击在Reddit上分享(在新窗口中打开) Reddit 点击在Threads上分享(在新窗口中打开) Threads 点击在X上分享(在新窗口中打开) X
10条评论 发表回复
Tony Mechelynck 说:2011年11月15日 晚上9:48 我要补充一点:是的,你的程序应该是透明的(“不被注意”),并尽可能做用户期望的事情。但用户有不同的偏好和期望。如果某个特定用户发现程序运行"与预期不符"(可能是因为他有不同寻常的期望),更改配置设置的方式应该是明显的(需要很少搜索)和简单的(每个更改的设置需要很少用户操作)。
回复
Max Kanat-Alexander 说:2011年11月16日 凌晨1:08 这似乎是一个明智且有效的观点。🙂 我相信我们都同意必须谨慎添加偏好设置的数量,但这都包含在使偏好设置本身简单化之中。 -Max
回复
John P 说:2011年11月16日 上午9:15 不同的用户想要不同的东西。虽然一个用户(可能是偶尔使用者)可能欣赏带有图标的文字标签以便轻松找到功能,但另一个(重度日常用户)可能讨厌它们占用的额外屏幕空间。对一个人来说因其缺失而引人注意的东西,对另一个人来说却因其存在而引人注意。
请注意,我不认为有很多用户真的想要在启动时出现侵入性弹出窗口来宣传程序的存在。另一方面,如果它们成功地提高了对生产者品牌的认知度,那么它们就在为创建者服务,并且可能会继续存在。
回复
Max Kanat-Alexander 说:2011年11月16日 晚上11:02 我倾向于认为这类事情大多可以以一种既适合高级用户又适合新用户的出色方式实现。实际上,我多年来一直在维护一个产品,其整个用户界面都必须做到这一点,我认为我们最近一直在学习如何以一种对两个群体都相当可行的方式来实现。
至于弹出窗口:开发者的目的不是软件的目的。此外,计算历史表明,胜利者是那些最好地服务用户同时在业务方面执行良好的人。拥有优秀的产品是创建品牌认知度的完全体面的方式。我没有看到Chrome在我的浏览器界面上到处弹出它的名字或标志,但它获得市场份额的速度比历史上任何其他浏览器都快。我通常认为,以损害用户为代价的"品牌认知度"论点是薄弱和短视的。 -Max
回复
Fredrik Carlén 说:2012年12月3日 下午12:59 说得好,说得好。
回复
Vladimir Dzhuvinov 说:2011年11月16日 晚上10:48 Max,你是在暗示某个更广泛使用的PC环境吗?😉
回复
Max Kanat-Alexander 说:2011年11月16日 晚上10:57 哈哈哈!我没想到这一点,但有时候确实是这样,当然!😀 -Max
回复
Ben Morrow 说:2011年11月16日 晚上10:49 这里的一个重要因素是通过通知创建品牌认知度。这很糟糕,但大多数用户没有意识到通知很糟糕并将其与品牌负面关联。自负可能最终是更大的因素。
老兄,你能想象如果你的医生以自我祝贺的方式打电话给你,说你最近没有感染艾滋病,然后向你提供健康保险升级以确保万无一失吗?对不起,Norton医生,我要换供应商了。
回复
Max Kanat-Alexander 说:2011年11月16日 晚上10:58 哈哈哈哈!是的,我喜欢医生的类比!😀 -Max
回复
Reilly Sweetland 说:2011年11月29日 下午12:01 我认为当一个程序允许用户用尽可能少的"程序"来实现他们的目标时,也有某种美学。换句话说,你如何占用最少的用户心智周期来完成他们的目标?
很多有趣的用户体验讨论都源于此,但我认为你在这里抓住了重点,Max。对开发者或设计师来说,很容易陷入机制而忽视大局。
回复 发表回复取消回复
联系 关于 书籍:《理解软件》 书籍:《代码简洁性》 输入您的邮箱… 订阅 © 2025 版权所有。由The Fox提供技术支持。 管理同意 为了提供最佳体验,我们使用cookie等技术来存储和/或访问设备信息。同意这些技术将允许我们处理诸如浏览行为或本网站上的唯一ID等数据。不同意或撤回同意可能会对某些特性和功能产生不利影响。
功能性 功能性 始终激活 技术存储或访问严格对于使订阅者或用