UI 异常处理 错误处理 处理流程

本文标题中的 UI,是指侧重于与用户有交互动作的 Web 界面。

也就是说,是 Web2.0 概念中的页面。这类网站的内容不仅要展现给用户,更多的内容是由用户贡献的。

有了用户输入的过程,也就有出现错误的可能,在这里,我称之为异常。

传统的 Web 开发过程,都是由产品人员设计页面主要功能,由 UE 人员设计具体的 HTML 页面,最后由 Web 工程师负责页面与程序逻辑的整合。

这个过程中,最容易遗忘的就是错误处理部分。

我们的产品经理和设计师们都有一个潜意识,那就是用户会按照他们设想的过程参与产品的互动。

然而正是这些自诩为互联网界最有创新力的人们忽略了,或者说严重低估了广大网民的创造性。

我们可爱的互联网用户们总是会输入千奇百怪的文字和符号。

但是,我们必须对任何输入都给出一个友好的提示。

很多网站不太注意这一点,我输入一些内容后,糊里糊涂地跳转到了网站的首页,甚至连一个简单的提示都不给,有的用 alert 给一个提示,虽然很不友好,但至少让我知道网站有反应了。

在这个问题上,Google 就处理得很好!典型的应用就是 Gmail 和 Calendar,你的每一步操作,在屏幕顶部都会有一个橘黄色的背景区域,里面有友好的提示,对某些特殊的操作,还有取消按钮。

通过PEAR包来安装 symfony

1、# pear upgrade PEAR
2、# pear channel-discover pear.symfony-project.com
3、# pear remote-list -c symfony
4、# pear install symfony/symfony

在第 4 步,pear 会去配置好的 url 下载最新的 symfony 安装文件,速度会比较慢,而且如果有问题,还要重新下载。
我在安装成功后,在 /tmp/pear/cache/symfony-1.0.6.tgz 找到安装文件,这个文件从 symfony 的 官方网站 上也可以下载,预先下载后放到上面那个路径下,然后再安装,应该就免除 pear 重新下载了。

注意:先检查 php.ini 中
memory_limit = 8M ; Maximum amount of memory a script may consume (8MB)
的设置。

8M是默认值,安装 symfony 至少需要 32M 的内存空间,所以你要把这个内存限制改大一点,然后重启 Apache。

工程师的七个意识

时间意识
不要拖到最后才开始工作,因为总可能会有意外
每件事情都有完成时间表,给自己一个约束,也给自己一份责任
每件事情有始有终,设立一些里程碑,在里程碑上检查自己和他人的进度

质量意识
既有的流程应严格遵守:这是很多他人经验教训的总结
稳定压倒一切:优先解决线上服务稳定性问题
尚无流程的重复实践应创建流程
容忍失败,但不容忍重复失败

沟通意识
平等沟通:在沟通上没有级别概念
坦诚沟通:主动说明存在的问题/隐患和计划的解决方案
及时沟通:任何计划外的变化要及时通知所有相关人员
全面沟通:发送其他部门的信原则上要抄送本部门对等级别经理或总监
必要沟通:当其他部门员工/经理在正在进行的合作项目和规定流程之外,希望你们提供超过半小时之上的专业/技术帮助时,请他们先去找部门经理协调,避免被不必要的工作请求干扰
清晰沟通:当面沟通,电话沟通,召集会议都是有效的形式,但要留下文字记录发给大家

团队意识
每个人都代表了你所在的团队
集体荣誉感:用你的成绩为你的团队带来光荣
乐于给别人提供帮助,也勇于向别人学习
把周围同事当作你的资源,包括你的经理
尊敬身边每一个人

学习意识
为自己设立进步的目标和实现的计划
经常反思下自己的计划落实情况
最大可能的从周围的同事中学习一切好的东西
从每个项目中获得进步
从每次事故中吸取经验教训

实事求是意识
用数字说话,用事实证明,不要有“想当然”的思想
大胆假设,小心求证,不放过每一个细节和疑点
客观公正:杜绝“可能”,“大概”,“应该”这样模棱两可的用词,而是用准确的数字和事实来论证
每个工作能用量化的指标来进行衡量:性能、容量、准确性、召回率、死链率,etc.
没有量化,就没有绩效
通过这些指标衡量自己的成长和进步
通过这些指标知道工作的方向和重点

用户意识
我们每个人每天的工作都服务于各种各样内部或外部的用户
我们每项工作的质量都影响到各种各样用户的工作、心情和满意度
我们成就感的一大部分是我们的工作帮助了多少用户
列出你曾经有的、正在有的和将来会有的各种用户
他们对你的工作会有怎样的评价?

如愿以偿

今天,我加入百度了。

一颗疲惫的心终于可以安定下来。

我又找到了2年前刚工作时的那种感觉。

周围的一切那么陌生,但又是盼望已久;
有很多新的技术要学,但我的求知欲和努力学习的热情却异常高涨!

既然找到了新的归属,从现在起,一切都从零开始。

我要利用这 2年在技术上和生活上积累的经验,去开创一片新天地。

再次庆祝一番吧,今天,我加入百度了!

感谢 Diane Yu, Mr Liu 和 Lily

不知道你们能不能看到这篇 blog,这几天我们一起谈了好多,你们为我分析了很多事情,让我看明白了很多问题。我很感谢你们对我如此器重。可能是我过于执着,或者说任性,但我真的是仔细考虑了你们的意见!谢谢你们的耐心,谢谢你们的帮助,我也很期待和你们一起合作,希望不要等太久……

