细节设计之美:扩大可操作区域
从 Google 的一个细节说起:

整个虚线框都是“Next”的可点击区域。看似不经意,却直接提升了细节的可用性。其它页码也巧妙地和上面的字母 o 一起组成可点击区域。与百度和 Bing 的翻页相比,Google 优胜。
再来看 Twitter 的注册页面:

很大很舒服。到了这个页面,瞎逛都会忍不住去填写填写。提示文字也恰到好处,能提供帮助,不恼人。
我喜欢 Google. 来看下 Google Docs 中的颜色选择 阅读全文 »
从 Google 的一个细节说起:

整个虚线框都是“Next”的可点击区域。看似不经意,却直接提升了细节的可用性。其它页码也巧妙地和上面的字母 o 一起组成可点击区域。与百度和 Bing 的翻页相比,Google 优胜。
再来看 Twitter 的注册页面:

很大很舒服。到了这个页面,瞎逛都会忍不住去填写填写。提示文字也恰到好处,能提供帮助,不恼人。
我喜欢 Google. 来看下 Google Docs 中的颜色选择 阅读全文 »
获得了公司技术部的“打狗棒法”最佳专业奖,心里挺高兴的。但因为缺乏准备,同时不善言辞,现场想到的一点“感想”,一点都没表达出来。既然擅长笔头,就写下来吧。
我的网名是射雕,金庸武侠小说里,最喜欢郭靖。这次能获得东邪亲手颁布的“打狗棒法”,非常高兴,非常感激。谢谢(一堆领导的名字)……
获得“打狗棒法”,我还得感谢我自己。因为我比较笨,洪七公传的这套打狗棒法,我领悟到奔三十了,才明白打狗棒法有三重境界:
第一重境界是:会打。学会如何打狗,学会如何钻研技术知识,学会如何解决实际问题。会打很难,需要不断实践。对于 JavaScript, 对于前端开发,我花了近 3 年时间,才刚刚初步掌握“会打”。对于第一重境界,只要努力,总会有收获。
第二重境界是:敢打。壮汉拿根大棒,如果没有勇气,也未必能打得了狗。敢打需要勇气和决断。淘宝的项目繁多纷杂,新增或改进某个功能,需要有胆气去做去承担。这样才能让“会打”发挥作用,否则就成了理论家,纸上谈兵。对于第二重境界,我觉得我刚刚做了一点点,还需要疯狂锤炼自己,努力去做一个“会打”同时“敢打”的淘宝小兵。
第三重境界是:不打。这是我瞎诌的。中国人喜欢三,只说两重境界说不过去。最近招聘新人,也带过两个师弟。“不打”或许可以理解成将知识和技术传承下去,“不打”是为了让更多人“会打”和“敢打”。此外,有些狗挺可爱的。而且一般情况下,人不犯狗,狗不犯人。面对狗时,或许“不打”,才是最高的打法。心剑无形,这太高深,我就不瞎诌了。
最后,再次感谢(一堆领导的名字)。
注:以上纯属YY, 现场我只说出了脑海里迸出来的“会打”、“敢打”和“不打”几个关键字。虽然知道自己不善言辞,但这次台上失语,实在让自己都怜悯自己。以后一定要努力提高临场发言的能力。
记于此,公于众。鞭策自己,路还很长。
同时相信自己。铁木真也是个不善言辞内向的人(安静的执行官),只要不放弃,总能找出自己的表达方式的。
CSS Sprite 最大的好处是:减少 HTTP 链接数。
页面上的数据,通过 TCP/IP 包传输。在 1M ADSL 环境下,网速最大值为 128 Kb/s, MTU(Maximum
Transmission Unit) 的大小默认为 1500 bytes. 去掉 TCP/IP 的头部信息 40 bytes, 一个 package 可以容纳的文件大小为 1460 bytes. 下面是一张示意图:

