10年前有个数据挖掘(data mining),现在演化为最火爆的BI(商业智能)了。其实本质上,都是在积累了大量数据的基础上,进一步挖掘出数据的特征、数据之间的本质联系、趋势、发现突发事件,从而更好地指导各种商业活动,为决策提供有力的帮助。这样,一个商业组织就成为一个可以自适应、不断学习和提高的有机体了。
对网站来说,数据采集和挖掘就更为重要了。例如,某个用户去年访问量很大,今年却突然大幅度减少,原因可能是下面几方面:
- 出现了竞争对手挖角;
- 客户满意度出现问题,不愿意使用了;
- 统计工具出错;
- 甚至我们的网页出问题,使用户无法访问,等等;
无论如何,如果能够及时发现这个用户的趋势,就可以尽快与用户取得联系,找出确切原因,解决,从而挽留住更多类似的客户。
问题是,如何才能及时发现这种趋势上的骤变呢?以前使用Google Analytics,虽然能够统计出各种基本的数据,但是对于趋势判断不直观,需要手工去统计,浪费时间不说,往往找不出想要的数据。也就是仅仅做到了数据的自动采集。例如上面的例子,如果不知道某个用户是在某个时间段开始才会大幅减少访问量,就想在每天浩若烟海的数据中,把他及时识别出来,几乎不可能。
现在Analytics推出了Intelligence & Custom Alerts,就等于在自动采集的基础上,增加了自动挖掘和透视的功能,把每天被动的寻找关键趋势的过程,变成了自动发现并提醒。这样就不用把时间浪费在每天的分析上了,省时省力,还更准确,更及时。

Analytics可以设置敏感度,以调节提醒的数量。除了有自动的alert之外,还可以定制。简单浏览了一下,发现自动的alert已经很全面了,列几个比较实用的
- 某个群体在线时间大增:比如某个国家、老用户、某个landing页面
- 某个群体转换率大增
- 某个群体访问量大增
- 某个群体访问价值大增
- 来自某个群体的收入大增
当然了,现在的alert还处于beta阶段,复杂的提醒还无法实现,好在Analytics提供 API,可以用来开发自己的应用。毕竟站在巨人的肩膀上,可以拥有不同的视野和起点。Google精选的API应用:
http://code.google.com/apis/analytics/docs/gdata/gdataGallery.html
自从分析了开心网成功的秘诀——越堕落越快乐之后,开心网上的好友越来越多,当然可偷的东西也更多了,真是偷菜偷到手软。每天偷菜、偷动物花费了大量的时间,用了几个外挂,一是不知道实现方式,担心帐号被封;二是本地网速的原因,速度仍然不尽如人意。于是利用闲暇时间,自己动手写了一个开心网外挂的在线服务,开心大盗,随时随地,轻轻一点,手到擒来。外挂运行于服务器上,速度比本地运行更快。
开心大盗采用Java版Google App Engine开发,整合了Google的GWT。开源,免费,放心使用!
开心大盗功能:
- 收获自己的菜地
- 偷好友的菜地
- 收获牧场 TODO
- 偷牧场 TODO
- 停车 TODO
- 种菜 TODO
- 买动物 TODO
- 做最赚钱的工作
- 访问朋友买卖,每天获取100块
- 马甲买卖炒作 TODO
Google Insights是Google推出的一项服务,比Google Trends更进一步,可以显示和比较一段时间内,在各个地区,不同的关键字的热度和趋势。对于研究和分析市场趋势,有很强的指导意义。
Google Insights最多可以比较5个关键字,可以把比较的结果存放在iGoogle中,和嵌入网页。
作为示例,输入了现在比较热门的一些web2.0应用:youtube,facebook,twitter,myspace,yahoo。从比较的结果可以看出
- myspace确实在走下坡路
- youtube势头很猛,Google这16亿没有白花
- FaceBook的上升势头,斜率最高,特别是到了2009年,迅速超越所有其他应用,难怪当年Google为其股价150亿
- twitter到了2009年,确实火爆起来了,不过微型博客毕竟还是微型的,没法跟其他应用比
- Yahoo虽说危机重重,不过还在稳步增长,最近Yahoo又推出了meme等一系列应用,更是让人看到了希望,web2.0时代,后来者往往才是创造奇迹的赢家。
Agile自动测试的重要利器,Selenium测试,功能强劲,适合对web程序进行自动测试。测试脚本,一次编写,反复自动测试,在开发过程中,起到了将功能锁定的作用。
今天有同事问,Selenium测试脚本,是否可以获取当前日期?查了一下发现可以。而且可以把当前日期以各种形式保存在脚本中,供此后输入、比较等操作。这一切源于,Selenium测试脚本可以执行JavaScript片段,这样,JavaScript具有的各种功能,都可以提供给Selenium测试了。
下面这个脚本,可以获取当前日期,可以把日期存储在currentdate变量中,可以用该变量比较界面上的值,还可以把变量的值输入到浏览器的输入框。
<tr>
<td>type</td>
<td>classCIpRanges[0].readableIpAddressRange</td>
<td>javascript{""+((new Date()).getMonth()+1)+"/"+(new Date()).getDate()+"/"+(new Date()).getFullYear()}</td>
</tr>
<tr>
<td>storeEval</td>
<td>javascript{""+((new Date()).getMonth()+1)+"/"+(new Date()).getDate()+"/"+(new Date()).getFullYear()}</td>
<td>currentdate</td>
</tr>
<tr>
<td>assertValue</td>
<td>classCIpRanges[0].readableIpAddressRange</td>
<td>${currentdate}</td>
</tr>
一直在使用Mindjet的Mind Manager Pro,制作脑图。很好用,不过有时候在不同电脑上就觉得很不方便了。最近发现了一个在线制作脑图的工具,MindMeister,可以随时保存,然后在其他电脑上继续编辑。Get Things Done!
画脑图有很多好处,比如记录头脑风暴,分享思想,计划项目,可视化思考。特别适用做课堂笔记,思考一件事情,做计划等等。MindMeister的功能很强大,除了在线创建脑图之外,还可以与朋友实时合作,一个人创建的部分会自动发送给其他人。它还提供分享,密码保护,导出成PDF或各种图片。除此之外,MindMeister还有离线模式,可以嵌入iGoogle,提供IE和FireFox浏览器扩展,更为开发人员提供API。基本上能想到的都有了!
最让人意想不到的是,这么强大的工具,居然是用JavaScript制作了,拖拽一下首页上的demo就知道了。

Google Code Playground提供了一个在线版的Javascript、Ajax的编辑、开发和调试环境,而且可以方便的访问相应的文档。
内置了很多常用的Google API的示例,
- Language API
- Blogger API
- Calendar API
- Earth API
- Feeds API
- Friend Connect
- Javascript
- Maps API
- Search API
- Visualization API
- YouTube API
包括几个Ajax库
- jQuery
- jQueryUI
- MooTools
- Dojo
- Prototype Scriptaculous