• 开发者该以什么为骄傲


    开发者的骄傲

           你的程序对我没那么重要。我不关注它的用户界面,不关注它的名字,也不关注谁开发了它或者它是什么版本。

           我所关注的唯一一件事情就是,你的程序能否帮我实现我的目的。这是一个真正了不起的成就,如果你的程序实现了它,你应该感到自豪。没有必要对关注那些你认为重要的地方。

           当然,你的程序对你至关重要。写过很多代码之后,你就会意识到这一点:代码很难写。你用你非凡的无限智慧站在了智力的顶峰。你甚至已经克服了人类所面临的最大的心理障碍。诚然,你可以站在每一座高塔的顶峰,每一条街道的路口欢呼雀跃。

           但是,请不要这样!因为你的用户从来不关注这些。

           如果你真的聪明,就把程序最好地一面展现给用户。它如此完美,就像从未存在一样。这才是真正得光辉所在。

           这种里面最严重的冒犯者常常在开机时弹出一个窗口已显示它的存在。完全没必要这样。我知道安装了你的程序,如果想运行,我自己会做!所以,请别做这种愚蠢的事情。

           这里有很多影响用户注意力的细节:

    “用户不会为点击三个窗口之后才能运行我的软件而感到苦恼。”

    “我确信,用户在使用之前会弄清楚每个图标的功能,所以完全不需要文字说明。”

    “用户不会介意在运行时弹出这样那样的对话框。”

    …………

           开发者需要做的,是从用户的世界中移除自己的偏见。不再告诉用户你的软件在那里。不到认为用户关心你的程序,希望花费时间使用你的界面,或者学习它的使用。他们所关注的不是你的程序,而是他们的意图。帮助用户更完美得实现他们的目标,这样,你就创造了最完美的程序。

     

    Developer Hubris

    Your program is not important to me. I don’t care about its userinterface. I don’t care what its name is. I don’t care that you made it, orwhat version it is.

    The only thing I care about is that your program helps me accomplish mypurpose. That’s a truly remarkable feat, and if your program does it, youshould be proud. There’s no need to make your program take up more of myattention just because you think it’s important.

    Now of course, your program important to you! When you work on code for along time, it’s easy to become attached to it. It was so hardto write. Your cleverness is unbounded, shadowing lesser mortals in themountain of your intellect. You have overcome some of the greatest mentalobstacles man has ever faced. Truly, you must shout this from the tops of everytower, through the streets of every city, and even unto the caves of the Earth.

    But don’t. Because your users do not care. Your fellowdevelopers might be interested, but your users are not.

    When you’re truly clever, what will show up for users is that program isawesome. It’s so awesome, the user hardly notices it’s there. That is truebrilliance.

    The worst offenders against this ideal are programs that pop up a windowevery time my computer starts. I know your software is there. I installed it.You really don’t need to remind me. If my purpose is to start up my computer soI can use it, how is your pop up window helping me accomplish that? It’s not,so get rid of it.

    There are smaller ways to cause problems, too, that all revolve aroundasking for too much time or attention from the user:

    • “Users will definitely be okay with clicking through three screens of forms before they can use my product.”
    • “I’m sure that users will want to learn all the icons I invented for this program, so taking away the text labels for those icons is fine!”
    • “I’m sure it’s okay to stop the user from working by popping up these dialog boxes.”
    • “Users will totally want to search through this huge page for a tiny little piece of text so they can click on it.”
    • “Why should we make this simpler? That would be a lot of work, and it’s already pretty easy…for me.”

    And so on.

    The true humility required of a developer is the willingness to removetheir identity from the user’s world. Stop telling the user the program isthere. Don’t think that the user cares about your program, wants to spend timeusing its interface, or wants to learn about it. It’s not your program thatthey care about–it’s their purpose. Help them accomplish thatperfectly, and you will have created the perfect program for them.

    -Max

    http://www.codesimplicity.com/

  • 相关阅读:
    StateListDrawable状态选择器
    Shape
    每周随笔
    每周随笔
    每周随笔
    每周随笔
    每周随笔
    每周随笔
    每周随笔

  • 原文地址:https://www.cnblogs.com/johnpher/p/2570599.html
Copyright © 2020-2023  润新知