Perl之AnyEvent 简单介绍和入门
AnyEvent 是一个性能非常好的基于事件驱动的程序,象平时我们写的程序,都是基于过程。我们都是先做完事件1, 然后做事件2,然后做事件3 .这种方式。但其实事件就完...
精选技术长文、实践记录与系统化阅读
低噪声、高可扫读;标题、摘要、来源、标签一目了然。
采集自各技术站点的近期文章。
AnyEvent 是一个性能非常好的基于事件驱动的程序,象平时我们写的程序,都是基于过程。我们都是先做完事件1, 然后做事件2,然后做事件3 .这种方式。但其实事件就完...
这一系列教程会带你快速认识Canvas,这是第一篇,RockUX先带你简单认识一下Canvas。Canvas是现代浏览器中内建的一个画图的方法,这篇文章中,RockUX会介绍如何访问Canvas元素,怎么画图形,变换颜色以及擦除。这个新技术非常的令人激动。 Canvas元素简介 当你听到Canvas的时候,你的第一反应应该是会想到HTML5的新元素。技术上来说,这只是一部分,从现在开始,我们先忘记那个吧。Canvas元素是浏览器新技术对外的一个窗口。
现在移动互联网的创业如火如荼,也看了一些创业的团队和作品,有时候也会没事琢磨琢磨,如果做一个移动产品,选择什么切入点好呢?前几天写了篇博客谈具体的产品对移动社交型app的一点思考,现在想谈谈方向性的选择: 从市场规模的角度来说,有些市场属于垂直领域的市场,例如JavaEye做的IT技术人群,有些市场属于广泛的大市场,例如图片分享网站flickr,不限定用户群体;从需...
从09年第一次阅读Dynamo论文,到最近阅读Amazon S3的一篇专利,一路过来对论文的理解可以简单归结为两个字
首先分享一点数据吧: JavaEye的PV到了140万了,一年前才100万出头,增长算不错的。仍然是单台Web服务器,Rails处理动态请求超过340万,除了真实用户访问,还有API,RSS以及很多爬虫的请求。看JE的alexa排名,CN排92名,全球790名,不过就2台服务器(1个web+1个DB),2个程序员而已。 所以选择技术的时候,不能盯着TOP10的商业网站看,因为很少有创业团队最终能够走到TOP10
本文收集了一些关于浏览器的有趣图片,以图片为主,辅以注释性的文字,应该看起来很舒服。 火狐与IE的战争 火狐和IE的战争似乎从未停止,也最为激烈,经典的火狐(Firefox)咬IE的图片。 换个姿势咬咬。 再换个姿势咬。 咬不死也要烤死。 烤不死也要顶死,看来Firefox和IE真是仇深似海啊,来自这里。
Smartmontool是sourceforge上的一个开源项目,可以对磁盘的S.M.A.R.T.进行提取和定期监控。Smartmontool包含两个工具: smartctl和smartd。
历时数月,连番经历了多个基于触屏手机原生浏览器的网页产品设计与开发。对触屏手机用户体验设计有了进一步的认识,也颇想分享些心得。 上篇包括以下一些内容: >>精神与基础 何谓高端――高端设计精神 平台间平衡 不同分辨率及比例间移植 浏览器框架 >>设计“泛”过程 移动场景下的用户需求 少即是多的设计原则 界面气质
什么是工具型产品? 工作的这段时间以来,我主要参与了一些电子商务类产品的交互设计,我发现这类产品的设计思路和门户、频道等产品有较大的差异,它们更关注于完成任务及操作,而非内容的分类与展示。之前我通常称这类产品为功能型产品。在去年广州举行的交互设计体验日上,通过和其他交互设计师交流,发现在业内这类产品似乎也没有一个固定的称谓,有的交互设计师称之为“工具型产品”,我觉得倒也很贴切。 为什么要单独定义它...
用户与产品之间的相互可以看成是双向线性的过程,手机上输入字母“d”和界面输出显示是一次短交互,完成一次购物支付是长交互,这是使用一次产品过程中。用户体验考量的是用户使用产品的全过程,这个过程包括了从安装到放弃使用的时间轴,交互的良性循环的优秀用户体验的表现。 简单以推荐引擎为例来说明各元素是如何在时间轴上发挥作用的: 初始化。基于群体特征和用户的相关程度,将相似用户喜好的其他物品推荐给用户。
在上一篇文章Serialize/Unserialize破坏单例的最后, 我留下了一个问题, 为了让大家能思考, 我就单独再写一篇给出答案.
在之前的那篇浏览器对Javascript代码执行的限制文章中,描述了5个浏览器在javascript代码执行的时间过长的时候怎么办。它不会改变浏览器的行为,也不可能取消掉后端服务器的进程。不过,计时器可以帮助我们实现长期运行的任务而不需要阻塞浏览器。 什么是计时器 JavaScript代码中,每一个函数都可以设定在某一个时刻之后执行: setTimeout(function,msec[,arg1...argN]),会在多少毫秒之后运行这个函数。后面的参数会传递给要执行...
我们经常采用如下方式定义单列: class Singleton { private static $instance = NULL; /** 不容许直接调用构造函数 */ private function __construct() { } /** 不容许深度复制 */ private function __clone() { } public static function getInstance() { if (NULL === self::$instance) { self::$instance = new self(); } return self::$instance; } } 很多人都会记得对深度copy的保护, 但, 其实我们却疏忽了一点...
代码重构(Code refactoring)有时是很枯燥的,字符串替换之类的操作不仅乏味,而且还容易出错,好在有一些工具可用,以PHP为例,如:Rephactor,Scisr等等,不过现成的工具往往意味着不够灵活,所以今天我要说说Shell在代码重构中的应用。
在之前的文章中,我们讲了浏览器对于JavaScript代码执行的限制和基于计时器的伪线程机制。这里,我们再看看如何在JavaScript中处理大量数据。 在几年之前,开发人员不会去考虑在服务端之外处理大量的数据。现在这种观念已经改变了,很多Ajax程序需要在客户端和服务器端传输大量的数据。此外,更新DOM节点的处理在浏览器端来看也是一个很耗时的工作。而且,需要对这些信息进行分析处理的时候也很可能导致程序无响应,浏览器抛出错误...
到今天为止,飞信2011贺岁版是中国移动发布的最新的飞信pc版本,他的协议和2010区别很小,sip部分仍然是使用的v4版本,除了登录部分修改了一下版本号以及增加了一些与聊天无关的额外功能之外,就没有什么变化了。 我曾经有一个小需求:每天早上8点给自己发一条当天的天气预报短信,经过仔细查看,在下发现飞信客户端上有一个定时短信功能,并且在主界面上可以将天气发送给自己或者朋友,这颇令人振奋,一度以为问题就此解决!!
每次做地铁时,手机信号不好,只能用iPad打发时间。iPad游戏操作明显不如PSP,只适合玩休闲类游戏,操作简单,适合碎片化时间玩,不会导致沉迷游戏而不能自拔。 比如《使命召唤》,PSP版体验绝佳,要用到所有按键来操作三维空间视角转换、射击瞄准和狙击射击扔雷。而iPad版视角转换比较不方便,手指要离开底部左右操作区,在界面上大范围的平移,不像PSP那样在左按键区小范围移动手指就可以快速视角转换和射击瞄准,操作不是很连贯...
今年是IETF成立25周年,ars technica有一篇介绍文章,回顾了它的辉煌成就。IETF的全称是"互联网工程任务组"(Internet Engineering Task Force),主要目标是协调制定互联网标准。 几乎所有重要的网络底层协议,都是由IETF制定的,比如TCP协议、IP协议、HTTP协议、等等。可以毫不夸张地说,没有IETF就没有互联网。 我一直以为,IETF与其他权力机构没有不同----一些人高高在上,另一些人服从指挥。但是,读完介绍文章以后,我震惊...
python逐渐成为笔者最常用的语言之一,因此vim对python有些配置的不合理也渐渐显现出来,这次我们先来解决python的缩进问题。 我们来通过例子来说明,来看一下默认配置下python的缩进情况: 1.dic...
某用户Oracle Database 10g 10.2.0.4数据库,运行在HP 平台上,数据库出现大量系统累积进程,最后导致数据库挂起,影响了业务使用,造成了严重故障。 在数据库的进程记录信息中,我们发现大量的crs_stat.bin -t进程,这些进程部分是Grid Control调度的监控,另外一部分来自用户自定制的监控脚本,这些脚本中最早未能完成的脚本时间为03:32:48。也就是说,从这一时间起,数据库出现异常导致大量crs_stat进程累积,最后耗尽资源,导...