回应一下 JSPatch 安全问题

2016-1-30 评论(4) 分类:互联网

今天收到不少人给我发这篇新闻《曝苹果应用商店逾千款iOS应用存安全漏洞》,以及其他媒体转载或翻译的一些类似的新闻(1 2),每次我都要解释一遍,比较累,写篇文章说说具体情况。

起因是网络安全公司 FireEye 发表了一篇 JSPatch 安全研究报告,里面介绍了 JSPatch 的使用,并指出一些潜在的危害,分三种情况:

1.开发者自己本身有恶意,在自己开发的APP里加上 JSPatch 引擎,用户安装后开发者自己下发恶意脚本,可以做一些恶意的事情。但这里做恶意事情的权限并没有超出iOS的沙盒,也就是说,有没有用 JSPatch 开发者能做的事是一样的,没有 JSPatch 开发者同样能在代码里实现好恶意功能,通过苹果审核后再开启,所以这条挺废的。

2.开发者接入的一些第三方 SDK 里包含了 JSPatch,SDK 的作者再对这些 APP 下发恶意脚本。这种需要开发者防范,避免使用一些恶意 SDK,目前还没有发现有这样的恶意 SDK。

3.开发者自己在 APP 接入 JSPatch,若开发者没有针对传输的 JSPatch 脚本加密。攻击者就通过网络传输的中间人攻击手段下发恶意脚本到用户APP。这点确实比较危险,接入 JSPatch 时请做好加密传输,只要做 RSA 非对称加密传输就不会有问题。加密方式可以参考之前的文章《JSPatch 部署安全策略》,以及项目自带的 JPLoader 实现。

除了以上这三种情况,接入 JSPatch 的 APP 没有其他问题。据了解大部分使用 JSPatch 的 APP 都已经做好非对称加密,并没有什么安全风险。FireEye 上提到 1200 多个 APP 接入 JSPatch,上述媒体文章直接断章取义成上千款 iOS 应用存在安全漏洞,不知道是看不懂原文,还是 KPI 压力的产物。

