我长期以来一直是这个应用程序的用户,它一直快速、响应迅速且易于使用。
然而,在上周的一次更新之后,启动时间从不到一秒钟大幅增加到超过 15 秒。唯一明显的变化是添加了一个新的启动界面和更新了用户界面。
我经常发现自己在质疑为什么工程师们会给应用程序添加某些功能,却无意中引发其他问题。
我理解添加有用的功能或修复特定错误的必要性。例如,如果对话框在没有网络的情况下需要 30 秒才能出现,一个简单的解决方案是立即打开对话框,并设置一个超时以便在没有网络连接时提前退出,这样用户可以选择刷新以再次尝试。
这样有针对性的修复可以显著改善用户体验并解决实际问题。
我感到惊讶的是那些没有明确理由却被添加的功能,我认为其中一部分原因是出于个人利益。这是我想在这篇文章中探讨的问题。
个人目的感 —— 为了 “贡献”
当你被调到一个新团队,或者成为新的技术负责人、工程总监或首席执行官时,你会感觉有必要展现自己的价值。我认为这就是问题出现的地方。
作为工程负责人、技术总监、首席执行官,甚至是程序员,你可能会对软件发表以下评论:
伙计们,你们用这种语言写的软件有这些问题,我们只需要启动一个新项目,将整个东西重写成另一种语言,因为它更好、更现代,而且有这个功能。
或者你可能会说:
伙计们,你们使用的这个数据库有时候会出问题,这是为什么我们会遇到一些麻烦,这里有几篇文章可以证明我的观点。实际上,这篇 Hacker News 的文章描述得最好。
几乎就像我们不再希望软件只是正常工作了,那不是我们的目标。我们的目标是炫耀并博客文章中展示我们使用的编程语言、选择的架构、运行存储层的数据库。
目标是表明你编写的代码是错误的,而我正在编写的代码是正确的。使软件正常工作和高效几乎不再成为目标,而总是关注这些多余的表面事物。
我认为这一切归结为人类的自我感。
在生活中的某个时刻,我们被告知我们很聪明,无论是父母、老师、朋友还是老板告诉我们,然后我们带着这个想法走下去。这种自我感情越来越强烈,并且失去了控制。内在的自我感会试图表现为 “嗯,让我向你们展示我知道什么” 或 “让我向你展示我掌握的这种技能”。
为什么这是个问题?
当工程师的自我感得到满足时,它会变得更大,导致傲慢的对话。这会引发怨恨和无效的结果。产品受到影响。
当自我感受不到满足时,会导致沮丧和焦虑,工程师的工作效率下降。产品也会受到影响。
你这么做也不行,不这么做也不行。
“保护” 自我感
你是技术负责人,你的工程师提出了一个与你最初构建应用程序的方式相矛盾的想法。你的自我感情让你无法接受这种改变,但在内心深处,你知道她的想法将显著改进产品。
这是一个例子,其中自我感情使你固守现状,阻止了可能带来 200% 改进潜力的变化,全部因为你对自己所建立的东西太过依恋。
现在怎么办?
我没有任何建议、最佳实践或克服自我感情的路线图。我自己也在与之奋斗。我认为第一步是认识到它的存在并承认它的存在。
我们无法消除自我感情,我认为我们必须极度意识到自我感情确实是所有问题的根源。在那个时刻,我们将别无选择,只能放下它,以及我们的形象。
如果你喜欢我的文章,点赞,关注,转发!