软件功能行为的“中国特色”

2009/07/03 | 21:02 | 分类:IT杂谈 | 标签: | 1,116次阅读

  当我把 Firefox 升级到 3.5 版以后,发现一个问题:Tab Mix Plus 插件被报告不兼容。我原先为什么要安装这个插件呢?其实我想使用的只是其中一个功能:双击关闭标签页,我并没有使用 Tab Mix Plus 的其它高级功能。双击关闭标签页,这是我以前使用 Maxthon 的习惯,所以为方便起见我在 Firefox 中也通过插件实现了这个功能。不过随着对 Chrome 使用的增多,我也习惯通过快捷键或者点击标签右边的“×”来关闭标签页了。有关标签页,有一个细节不知道大家有没有注意过:IE 7/8、Firefox、Safari、Chrome、Opera 这几个国外主流的浏览器默认都是不支持双击关闭的;而国产的 Maxthon、搜狗浏览器、世界之窗、GreenBrowser 以及某三流公司的 TT 浏览器却都默认支持双击关闭。“双击关闭标签页”似乎是一个中国特色的功能。
  这两天又在 twitter 上看到 Fenng云风等人有关 IM“群”问题的讨论。这个“群”似乎也是一个中国特色的东西。从低俗至极的 QQ,到新浪 UC、百度 Hi、网易泡泡,甚至以辅助交易为主要功能的淘宝旺旺,都把“群”作为标配功能,好像比别人少个什么功能就会低人一等似的。而看看国外的 IM 们,它们多数都没有像国产 IM 那样的固定群组。老牌的 ICQ、AIM 不支持多人会话,只能通过 Miranda IM 等工具建立临时多人会话;Yahoo! Messenger、Jabber(包括 web 版的 Gtalk)原生支持临时多人会话,但没有固定群组;唯独 MSN(Windows Live Messenger)在支持临时多人会话的同时,也于今年推出了固定的“群”业务。像赢思之类的公司很早就看到了 MSN 在中国市场的这一空缺,率先推出了“小 i 群”那种基于机器人的第三方群组服务,这家公司对 MSN 的本土化也算是有点贡献吧。当然外国人也不笨,在多人交流方面,IRC 就有相当的用户群,ICQ 也有类似 Google Groups 的服务,只不过它们没有像中国 IM 的“群”那样扎堆。
  不仅软件如此,网站也没有摆脱中国特色的一窝蜂。这两年 SNS 火起来了,不要说各大门户,只要是原来有个社区、论坛什么的,统统要弄个 SNS 上线,反正已经有现成产品可以用。而且像什么农场、车位之类的网页游戏也是清一色的,大有让“偷菜”成为吸引流量的必要工具之势。刚刚还说小 i 呢,它不知什么时候把自己的主页都变成 SNS 了,这算不算不务正业呀?
  这些中国特色的软件功能和行为是缘何而生呢?我不敢去扯什么民族的性格,因为我压根不懂这个。但我相信云风和 keso 的观点:产品部门的人不要太听信用户的。很多情况下,所谓的“用户”只不过是他们自己意念中构造出来的形象,用户的需求是对既有市场的重述,而不是对潜在需求的反映。产品部门可以声称用归一化的功能满足大众用户就能够迅速占领市场,进而用自己的特色服务来创造价值。但革命性的市场往往是由小众用户的需求引发的,一味地模仿、追求“人有我也有”,只能在同质化的过程中丧失创新的勇气,创造一个又一个没有实质进步的中国特色软件基因。

Windows Live Messenger drag & drop 小技巧

2009/06/16 | 21:35 | 分类:Windows应用 | 标签: | 822次阅读

  无意中发现 Windows Live Messenger 的一个小技巧:把联系人拖放到 gtalk 或 Fetion、Baidu Hi 的聊天窗口本文输入框中,相应区域就会显示这个联系人的 Live ID(Email)。其实 Windows 的 drag & drop 的原理挺简单的,但 Live Messenger 使用文本格式的 drag & drop 数据,这倒是增强了程序的互操作性。Fetion 和 Baidu Hi 的联系人也是可以 drag & drop 的,但它们使用的是封装过的对象,所以不能把账号什么的以文本形式拖放到别的软件的窗口中。有趣的是,Live Messenger 不能把联系人的 Live ID 拖放到自身的聊天窗口中,如果拖放到非文本区域代表的是加入多人会话。
  顺手写了一个查看 drag & drop 信息的小程序(需要安装 .Net Framework 3.5),含 C# 源代码,需要的朋友可以下载:
  http://files.linjian.org/dotNet/dragdroppad.zip
  http://www.linjian.cn/files/dotNet/dragdroppad.zip
Windows Live Messenger drag & drop 小技巧

Mashup不能更疯狂一些吗?