设计符合直觉的用户界面(WWDC2014 #211)

2014-7-1 评论(1) 分类:互联网

看了WWDC2014 Session 211 – Designing Intuitive User Experiences,觉得挺不错,写下笔记。

用笔写字这个技能是我们从小就开始一直锻炼的,刚开始我们写得乱七八糟,后来慢慢变好,在这个训练过程中,书写这个技能已经变成肌肉记忆,在书写的过程中完全不用去思考,不会去注意到是怎样书写,怎样握笔,用了什么笔什么纸,一切都在无意识中完成,书写这一行为已经成为直觉。熟能生巧,这就是直觉的来源。

直觉是训练出来的,专业技能的直觉普通人是没有的,飞机几百个按钮飞行员可以不假思索找到需要的按钮,普通人不行,因为你可能有着别人没有的直觉,所以若纯粹按照你自己的想法做产品,可能会让部分用户用起来感到沮丧,你需要站在用户的角度和情景去设计,了解他们知道什么,不知道什么,直觉是什么。(按国内的说法就是让自己进入小白模式)

为什么产品设计要符合用户直觉?因为这样用户用你的APP不用学习,不用思考,可以随心所欲,用起来很爽,就会去给好评,就会有更多人使用。

设计符合直觉的产品,有5个特点。

5.平台共性 (Platform Savvy)

世上有数不清的各种笔,但你知道他们都可以用于书写,你会用同样的握笔方式,书写方式使用它们,这是笔的平台共性,对一个个体的认识可以延伸到同一平台上其他相似物的认识。

iOS平台上有很多这样的共性,例如在iMail列表里,向左滑动会出现删除按钮,一旦你知道了这个操作,在iOS上其他APP的列表里,你想删除其中一项时你会尝试左滑,预期中它是应该会出现一个删除按钮的,如果没有出现,用户会觉得很沮丧,出现了会觉得很爽很流畅。如果你在一个平台上做的东西不符合这个平台的共性,用户就会觉得你这个APP很奇怪。

建议用iOS平台约定成俗的东西,例如返回按钮位置,按钮点击位置,图标大小,图片缩放等等,这样用户没有学习成本。如果你想打破这些规则,做标新立异的APP,那你需要通过各种途径告诉用户。

4.易于导航 (Easy to Navigate)

1.告诉你现在你处于APP的什么位置。Tab Bar标签/Navigation Bar标题都是干这事儿的。
2.告诉你还能去哪里。用tab bar的优势是把你能去的地方全列出来了。
3.告诉你去到那个地方会有什么东西。把一堆功能分成清晰的几类,让人能从分类中就大概知道那里有什么。

逐级前进

在用户真正需要一个功能之前,不要把这个功能展示给他。可以通过加深分类层次做到这点。虽然这会增加用户选择点击次数,但如果分类清晰,用户不用思索就可以找到他想要的功能,这是更好的体验。

可预期

不要轻易改变用户已经习惯的东西,有重新学习的成本。例如根据使用频率把导航列表的各选项调上调下,用户体验是很糟糕的。

让选择中状态清晰可分辨

Tab Bar的选中状态应该做成什么样?若是仅仅换个颜色,并不够突出选中状态,iOS的做法是把图标填充满,再换显眼的颜色。做选中状态的原则是,要让图标不换颜色时,用户都能隐约分辨这是选中状态。

连贯体验

iOS里相册点击一张图片,图片是从原来的位置放大的,让你确认点击的就是那张照片,返回也是,从大图缩回小图,让你知道这张图片在你缩略图列表的位置。若点击图片然后从右滑进一个大图则没有这种连贯的体验。

提供暗示

一些不易发现的交互方式要提供足够的提示。举例一个星辰APP,点击星辰本身不会去到详情页,要点旁边的(i)按钮才会,但点击星辰会让i按钮闪一下,表示可以点击这里。

少即是多

提供更少的选择,会让更多的用户去选择。若选择多了,用户不知怎么选,反而不选了。在苹果和梨中选一个很容易,在很多种水果中选一个很难。

抽屉式侧滑导航问题

优点:
1.不占用屏幕空间,省去了Tab Bar的空间
2.导航栏位置大,占满屏幕,甚至可以上下滑动

缺点:
1.无法解决上述“我在哪里”“我还能去哪里”这两个问题。导航被隐藏起来,不像Tab Bar一直在那里,让用户知道自己在哪里,还能去哪里。
2.切换点击次数多。Tab Bar只需要一次点击,瞬间去到目的地。侧滑需要点击汉堡图标,等动画做完,再选择目的地,再等动画做完,效率低。
3.要占用Navigation Bar一个按钮的位置。放左边会跟返回按钮冲突,一般解决方法是返回到最上级才出现这个导航图标,这是不好的体验。若导航按钮放右边,右边就不能放一些iOS上习惯放的按钮,如编辑,分享等,导致用户体验很怪。
4.侧滑导航把很多不常用的东西都放进去了,显得很杂乱。

3.清晰 (Clear)

语言

No big words 不要用晦涩的词,用所有人熟知的词。
Avoid jargon 不要用专业术语,除非你的用户群是专业人士。
Be descriptive 用语义清晰的词
Be succinct 简洁
Avoid truncation 避免句子太长被系统用省略号截断
Make text legible 选易读的字体,不要用乱七八糟的花哨字体。

图标

用大家都熟知含义的图标,例如信息图标和搜索图标。
用跟现实中大家熟知的物品形状相近的图标,如闹钟图标。另外别以为软盘是大家熟知的物品。
不要用一个图标代表不同意思,例如用搜索图标代表检查。
图标是不能被用户学习的。
图标是很小的,避免用复杂的图形,不然缩小了不易辨识。

动画

有时用动画可以清晰引导用户。如iOS相机的聚焦,首先聚焦框从大到小缩放到聚焦位置,让你注意力集中到这个聚焦框上,然后框闪了两下,提示你聚焦已完成,可以拍照了。
另一个例子是锁屏输入密码,若输错密码,四个密码原点会跳一下,可以让用户很直观地知道密码错了,而不用去读文字。

2.简单 (Simple)

不要做一个复杂的APP,繁杂的功能会把真正用户需要的功能掩盖隐藏在深处(不适用于中国)。不要给用户一些他们不需要的功能(或者是80%的用户不需要),过多的功能让用户分心,难以找到他们想要的东西。

1.专注 (Focused)

一个APP应该专注做一到两件事。小而美,打磨精品,为用户提供最好的解决方案,才能在120万APP中脱颖而出。

iPhone越狱的安全性

2014-4-5 评论(2) 分类:互联网

风险

理论上iPhone越狱没有安全性可言,所有安装在你手机的APP都以root权限运行,它们可以:

1.随意读取修改系统上任意文件,获取微信支付宝等APP的数据,上传到自己的服务器保存。

越狱后所有APP都有权限访问系统任意文件,系统上APP存放目录是固定的,也有配置文件定位指定APP的目录位置,可以直接获取到这些APP的数据库等敏感文件。很多APP的数据库是没有加密的,聊天记录/邮件/日记什么的随便看。支付宝数据库倒是加密了,而且貌似有些数据不是用sqlite存储,目前我不知道能取出什么信息,这类敏感APP应该都在安全性上下了功夫的。

2.删除系统文件,导致系统崩溃。

可以恶意删除手机上任何东西,目前没见过这样病毒式的APP,反正任何APP都有能力可以做到。

3.通过Cydia Substrate插入动态库,给APP注入程序。

Cydia Substrate给开发者提供了一个方便的代码注入框架,所有cydia上的iOS插件都依赖它,一般人用来开发iOS上的插件,但也可以用它给指定的APP注入程序。开发者可以做到写一段程序,绑定一个APP,在这个APP启动时这段程序可以同时运行,并侦听这个APP的事件,或者修改这个APP里一些函数。图谋不轨的人可以用它做什么……就靠想象力了。这里有给支付宝注入程序让手势解锁失效的例子

避免

以上安全风险都基于一个前提:安装了一个恶意APP或插件。所以只要自己注意不要下载到这些东西就不会有问题。越狱后不知名的APP就不要下了,特别是那些只有盗版市场有的APP。不知名的盗版市场最好也不好用,cydia的源不要随意添加,下载插件要谨慎。

另外实际上AppStore上的APP在越狱环境下也不是绝对安全的,因为苹果也检测不到这些APP有没有做以上那些不轨之事。对于在盗版市场下载知名APP,似乎跟在AppStore上下载没区别,目前没见到有安装包被注入程序,不像Android市场。

像支付宝这样敏感的APP数据是有加密的,就算获取了也没那么容易破解。所以也不用太担心在越狱机器上用它们不安全。

虽然越狱后的iPhone有这么高风险,比Android不安全得多,但因为市场环境好,没多少恶意APP出现,所以情况还是乐观的,了解清楚情况,只要稍微注意点就没问题,至今没听说有人因越狱了iPhone损失了什么。

题外话

因为越狱后APP可以修改任意文件,所以APP也可以修改自身的启动画面,这样就做到动态替换启动画面了。有些APP在显示了启动画面后会出现广告,其实可以考虑在越狱机器上直接用广告替换启动页面,不用白白等待看广告的时间,提升体验。前段时间自选股就是在启动后出现三四秒的广告,体验极差,后来被撤下了,若是启动屏就是广告,不至于体验差到要去掉。

微信怎样保持简洁

2014-1-27 评论(2) 分类:互联网

微信已经是很庞大的APP了,功能非常多,但在产品表现上还能做得很简洁,这点挺难得,说说它是怎么做的。

渐进增强

渐进增强是web前端开发的概念,因为web前端需要兼容许多新旧浏览器,新的浏览器可以做到很炫的功能和效果,旧的浏览器做不到,渐进增强的意思是先为旧浏览器做好到基本功能,再在不影响的旧浏览器的基础上针对新浏览器做更多功能和更炫效果。

新旧浏览器类比不同用户及不同层次的需求,微信的很多功能就属于渐进增强,你只会看到基本功能,但它也有高级功能,高级功能隐藏在背后,你需要时才会看到它。如5.2新增的语音转文字,要长按语音才会出现这个功能,隐藏了入口,不打扰原有界面和交互,需要它的人用过一次就知道它在哪里。又例如拍照或截屏后在聊天框自动提醒是否发送这张图片,优化了体验又完全不影响原有功能。还有很多地方是这样的体验优化:会话的图片墙,共享地理位置,转发聊天记录,多选聊天记录删除转发,双击全屏显示聊天内容,搜索聊天记录,聊天表情,收藏,群聊,二维码扫描里的封面/街景/翻译等。

个人觉得摇一摇里的摇歌功能也可以这样做,隐藏起来,有需要的人再去开启。摇歌和摇人有不同的用法和不同的场景,现在这两个功能并列在一起,感觉很突兀,把摇一摇搞混了,多了摇歌的功能又没给微信增色,完全没必要,实际上QQ音乐做这个事更合适,而且它也已经有这个功能了,不知为什么要留恋这样的小功能。

限制入口的增加

包括限制自身和外部功能入口增加。微信至今外部功能放在一级目录的只有游戏和支付,其他外部功能都在公众号和服务号二级目录下,需要时才会推送显示,显得很简洁。对比下电脑上的QQ,按钮有多少,再看看新浪微博APP,连发微博都分了9个按钮,什么签到秒拍红包飞好友圈,眼花缭乱,另外都不好意思说微博web版了。手机QQ在抄微信后简洁了很多,但在动态里还是多了像生活优惠/腾讯新闻/热门活动/阅读中心这些入口。微信作为一个大号APP,按钮入口价值连城,能做到限制入口增加,原因是:产品地位高,不差钱,负责人有产品洁癖,负责人话语权很高。

不过这点有时做得过火了,微信5.0还是5.1的时候,聊天框右上角的魔法棒没了,变成发起聊天,魔法棒下的扫一扫移到了发现tab下,跟摇一摇放一起。可能原意是保持产品逻辑合理,第一个tab就是微信核心聊天功能,扫一扫产品逻辑上不属于这里,所以移到发现tab里,另外也遵循了“一个功能只有一个入口”洁癖原则,不再增加快捷入口。修改后扫一扫的入口等级跟原来一样,都是点一下就能看到,原先是点右上角,现在是点tab,看起来似乎没问题。但这个修改非常失败,微信花了很长时间培养大家点右上角扫一扫的习惯,这样的改变让人很不适应,另外新的入口跟摇一摇放在一起,都是X一X,很难快速分清扫一扫在上面还是下面,经常点错,体验很差,最后还是改回来了。

二维码

要让产品简洁就要隐藏或加深入口,把功能隐藏或加深又不利于推广,怎么办?二维码不仅连通线上线下,还直接解决了功能入口这个问题,真是大杀器。有了二维码,微信可以不用给公众号任何入口,就像没有这个功能一样,只要用户有需要,通过扫一扫二维码,公众号的功能就出现,十分快捷简便。二维码本身就是个大入口,微信可以让很多功能隐藏在它背后,如web微信的登录,微信支付。二维码再配合聊天框、内嵌的网页可以很容易让微信扩展功能的同时保持简洁。

阿里与微信

2013-11-29 评论(4) 分类:互联网

淘宝

淘宝近期屏蔽了微信中指向淘宝的链接,用户无法在微信上浏览淘宝,卖家无法在微信上推销淘宝商品。

有人说这跟用户和卖家的需求背道而驰,但这跟几年前淘宝屏蔽百度是一样的,流量入口不能落入另一个巨头手里,当时如果淘宝没有屏蔽百度,大家逐渐习惯在百度搜东西再去淘宝购买,百度成了购物入口,淘宝活在百度的阴影下,任人宰割。而这次微信成了流量入口,不仅如此,微信除了是入口,还控制着整个浏览过程,用户浏览过程始终留在微信里,加上微信之前屏蔽了网页中跳转到第三方APP和AppStore的功能,显示出微信对在其中浏览的内容控制权,微信不允许从微信APP跳到淘宝APP,直接把整个购物过程包在自己地盘里,比百度更狠,更糟糕的是,以微信的流量,这样下去是有可能包揽淘宝大部分移动端流量的,淘宝应该在有这个苗头的时候就掐断。

那用户和卖家被损坏的利益怎么办?同样参考屏蔽百度的举动。在屏蔽百度里,卖家少了百度过来的流量,买家无法从最常用的搜索引擎中搜索他们想买的东西,看似损失很大,实际上没什么,大家全都到淘宝去就行了。现在也一样,卖家少了一个营销推广渠道,买家无法在常用的聊天工具上分享淘宝的东西(实际上这需求不多),相信淘宝会在淘宝APP或来往上设法弥补这些损失,不过来往是不可能做起来的,完全一样的产品形态很难击败已成熟的对手,况且还是IM这种没有关系链就玩不转的东西,况且微信团队各方面都比来往团队强(从来往的结果看),阿里还不如把搞来往的精力放在支付宝的线下支付。

支付宝

关于微信支付,看了知乎这篇回答后茅塞顿开,原来微信支付有这么大的能量,但有两个问题:

1.微信支付体验很好,绑定银行卡后每次支付只需要输入六位数字,钱就直接从你银行卡飞走了,不论是支付一分钱还是几千块钱,都是这样。体验是好了,但安全和体验是相对的,安全性越大体验越差,体验越好安全性越差,不知道是不是技术的突破打破了这种关系,但就用户角度来看,多数用户会怀疑这样简单的支付流程下的安全性问题,导致不绑定银行卡,至少不会绑定主要的银行卡,用户不想绑定余下的就走不通。

2.如果支付宝做的不是担保,而本身就是银行类似物呢?那支付宝就不是一个中介了,上面的文章提到的问题就没有了,余额宝的出现会逐渐让大家倾向于把钱放在支付宝(余额宝=支付宝)而不是银行,这样实际上用支付宝支付和在微信上用银行卡支付是一样的,甚至更便捷,支付宝的转账等功能远比银行卡转账方便快捷。如果说保守的人还是倾向于把钱放在银行卡而非支付宝,那因为这些人对钱财安全的重视,同样不会去把银行卡绑定微信。

线上支付已被支付宝包揽,线下支付是支付的主要竞争点,不过这个似乎实施起来难度巨大,微信的优势在于除了支付还可以为商家提供跟客户交流的公众号,不过从微信会员卡的实施情况来看,用户似乎并不买账,如果绑定银行卡的人少,将举步艰难,相对来说更看好支付宝,不过支付宝在这方面应该加把劲才行。

题外话,如果一个拥有庞大用户量的产品可以无限延伸做什么成什么,那全国只会有腾讯一家互联网公司,微信是很了不起,但媒体对微信的吹捧太过了,微信支付颠覆了支付宝,微信电商颠覆了淘宝,微信会员卡颠覆了大众点评,微信的公众号可以灭了所有媒体,微信的服务号可以灭了APP,最搞笑的是有人说微信游戏会把APP游戏灭了。。偶然看到这篇文章,感觉挺恶心。

伊书的几次更新

2012-8-14 评论(12) 分类:互联网

6月10日发布伊书以来,至今两个多月,又发了三个版本,从1.0到1.3,算起来两三周一个版本,这个节奏还挺快的,能这么快是因为我业余时间不知道要做什么,就只能做伊书了,提交一个版本后,会马不停蹄开始下一个版本的功能,AppStore审核周期又那么长,1.1和1.2都审核了两周,一般在上个版本上架时,新版本差不多做好了,这次1.2到1.3的更新只花了两周,就是因为这样,1.2上架时,1.3已经做好了,提交审核后6天就上架了。

记录一下这几次更新。

1.1完善了书籍阅读外围的事情,如导入导出书籍,书籍来源的增加,书籍分类等。(7.14)

这些功能最大头的是书籍分类,交互上有很多要做,较繁琐,也为设置按钮的摆放纠结了好一阵,尝试了多种方式都不合适,最终还是把它从书籍列表页去掉,只有阅读页有入口。

itunes导入书籍,需要遍历文件的创建时间以筛选出新文件,找了很久获取文件创建/修改时间的方法,object-c里提供的方法没有只有这个文件真正的创建时间,没有副本创建的时间,搜索很久才找到用C语言获取文件时间的方法stat()。底层知识不熟悉的代价。

1.2完善书籍阅读过程的事情,如书签笔记,字体导入。(8.2)

书签笔记,这四个字包含的工作量太多了。书签还好,只是有点繁琐,设计上花了一些时间。笔记这功能是最难的,因为CoreText渲染出来的文本,是没有选中功能的,需要自己实现文字的选中和操作。文字的选择在1.0版本发布之前就已经粗略调研过,参考了EGOTextView的程序,当时找遍网络关于CoreText文字选择的方法,幸好有EGOTextView,否则要我全部自己研究实现,不知要多久,所以我在第一版发布时就说“enormego是天使般的公司”。在文字选择的各种细节调整上花了非常多时间,还有解决文字标记,点选标记的功能,都碰到不少难题,有的解决了,有的在可接受范围内就不解决了,在“完美”和“完成”上我有我自己的平衡点,自己做APP感觉好的地方是,这个平衡点完全自己掌握。

字体的动态导入,一开始我以为这是做不到的,在能搜到的字体导入方法中,都是字体加入项目工程一起编译,不能让用户自己导入字体。后来有网友跟我说已经有APP实现,我才知道这是可行的,几经搜索终于找到方法。有时候一些事情别人能做到,确定可行,自己才能做出来,先行者与其他人的差别巨大。

1.3支持TXT格式,图片显示,微博分享,分类密码,章内快速翻页等。(8.14)

这个版本更新的内容较多较杂。每一个功能都有点不容易。

TXT格式,我自己不怎么喜欢,用这种格式书籍排版勘误分章什么的质量不会好到哪去,只是顺便支持下。自动分章的功能少不了,阅读软件们给分章起了个更好听的名字,叫智能分章,试一下后发现只是根据第X章X卷这样的关键字去匹配分章,连第X章出现在正文中间也照分不误,很简单,不怎么智能,我也差不多是这么分的,如果有些书籍没这样的关键字分章,就根据长度拆成多个部分。TXT格式的基本阅读是没问题了,当然没达到很好的程度。

书籍内容显示图片,其实在1.2已经有这功能了,不过1.2需要epub在HTML页面里显示指定图片的宽高才能显示出图片,大多数图片还是显示不了,到1.3做了自动读取图片识别宽高,所有图片都可以显示了。除此之外做了图片的放大缩小,因为整个阅读界面的手势太多了,View的层级也很多,比较复杂,费很大劲才把图片放大缩小这功能做出来。

分类密码实现简单,但其实并没有完全实现用户使用这个功能的原衷需求:隐藏不想让别人看到的书籍,因为分类密码在很显眼的分类选择处暴露了这个需要密码的分类的入口,让别人知道了你有这么个分类不想让人看到,会逼问你密码。更好的解决方法是直接隐藏掉加锁的分类,解锁时显示,但由于这样做产品逻辑太复杂,操作交互也繁琐,纠结很久,采用这种最简单的方法,这也是一个权衡。

快速翻页这个功能我自己是不需要的,但似乎很多人都有这个需求,由于伊书内容渲染实现的方式问题,暂时没法做到全书进度条拖动翻页,所以只做了单章内的快速翻页。但这个进度条的入口要放哪里也纠结很久,对于这种(我觉得)不常用的功能,不想为它在显著位置新增一个按钮,最后很隐蔽地需要在阅读时点击中下方,它才会出现。这太难发现了,只是暂时没办法的权宜之计。

微博之旅

2011-10-21 评论(3) 分类:互联网 Tags:

从08年3月开始用微博,到现在三年半了。至今认真用了四个微博,因为不同的原因迁移。

第一个用的是饭否,微博的先驱,有感情的一个平台。可惜用了一年半后,在09年7月7日饭否被关了,被迫迁移到第二个平台twitter,在twitter上混了一年,后来政府慢慢对twitter封得越来越紧,把中文圈全干掉了,我不想折腾,迁移到腾讯微博用了几个月,后来朋友们都去了新浪微博,起初我只是在新浪微博评论他们的微博,后来就慢慢迁移到新浪微博了。

在很早我就说过,我用哪个微博平台取决于我朋友们用哪个平台,相信这是大部分人的选择方式,还有一部分是看明星在哪个微博,不过如果不是狂热的明星粉丝,开个马甲关注足矣,决定真正使用哪个平台的,还是身边朋友。

前两次微博迁移是迫不得已,最后一次是新浪硬生生把人抢过去了,平台效应已经形成了,腾讯微博即使有内嵌QQ的方便,仍比不上新浪微博。不知道在其他人群是怎样,在我所接触到的人群范围内,除了同事 (我在腾讯),其他有用微博的都是新浪微博了。感觉腾讯微博已经输了,不过我猜可能90后那些喜欢玩QQ秀的比较多人用腾讯微博,没研究。

腾讯微博的活跃用户应该远少于新浪,用户数量水分很多,甚至活跃用户的水分也很多,很多是通过Q空间和签名同步,有的是从其他微博同步过去。腾讯微博僵尸粉丝很多,很长一阵子我一发微博就被不认识的人无评论转发,而且是即刻,貌似腾讯微博没严打这些用户,在新浪微博没出现过。在腾讯微博有1000个粉丝,可能只相当于在新浪有100个。

新浪腾讯微博同质化严重,微博这样的平台不需要两家一模一样的,就像QQ。MSN和QQ不是一样的,至少MSN是有主攻市场的,但现在腾讯和新浪就是一模一样的,微博没有用户就玩不转,用户只会越来越聚集在本来就多的那个平台。

新浪腾讯微博上娱乐信息过多,互联网十几年在BBS等地方积累下来的老段子在微博上不断转来转去,重复内容很多,无营养,无意义。不是说不关注某些人就可以避免这些内容,整体氛围如此,避不了。

挺羡慕其他国家有facebook的,微博对所有人都公开,跟facebook性质不同,偏向媒体/传播,个人品牌打造,facebook偏向个人生活,有隐私设置。我发的微博大多是生活,没办法,人人网太不争气了。

饭否在刚复出的时候还好,跟几个朋友在上面交流感觉不错,但一年过去了,饭否没什么跟新浪腾讯微博差异化的举动,只是做了几个应用,不免令人失望。twitter越来越少人上了,已经成为一个高端人群的微博,没事上去看看感觉挺好的。

说说HTML5/FLASH/webApp

2011-9-18 评论(2) 分类:互联网 Tags:

又好久没写博客,我必须凑数做到每个月至少一篇,不然破坏了这几年的传统感觉不太好。

最近HTML5太热门了,在微博上老是看到HTML5又能干嘛干嘛,又做出什么炫酷效果了,然后又跟FLASH对比,FLASH必被淘汰,这种论调出现得太频繁了,感觉挺无聊。用炫酷效果来宣传HTML5实在不是明智之举,现在HTML5能做到的任何效果除了WEBGL的硬件加速其他的5年前的FLASH就已经能很好地做到,而且性能更好得多,随便搜一下FLASH酷站,看看里面的交互,哪个不比目前纯WEB的方式强,感觉WEB使人机交互退步了10年。当然FLASH的优势是交互和效果强,HTML的优势是对内容处理能力强,现在互联网全是内容,一切以服务内容为主,强的交互和设计靠边站,FLASH也只能在游戏和视频上混了,视频上HTML5是可以代替FLASH,但游戏上HTML5提供的功能要在做游戏上赶上FLASH目前的水平恐怕还得四五年,到时FLASH会怎样还不知道。

我不是在唱衰HTML5,只是对那些天花乱坠的追捧和与FLASH的对比有点反感。HTML5只是前端开发的一些功能延伸,给HTML订了一些规范,给JS加了一些接口,给CSS加了一些高级特性,有了这些接口,webApp可以做得更好,没其他的什么。所以真正热的是webAPP,不是HTML5,不过把HTML5作为webAPP的代名词也没关系。就像几年前的Ajax一样。

webApp确实是现在和未来的热门,在移动端上,现在已经可以结合PhoneGap这样的框架给webApp提供底层接口,webApp已经能享用到跟原生APP一样的功能,但是性能上跟原生APP差距甚远,不过这会在未来一两年的硬件升级上把这个问题解决。到时套了PhoneGap的webApp就可以和原生APP媲美了,对于内容展示性的应用,例如微博,邮箱,SNS,由于webAPP开发比原生更容易,能写一次代码跨平台运行,那用webApp代替原生会是更好的解决方案。而对于交互性和性能要求强的应用,例如游戏,地图,QQ还是用原生APP实现,各司其职。

附带一下介绍目前HTML5提供的所有功能的slide:http://slides.html5rocks.com/

新浪微博的“开放平台”

2011-5-16 评论(7) 分类:互联网 Tags:

做了个东西打算用微博帐号直接登录,先做了新浪微博的登录,东西做好放上去了,测试过程才发现新浪微博未通过审核的应用只允许10-15人登录,超出的人无法登录。这个规则貌似是新浪微博的创新,其他开放平台未通过审核的应用只不过限制一下请求次数和发微博时没有显示来源,新浪微博则所有应用必须通过审核否则完全无法用。

经过6天的审核,出了结果,没通过审核,原因很明确:“无应用截图”。这个原因足够充分也合理,但也足够蛋疼,所有审核的应用必须有应用截图,难道程序不会判断一下提交审核的程序有没有截图,然后提醒一下开发者加上?机器0.001ms能做的事情让人工做了6天,效率真高。

截了应用的图,传了上去,重新提交审核。再经过5天的紧张审核,今天收到审核结果了,还是没通过审核,原因是“不符合开发者协议要求”。这是原话,所有的描述。当时感觉好像我写了个程序然后编译器告诉我你语法错误了,究竟是哪一行出错自己找,不懂就去看语法书。多么蛋疼的提示。

我去看了《微博开放平台应用审核规范》,这么长的框框条条有点反感,但还是看了,然后发现我不符合条件的就是我的登录按钮是自己做的,没有用“标准登录按钮”,因为这个“标准登录按钮”太小了和我的网站不搭。于是我违反了“合作网站连接”的第一条规定。不知是不是因为这样才不让我通过审核,我不能确定,上面在想什么我只能猜,这点上新浪微博颇有那个啥的风范。

貌似我见过的做过新浪微博应用的人都对它颇有微辞,什么神奇的事都有,大家都知道它是什么德性了,我只是发发牢骚而已。希望腾讯微博能赶上新浪微博,不然根据目前情况看让新浪一家独大的后果比较惨。腾讯微博在开放上做得还是比新浪微博好的。

简洁与开放

2011-2-12 评论(7) 分类:互联网

简洁

比较一下twitter/facebooe和新浪微博/人人网,可以看到两种不同的风格,简洁和花哨。

新浪微博/人人网上满布花哨的表情/徽章/广告等东西,眼花撩乱七八糟,除了页面花哨,功能也花哨,国外的人看了可能受不了,但似乎国内的人喜欢这样的风格?

国人打开一个网页,如果有很多地方可以点,有很多不同的内容和功能,就会觉得这个网站内容丰富,能吸引自己,所以花哨点好。而外国人则专注于自己需要的信息,其他的不理,所以页面越简洁越好。就像某个调查中国人和外国人搜索的不同,外国人一般目的明确,搜一个关键字,点一个链接,离开google。而中国人搜一个关键字,点N个链接,不断下一页,为此google在中国还把搜索结果的链接设成了新开窗口。

整体上国人逻辑性没那么强。我们的文化是含蓄,圆滑,不像外国那样直接了当。另外国人喜欢热闹,鞭炮响遍春节代表喜气洋洋,网站也要跟上这样的氛围,花哨的页面开起来就是热闹。开发商必须迎合大众的口味做出这样的产品才能获得市场。

但豆瓣似乎是个例外,豆瓣做得足够简洁,跟国外网站差不多,简单的设计,突出内容,没有花哨的表情和广告,唯一的方形广告内容一般也足够酷,这样一个网站在国内也可以有庞大的用户数量,是否可以说明花哨不是必须的?按照官方的说法,豆瓣是4000多万中国都市青年生活的地方,是技术和产品为核心,生活和文化为内容的创新网站。它网站和目标用户的定位都比较高端,高端用户群偏向于喜欢简洁明了的风格,很正常,豆瓣2000万活跃用户在4亿网民中占的比例也不高,从这个官方统计来看,豆瓣的用户确实都属于高端用户。

人人网的iphone和android客户端都做得比较简洁,由此猜测针对高端用户群的应用是需要简洁的,而中低端用户群则需要花哨来取悦他们。

本来校内网有机会做成中国的facebook,成为能与腾讯百度抗衡的网站,但他们运营团队善于降低网站品味来迎合大众需求,把校内网改成猫扑一样,名字也变成很俗的“人人网”,急于在网站上放各种大幅广告,无一点年轻人的理想主义,无法像扎克伯格那样不追求盈利保持简洁,可能这么点理想主义在国内是行不通的,也可能运营团队的性质和能力决定把它做成能盈利的一般网站就够了。

虽然花哨是能吸引大量低端用户快速盈利的方法,但简洁不仅能吸引高端用户获得良好口碑,也能带领中低端用户进入,随着中低端用户的成长忠诚度也会高,带领用户而不是迎合用户在长远来看更有发展空间,曾经的myspace就是花哨的。

开放

facebook在做开放平台时,把自己的相册产品某些功能去掉了,原因是开放平台没有这样的功能,他们要跟开发者保持公平。facebook不会分成应用在这个平台上赚到的钱(除了支付系统),彻底的开放造就了zynga playfish等公司。

而国内的开放平台普遍开放程度不高,还要分走利润的50%以上(人人网52%)。新浪微博的某些API如搜索和地理位置只对合作者开放。

facebook和twitter很少自己做应用,只做好基础服务和扩张用户,国内的人人网和新浪微博则在持续做应用。 可能国内的劳动力足够廉价,公司本身也没什么使命感和野心,做网站是很现实的为了赚钱。既然多招几个人在自己的平台下做几个应用能赚到钱,为什么不做呢。

从长远来看更开放的平台能得到更好的发展,带来更多的利益。但抛下眼前的利益不要在资本公司来说很困难,国内的环境也不由得让你慢慢培养用户,在各投资方和上级的压力和干预下,运营者就算有心也无力。不过现在看来国内所有运营者都无法忍受自己白白提供资源给别人赚钱,即时这让他们巩固了平台的地位。