你解决的问题,比你写的代码更重要!

程序员似乎忘记了软件的真正目的,那就是解决现实问题。如果开发人员过于专注于开发,他们可能会错过他们编写的软件背后的目的。他们可能看不到不需要任何代码的隐藏解决方案。

这里有一个例子。

有一家初创公司正在建造一种设备,允许一个人使用蓝牙解锁他们家的门。与其对应的是手机的一个应用,其有一个名为「开门」的按钮,点击「开门」便可将门打开。

有人看着那个工作流程并问:

如果任何拥有蓝牙功能手机的人都可以进入房子,为什么我们需要让某人拿起手机并按下按钮?当检测到设备靠近1米时,门就自动解锁。这样我们就不需要为设计和编写可视化界面付出多余的精力了。

蓝牙故事是狭隘焦点的一个很好的例子:目标是以最小的努力解锁门。如果传感器是无线的,那么设计可视界面是没有意义的。

如果您了解业务正在尝试实现的目标以及对用户的价值,您可以将这些知识与您对该技术可能性的了解相结合。只有这样,您才能获得足够的信息以获得更好的答案,并得出结论。

作为开发人员,如果您了解了您尝试解决的问题,那么您将能够提供更好的代码,有时甚至根本没有代码。您不是为在屏幕上书写字符而付费的 Code Monkey。你是一个专业的解决问题的人。

您编写的代码的目的是为了创造价值并使现有世界变得更美好,而不是满足您对自我世界应该是什么的以自我为中心的观点。我们应该根据问题去找解决方案,看看用锤子还是钳子,而不是拿着一把锤子就开始干活。