2009/04/01 | 17:41 | 分类:Web与移动平台 | 标签: | 1,121次阅读

  我不知道用mashup这个词是否合适,也许有歧义吧。我这里指的是将已有的网络或本地应用无缝地整合(不编程或只写很少的程序),来实现一些有趣的应用。
  先说几个简单的例子:我们可以用Gmail的POP3接收+过滤器+139邮箱的短信通知,实现对任意POP3邮箱来信的短信通知;使用Linux shell脚本+libfetion/Google日历/python-xmpp实现对选课人数或火车票信息的实时追踪;使用freetalk+schema脚本+X10协议实现用IM控制电器;还有基于twitter+GroupTweet+IM机器人的跨协议IM群聊等等。
  mashup的实现模式大致可以用下图说明。对于普通用户,Gmail、Google日历、twitter等通用网络工具常常充当了邮件、IM和短信之间的网关,帮助用户实现简单的信息整合。从这里也可以看出,twitter之所以成功,很重要的一个原因是它开放了简单通用的API,允许第三方充分发挥想像来mashup它,同时鼓励第三方开放接口给“第四方”mashup。对于有开发能力的用户,运行于服务器端的脚本可以最大程度地满足各式各样的mashup需求,特别是Google App Engine等服务的推出,大大降低了提供小规模公众web服务的成本。再geek一点的朋友,有可能加入一些外设,利用网络控制或监控计算机以外的实体。但编程这件事在提升应用价值的同时,减少了mashup本身的乐趣。在简单的mashup与编程的mashup之间折衷的,就是把mashup作为一种专门的服务。例如Yahoo Pipes,它以RSS为主要的接口,允许用户使用图形化的编程方式组合各类网络资源,加以计算、过滤,最终生成用户所需的RSS输出。这类服务权衡了mashup的技术门槛与灵活性,可能是将来web应用发展的一个方向。
Mashup不能更疯狂一些吗?
  以前觉得很cool的一些mashup应用,现在看上去也有点太保守、太沉稳了,我好久没有见到什么新奇的创意了。我在想,有什么创意可以基于现有的架构但突破现有的框框?就像AJAX/web 2.0那样,开拓一片不算新也不算旧的小领域。大家也想想吧!

闲扯Gtalk

2009/02/28 | 16:47 | 分类:IT杂谈 | 标签: | 1,123次阅读
  1. 我不太理解的一点是,Google为什么不向用户强调XMPP互联互通的特性?Gtalk刚刚推出的时候,外界普遍猜测Google有望把互通性作为最大的亮点,利用XMPP的杀手锏迫使现有的IM市场转向开放。但事实上Gtalk只在添加联系人的过程瞬间显示它可以和jabber.org等互通(网速快的话根本注意不到)。Google在面向用户的说明页面(http://www.google.com/talk/about.html)上只提到客户端的可替代性,并不强调服务的互通性。在面向开发者的页面(http://code.google.com/apis/talk/open_communications.html)也只用偏技术的语言说明了这一特性。对于多数Gtalk用户来说,他们也许并不清楚Gtalk可以和其它某些IM不加任何设置就能互通。当然,那些IM的影响力不够大可能也是一个原因。Windows Live Messenger和Yahoo! Messenger、Gtalk和AIM,这种保留现有协议的“曲线”互通则成了IT媒体关注的焦点。显然,市场因素胜过了技术因素。但Google理应是一家有实力推动IM标准统一、开放化的公司,它没有像人们猜想的那样力推XMPP,或许真的是商业公司的本性造成的?在这个年代,标准的推广是多方利益的博弈。改变像IM这种与既有用户严格绑定的应用的前景不容乐观。
  2. 有关Google Apps用户的Chat设置。对于使用自有域名开通的Google Apps Chat用户,要设置与其它XMPP的用户互通,需要给域名添加SRV记录,详见(http://www.google.com/support/a/bin/answer.py?hl=en&answer=60227)。要使用第三方IM客户端或网站(如Pidgin、JWChat)登录Google Apps Chat的账户,需要设置连接服务器为talk.google.com,端口5222,详见(http://www.google.com/support/a/bin/answer.py?hl=en&answer=49147)。后一条没有放在Google Apps Help中显眼的位置,需要搜索才找得到。尽管Google Apps一般是由IT管理人员来注册和设置的,但给人整体的感觉就是Gtalk没有走大众路线。
  3. 这段日子Google Talk Chatback Badge以及针对Google Apps的Google Talk Gadget总是“Not Found - Error 404”,不知道Google还有没有兴趣把这些东西做下去了。Gtalk开发博客(http://googletalk.blogspot.com/)更新频率的下降从一个侧面说明了问题。Google从来没有像微软或雅虎那样大张旗鼓地宣传自己的IM,也没有太多地说明它的市场定位。发布三年来,小的改进不少,但从界面到功能一直未见大的变化。Gtalk的用户数量也不及那些对手的零头,不过相对集中在IT圈中,存在一定的忠实用户群体。不知道Google的葫芦里卖的是什么药,是想让Gtalk顺其自然的发展,还是在酝酿着某一天突然暴发?
  4. 较新版本的英文版Gtalk是可以使用账户关联的其它E-mail地址(非Gmail或Google Apps账户)登录的,登录之后显示的是用户的主E-mail地址。而最新的中文版Gtalk(1.0.0.105)却不支持非主E-mail地址登录。从Gtalk登录界面就可以看出来,英文版叫“Username”,而中文版叫“Gmail用户名”。Google的本地化策略还是比较有趣的。
  5. 不知道Gmail和Gtalk什么时候才会去掉“BETA”。