互联网的服务

刚才说到迅雷,我气愤之余,也联想起了我前一段时间对互联网的一种看法,或者说期盼!

我认为,互联网是一种服务平台,他本身有 2 种特性:

1、不受时间限制,或者理解为数据可以像光速一样快速传输;

2、不受地域限制,任何人只要能联网,就可以访问处在世界上任何地方的一台联网的计算机;

基于这 2 种特性,很多服务产生出来:电子邮件,即时通讯软件,搜索引擎,交易网站,各种网站……

仔细琢磨我们使用的每个领域的服务,会发现,每个领域都有一个市场占有率很大的公司的一个服务,还有一些与他竞争的服务提供商们。

比如,搜索引擎,有Google,百度……,我们想查资料,就会来这里,跟朋友聊天不会来;

交易网站,有eBay,淘宝……,我们买东西,就会来这里,查资料不会来;

收发邮件,有Live,Gmail,看照片不会来这里;

等等等等……

可能你还没明白我的意思,换个角度说吧,以我的习惯为例:

查资料:百度
看新闻:新浪
看八卦:奇虎
买东西:淘宝
收邮件:Live
看视频:土豆
收藏夹:Delicious
下软件:华军
下电影:影视帝国
……

等等吧,也就是说,当需要某个领域的服务时,我会去找我心中那个领域做的最好的那个公司提供的服务。

术业有专攻。

真正成功的公司,必然有一项出类拔萃、与众不同的服务,在某项领域出于绝对的优势地位。

我心中的互联网,就是由每个领域的这样的公司组成。

当我需要某个服务时,去找这家公司的服务就好了。

当然,Google也许想成为所有服务的集大成者。

以他的技术实力和经济实力,往乐观了说,能提供十几个优秀的服务就不错了。

在中文搜索方面,我觉得百度的结果质量还是比Google好,因此我查资料只去百度……

我自己,也希望能创造出一个优秀的互联网服务,专注地研究他,打磨他,用完善的服务给越来越多的人提供方便。

我愿做互联网服务这个长尾中的一个小端点,改变人们的生活……

迅雷 你终将被人抛弃!

就算是我的预言吧,迅雷,以牺牲用户体验为代价换取利益的软件,你的结局就是被世人所抛弃!

我是一个普通的网民,我听说迅雷下载速度快,就安装了你!当我要下载一个软件时,你不光弹出了下载界面,同时弹出了一大堆广告内容!你的程序占用了我电脑的大量资源,我每次要点击“使用迅雷下载”的时候, 心底里都会有一种排斥的感觉,因为你给我留下的印象,就是启动速度慢,打开后电脑变得出奇的慢!弹出一大堆讨厌的广告!还学QQ弹出一个资讯窗口!

最让我痛恨的,是今天我点击迅雷下载的时候,因为你程序的Bug导致CPU占用率一直100%,而且是死锁的那种占用,除了鼠标能移动,其他按键一律没反应,说没反应是有点冤枉你,说句实话就是我按Ctrl+Shift+Esc弹出任务管理器用了10分钟!!!

你不敢相信我有那么强的耐心吧!我今天就是要看看,到底是哪个程序把我的系统搞死的!!!

整个过程中我只是启动了迅雷,等了10分钟后,任务管理器终于打开了,我的猜测也终于证实了,就是你这个该死的迅雷!!!

我只能强行关机,我的所有程序都没法保存,我的所有工作都因你而白费!

我想你也能想到,当我的电脑再次重启后,他将要执行的第一个操作是什么!

没错,就是卸载你!永久的卸载你!

我保证我永远不会再用迅雷!

你就等着像我一样的用户越来越多吧!

商务中国 域名转出

我有个国际域名是在国内的一家网站注册的,后来查询所有人信息,看到注册商是”商务中国”。

由于这家注册商的 DNS 服务器很不稳定,经常造成域名无法解析,我决定把域名转移到  Godaddy。

因为有了从新网转出域名的经历,于是去商务中国的网站找域名转移申请表,怎么也找不到。在百度上搜索,查到好多评论,说商务中国服务很不好,态度也很差,我的心一下凉了半截。

不过这么拖着也不是办法,就打电话直接问商务中国的技术支持,问如何转移域名。

出乎意料的是,人家的态度很好,很耐心,让我更开心的是,他们的服务很体贴,我的域名是他们的下级代理代为注册的, 商务中国的域名转移政策是代理商可以负责域名解锁和域名转出。

Learning jQuery Book pdf 下载

jQuery: The Write Less, Do More JavaScript LibraryDownload Documentation Plugins Tutorials Discuss Blog
jQuery is a new type of JavaScript library.
jQuery is a fast, concise, JavaScript Library that simplifies how you traverse HTML documents, handle events, perform animations, and add Ajax interactions to your web pages. jQuery is designed to change the way that you write JavaScript.

“You start with 10 lines of jQuery that would have been 20 lines of tedious DOM JavaScript. By the time you are done it’s down to two or three lines and it couldn’t get any shorter unless it read your mind.” – Dave Methvin

辛辛苦苦找到了 JQuery 的文档,为了方便各位 JavaScript  Developer 的学习,我给大家提供下载啦:

Packt_Publishing_Learning_JQuery_Jul_2007.zip

各位在转贴时别忘了注明出处哦!