页面加载时间度量

  页面加载时间(Site Speed 或 User Latency)是网站可用性的一个重要指标,指的是网站的页面从加载开始到加载完成所花费的时间。这个时间反映了网站的访问速度,有一个说法是,如果一个页面超过 8 秒还没有打开,用户就会失去耐心,从而关闭窗口或转向别的页面。关于这个时间的度量,主要有以下几种方法。

  方法一、前后端协同度量

  服务器端收到当前页面的请求时,记下当前时间 t0,并输出到页面上。页面加载完成时(onload 事件触发),客户端 JavaScript 脚本将当前时间与 t0 比较,得到页面加载时间。

  这种方法的不足是需要服务器端配合,并且由于服务器端时间与客户端时间不一定完全相同,还涉及比较复杂的时间同步问题,看似简单,做起来却并不容易。

查看全文>>
发表: 01-09 20:34 | 点击: 211 | 回复: 0 | 标签: JavaScript html5 网站分析

我的2011年

  2011 年做了或经历了很多事,这儿是我觉得值得记录的一个摘要:

  一、做过的事

  1、工作上,继续捣鼓用户行为数据。

  这个工作很有趣,但有些地方也不容易做,经常有“书到用时方恨少”的感觉,还好有老大和同事的支持,很多难题还是逐一解决或绕过了。不过,仔细想想,今年自己在这个工作上并没有很大的突破,大部分精力还是花在了一些比较基础的工作上了,深入的分析做得还太少。

查看全文>>
发表: 2011-12-31 23:13 | 点击: 162 | 回复: 0 | 标签: 生活 夜话

生产率法则

  最近几个月比较关注效率以及时间管理的主题,前段时间看到一个幻灯片“Rules of Productivity”,觉得很不错,于是抽了点时间将它翻译成了中文。

  幻灯片中,作者先解释了什么是生产率,然后讲述了 8 个生产率的实验,每个实验之后都总结出一些经验和教训。比如,第一个实验是关于加班的,长时间工作会有什么后果?

  生产率与工作时间的曲线

查看全文>>
发表: 2011-12-06 21:13 | 点击: 336 | 回复: 3 | 标签: 我读 效率

IE下链接包含@字符时的一个问题

  最近遇到 IE 下的一个闻所未闻的 bug:如果 <a> 元素的子节点为纯文本节点(即 nodeType 为 3,innerHTML 中没有 HTML 标签),并且值包含“@”字符,则在修改该 <a> 元素的 href 属性时,它的 innerHTML 也会跟着变。

  重现 bug 的代码类似这样:

查看全文>>
发表: 2011-11-30 22:38 | 点击: 275 | 回复: 5 | 标签: JavaScript

学习GTD

  GTD 是 Getting Things Done 的缩写,是一种任务管理的方法。这个概念由 David Allen 提出,并随着他的书《Getting Things Done》(中文版名为《搞定》)而广为流传。

  我们都羡慕那些有着良好时间管理的效率达人,我们也都曾经或多或少地接触过一些时间管理方法或 todo 工具,或许你已经在使用一些感觉还不错的方法或工具了。那么,GTD 与其它方法相比有什么不同呢?

  一、GTD 方法

  GTD 方法分为五个步骤:搜集、处理、组织、回顾、行动。

  搜集

  GTD 的理念认为,我们的大脑并不擅长于记住太多的待办事项,我们每次往大脑里加入一件待办事项时,大脑的负荷就会增加一些,效率也会降低一些。因此,我们首先需要一个机制,将所有的未尽事宜从大脑中清空出去。

查看全文>>
发表: 2011-11-23 22:59 | 点击: 479 | 回复: 0 | 标签: 方法 GTD 效率

发布一个快捷切换hosts的小工具:SwitchHosts!

  日常开发工作中,我们可能经常需要切换各种 hosts 绑定,比如在本地开发时可能需要一个开发环境的 hosts 绑定方案,发布到测试环境后又有一个测试环境的 hosts 绑定方案,然后可能还有一个预发布环境,最后可能才是真实的线上环境。本地开发过程中,还可能有多组不同的 hosts 需要绑定,比如前端开发环境,数据库对应的开发环境……。其结果就是,我们经常需要在各个 hosts 绑定之间切换,这会花掉不少时间,而且这个过程毫无乐趣可言。

  同事介绍过几个切换 hosts 方案的小工具,但看起来都不是很好,于是抽空自己动手做了一个小工具: SwitchHosts!

  这个工具是使用 Python + wxPython 开发的,因此在 Windows / Linux / Mac 上都可以运行。不过由于不熟悉 Linux 和 Mac 下 Python 的打包及编译,目前只提供了 Windows 下的二进制可执行文件下载,Linux 及 Mac 用户在配置好环境(Python / wxPython / chardet)后可以直接运行源码。当然,也非常欢迎熟悉 Linux 或 Mac 平台下的 Python 的大侠帮忙制作一个 Linux 或 Mac 版的可执行文件。:-)

  程序在 Windows 下的运行截图如下:

  SwitchHosts!