需要的包越少,意味着速度越快。
例子:淘宝首页有一张 sprite: hd_20090313.png, 大小为 5.71 KB (5848 bytes). 需要 5 个包来传输(5848 / 1460 = 4.005)。看数据,只多出了 8 bytes. 优化到 5840 bytes 后,就可以减少一个传输包。
也许吹毛求疵了,但对于关键页面,任何细节优化,有时都是值得的。
类似的,对于页面中的链接数量,也可以考虑浏览器的最大并发数来做细节优化。比如,在 Firefox 下,同一个 host 的最大并发数为 6, 增加链接数对下载时间的影响如下:

当链接数从 6 的整数倍增 1 时,下载时间明显增大。考虑 IE6 最大并发数是 2, 减少链接数时,尽量减少到偶数,是一个不错的优化守则。
PS: 出一道题目考考大家:CSS Sprite 的缺点是什么?
最近跟风,在淘宝的 淘江湖 和搜狐的 白社会 逛荡了半个多月,发现除了浪费时间,还是浪费时间。老婆也直指其无聊,大呼上当。下面是一些体验总结:
1. 淘江湖里,玩的最多的是阿里的阳光牧场(和淘乐园是同一个玩意,有客户端版本就不想用网页版了)。我的阿里旺旺有 300 多个好友,开启了阳光牧场的有 117 个,但活跃用户(等级在 6 级以上的)只有 35 个。其中还有不少高级用户(等级在15级以上的)开始把菜园荒掉,退出游戏了。
2. 阳光牧场的一个口号是:玩阳光牧场,学时间管理。然而,我玩到 19 级,得到的经验是:玩阳光牧场,学作弊。不搞几个小号给自己放虫子,升级就是和时间比拼时间。还有一个经验就是:学时间管理,首要一点就是远离游戏。人有惰性,这种小游戏最容易吞噬时间。
3. 阳光牧场缺乏游戏性,能吞噬的时间其实很有限。搜狐的白社会里,游戏中心更危险。这半个多月,找到一个经典小游戏,忍不住一玩就想玩到通关。时间大把的流逝和荒废掉,想想真后怕。
4. 再看白社会的首页,叽叽喳喳满屏的信息。仔细瞧瞧,却都是一篇篇偌大的“某年某月某日,XXX到此一游”。观光了不少人气高的白领日志,也是自言自语者居多,参与评论者寥寥。虽然还是 beta 阶段,我却好似看见了弥漫起来的死气。
我觉得,一个好的能持续留住用户的服务(包括 SNS),必须做到两点:
1. 为用户创造价值,这是吸引用户的必要条件。我觉得淘江湖的核心价值应该是“让大家一起轻松购物”,帮我挑的想法就不错,可以深入挖掘,去做好做精。至于淘农场,除非淘宝上能卖水果和家禽了,这种游戏还是请出淘江湖比较好。白社会则是个大杂烩,结合搜狐的门户特性,个人觉得白社会的核心价值可以为:“分享有价值的新闻和资讯”。目前,白社会什么都想做,我觉得很可能会什么都做不成。
2. 为用户珍惜时间,这样才能留住用户。对大部分用户来说,SNS 是一个休闲和放松的场所。开发者可以站在用户父母的角度去思考:父母希望我们将大部分时间放在工作和学习上,休闲自然也需要,但时间上要适当。这一点,Twitter 做得挺好,你老盯着或老刷新 Twitter 的首页,自己也会觉得乏味。一般隔上半个小时以上才会去看一眼,而且每次浏览,基本上 10 分钟内能搞定。如果白社会的游戏大厅里,当用户持续游玩的时间超过 15 分钟,就友善的提醒用户应该离开去工作了,我相信这样反而会赢得更多用户的再次光顾和心里的信赖感。有时赶人更能持久的吸引人。
简单法则,换位思维,为用户着想,优秀就这么简单又极其不简单着。
行动起来的吧
把阳光牧场的菜拔光,荒并快乐着
把白社会从收藏夹中去掉,投入工作中努力去成为真正的白领
珍惜时间,远离变味的 SNS
生活更美好