Category Archives: Product Design

Always use email as username

Don’t let your user input a "username" while registering.   It’s totally unnecessary.  And it can be awkward when user logins with an Open ID, such as Google or Facebook.  What will be the user name in this case? 

If a user registers on your site, just use their email as username.  It will make registration simpler.

If the user logins with an Facebook account,  you can use "facebook:some@some.com" as the user name. 

“Forget Password” feature for mobile apps

How to design "forget password" feature for mobile apps?   It is trickier than www websites if you are a very small team. 

Here are the options. Each of have its limitations. 

1. Send the password resetting link to the user’s email box and then let them click to return to your UI interface to reset the password. Unfortunately, this link is an http url, meaning that you have to have an html page for the UI interface. As a result, you have to host a small HTML5 website for the password resetting UI, in addition to your android/ios application you’ve spent a lot of time building.  Another problem is that mails sent by your system could be seemed as spam

2. Send a random code via SMS to the user, with which they can reset the password on your android/ios  UI interface. This is a clean, lightweight solution from users’ point of view. And there are no spam issues.  However, your user have to be registered with his mobile phone number in the first place, which a lot of people may not want to do. 

3. Only allow the user to log in with an OpenID such as a Google account or Facebook account.  By doing this you throw alway all the password management problems and you get focused on your business. However, there are cases that a few users don’t have an OpenID.  

P.S. My friend said there was a 4th option. I think it is great: Send the user a random password and force him to reset password after logging in. 

产品决策不是科学

产品决策不是科学。当发生争论时,两边的观点似乎都很有道理,谁也说服不了谁;这跟技术争论很不一样。

解决方法之一是独裁,让位高者决定,因为位高者的想法一般更“靠谱”;但在大型组织中,位高者对自己的绩效非常敏感(丢官、丢地盘、被逼走),所以决策时经常有自己的个人利益考量在内,为了KPI做一些短期行为。 

怎么办? 一是像苹果一样实施用户体验压倒一切的价值观,二是让公司维持小的团队规模,让老板自己来决策,因为他不需要向上汇报。

人在创意产品跟在实现产品时的关注点完全不同

实现产品时会非常注重时间管理和执行效力,要做的事情越精简越好,概括起来就是追求收敛。

创意产品时不会那么在乎时间,因为思考本身的时间成本是很低的,多想想,也花不了多少时间;而且人在思考时又容易触类旁通,得到很多新的想法,让产品更丰满。创意时追求的是一种“发散”的风格。

好的软件工程师应该鼓励产品经理放飞想象力,或者跟他一起飞;但在产品实现时要严格控制项目规模和执行纪律。好的产品经理也应该理解高效执行的重要性,在确定本期产品范围后提供精准的产品需求文档(PRD) 

不同定位的功能,不要轻易集成到单个产品中

如果两类功能的用户定位不一样或者产品定位不一样,即使他们相近或者有关联,也没必要做成一个产品;完全可以做成两个不同的产品,这样才能让两个产品分别做到极致。

做到一起,可以形成“一站式综合体”,对用户有利;但有时就是过于迷信这一点,反而让人形成不伦不类的感觉:你会去沃尔码买吉他吗?   

产品里可以有非核心功能,但要弱化

收到一封应届生简历,在介绍自己开发技能的同时,用了大量篇幅陈列自己的各种社会活动经验,严重喧宾夺主,看了两眼我就关了。

以前也收到过社招简历,我们招的是高级Java工程师,这封简历说自己C++和J2EE都很熟练,给予的篇幅也是1:1; 给人一种“样样通,样样怂”的印象,我看了后也就直接关掉了。

我这样做确实太主观了,并不理性、科学,但人性就是如此:如果你要推销自己,非核心的东西很有可能不但不加分,反而影响对你的整体认知,有可能让人怀疑的核心能力,也有可能带来庞杂感影响产品定位。如果这些简历里不提这些东西,或者只是简要提提,那可能就有面试机会了。

互联网产品设计也是这样。如果微信把购物、转账放在首屏,那微信是什么产品?人是矫情并且感性的,不会听你讲那么多道理,他们只管直觉。

非核心功能并非就不好,它可以起到丰富产品的作用。所以你可以把它放到一个角落里,或者把它视为另一个产品,只把当前产品作为它的入口。

“品牌”这个东西对互联网产品来说价值不是那么大

传统的营销理论把“品牌”视为关键竞争力。两款差不多的产品,品牌好的那个会占据更多的市场,即使它的质量稍差一些。所以有追求的企业会花大力气建立、维护品牌,品牌的重要性甚至超过产品本身。比如肯德基的汉堡,其实是非常一般的。

品牌重要,个人分析有三个原因:

1. 信息不对称,消费者在信息方面处于弱势。消费者自认为无法专业地考察产品的质量,对于原料选择、生产流程、购后的潜在问题更加不清楚。所以,还是要买品牌较好的,比较放心。

2. 更换成本高,导致消费者不太敢去“试一试”别的东西。如果发现的买的不好要换另一种,那已经付出的钱就算是浪费了;就算可以退换货,物流、时间成本也高。 考虑到这种风险,买品牌的综合成本是最低的。

3. 品牌的价格对自我印象的影响。买苹果、穿Nike肯定比买小米、穿班尼路更有面子。 

互联网产品没有这这些问题:

1. 信息对称。一个网站好不好用,一个APP好不好用,用户自己用用就一清二楚;至于网站背后用什么技术,性能架构好不好,用户仍然不知道,但这完全无所谓。 所以,大网站也装不了逼,不好用老子就走。

2. 更换成本为0. 反正都免费,说走就走,MySpace说垮就垮。

3. 选择哪个网站,对自己的面子没有帮助。用亚马逊还是用京东,都改变不了吊丝或高富帅的形象。 

 当然,品牌还是有用的,它有一个惯性作用,让用户会在一段时间内继续使用产品。 只不过在互联网行业中,这个惯性持续的时间会很短很短,你必须持续地提升产品质量和用户体验,才能维持这个惯性。

表单元素的对齐方式

摘自《web表单设计-点石成金的艺术》

1. 标签顶对齐(即上标签下输入框)

  a.好处:用户眼睛只需从上往下移动,这样可以快速完成表单

  b.坏处:占用多过垂直空间,导到用户需要向下滚轮

2. 左标签右输入框,标签右对齐

  a.好处:由于标签右对齐,存在一条虚拟的中间线;所以用户眼球基本上仍只需从上往下移,完成表单速度仍然较快

  b.坏处:标签没有左对齐,不利于快速读完标签内容(因为人们习惯读左对齐的文本);当一个标签本身要占两行时,这个问题更严重

3. 左标签右输入框,标签
对齐

  a.好处:可以快速读完标签内容

  b.好处:用户的眼球既要上下滚,又要左右滚,影响表单填写速度

4. 标签以灰色字体放在文本框里作为提示

  a.好处:非常节省空间

  b.坏处:缺乏始终在场的指导,对健忘的人不利

附作者提供的最佳实践:

高效导航

摘自《web导航设计》

1. 导航结构宁可广一点(主栏目数比较多),也不要太深(栏目深达四五层)。 当然,太广了也不好。

2. Don’t make me think

3. 减少用户操作。比如在长页面的尾部提供头部一样的分页导航,否则用户还要滚轮到头部再按下一页。

4. 使用Rich Interaction(ajax),在页内完成功作,减少页面跳转和全局刷新。