查看全文>>
发表: 2011-10-20 21:17 | 点击: 3815 | 回复: 28 | 标签: python 工具 wxPython

关于让浏览器自动刷新

  最近有人开发了一个叫 F5 的软件,用来监视某个目录下的文件,当文件改变时刷新浏览器。它非常适合前端开发使用,尤其是多个显示屏时。

  我试用了一下这个软件,也大致研究了一下它的实现。它的原理很简单,在本地启动一个 HTTP 服务,将指定的目录作为根目录,开发者可以在浏览器中通过 http://127.0.0.1 访问这个目录下的文件。同时,这个程序会在访问的 html 文件中插入两个 js,如下:

查看全文>>
发表: 2011-10-16 16:43 | 点击: 681 | 回复: 8 | 标签: 工具 AutoHotKey

绿色版“python -m SimpleHTTPServer”

  pySimpleHTTPServer 是一个简单的 HTTP 服务程序,功能与在安装了 Python 环境的机器上执行“python -m SimpleHTTPServer”一样。

  由于经常需要临时搭建一个 HTTP 服务用于测试,在安装了 Python 环境的机器上这很简单,但有时需要在一些只有最基本的系统的测试机上做测试(比如测试页面在 IE6/7 下的表现),因此,我将 Python 的这个方便的功能做成了一个绿色 .exe 文件。

查看全文>>
发表: 2011-09-23 21:59 | 点击: 530 | 回复: 0 | 标签: python

关于黑暗森林

  关注国内科幻小说的朋友应该对“黑暗森林”这个词不陌生,是的,这儿说的就是大名鼎鼎的刘慈欣(以下简称“大刘”,“大刘”即“大名鼎鼎的刘慈欣”)在他的《三体》三部曲第二部中提出的那个黑暗森林。虽然在《三体》第三部中作者对黑暗森林的概念做了一些延伸和补充,但总的来说,这个词的含义基本上就是第二部结尾处对它的描述:

  “宇宙就是一座黑暗森林,每个文明都是带枪的猎人,像幽灵般潜行于林间,轻轻拨开挡路的树枝,竭力不让脚步发出一点儿声音,连呼吸都必须小心翼翼:他必须小心,因为林中到处都有与他一样潜行的猎人,如果他发现了别的生命,能做的只有一件事:开枪消灭之。在这片森林中,他人就是地狱,就是永恒的威胁,任何暴露自己存在的生命都将很快被消灭,这就是宇宙文明的图景,这就是对费米悖论的解释。”

  《三体II·黑暗森林》封面

查看全文>>
发表: 2011-08-21 16:04 | 点击: 850 | 回复: 3 | 标签: 纯属娱乐 博弈 我看 夜话

MongoDB学习笔记

  最近尝试在项目中使用 MongoDB,遇到不少问题。关于 MongoDB 的基本安装和使用就不写了,另外一些问题记录如下(以下问题基于 MongoDB 1.8.2):

  1、关于 MongoDB 中最多可以使用多少个集合

  我首先遇到的是大量的数据是保存在一个集合中还是分别保存在多个集合中,如果选择后者的话,MongoDB 最多可以支持多少个集合呢?

  官方网站有关于这个问题的说明(Using a Large Number of Collections)。默认情况下,MongoDB 的每个数据库的命名空间保存在一个 16MB 的 .ns 文件中,平均每个命名占用约 628 字节,也即整个数据库的命名空间的上限约为 24000。

查看全文>>
发表: 2011-08-14 15:58 | 点击: 940 | 回复: 0 | 标签: NoSQL MongoDB

最热标签

我看过的书

友情链接

我的Email:
E-Mail
feedsky
抓虾
google reader
鲜果
有道
九点
feedsky