解决 PHP UTF-8 编码问题

  1. PHP文件本身必须是UTF-8编码。不像Java会生成class文件,避免这个问题。
  2. PHP要输出头:header(“Content-Type: text/html; charset=UTF-8”)
  3. meta标签无所谓,有header所有浏览器就会按header来解析。(Leakon观点:我认为很有必要正确设置meta信息,搜索引擎会关心这个设置的)
  4. 所有外围都得用UTF-8,包括数据库、JavaScript、CSS。
  5. PHP本身不是Unicode的,所有substr之类的函数得改成mb_substr(需要装mbstring扩展);或者用iconv转码(基本上linux都装了,没装的话download、tar、make、make install,很简单的)
  6. my.cnf:
    [mysql]
    default-character-set=utf8
    [mysqld]
    default-character-set=utf8
    default-storage-engine=MyISAM
    在[mysqld]下加入:
    default-collation=utf8_bin
    init_connect=’SET NAMES utf8′
    (Leakon观点:默认存储引擎用MyISAM不一定很好,做数据存储我认为应该用InnoDB,根据数据,建MyISAM表用于查询操作,这种方案比较合适)
  7. 在需要做数据库操作的php程序前面加上
    mb_internal_encoding(‘utf-8’);
  8. create table最后边加上ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin
    (Leakon观点:我会选择COLLATE=utf8_general_ci,在对中文字段排序时,utf8_bin和utf8_general_ci结果是不一样的)
  9. phpMyAdmin/config.inc.php
    $cfg[‘DefaultCharset’] = ‘utf-8’;
    $cfg[‘RecodingEngine’] = ‘iconv’;
  10. phpAdmin导出数据时
    把”二进制区域使用十六进制显示”的勾去掉
    (Leakon观点:9、10两步似乎是针对旧版的phpMyAdmin,我用的是2.10.3,可以选择各种连接编码,不必每次改源文件)

以上是我从其他网站找到的PHP编码问题解决方案,有些帮助,并加上了自己的建议,请您指正。

FreeBSD 彩色 目录 LS gnuls

我的FreeBSD,登录的时候,用ls列表目录,是彩色的。

可执行文件是绿色,目录是蓝色,链接是青色,看起来很舒服,也更容易辨认系统。

要做到这样,很容易,只要系统装了gnuls就可以。

这个软件的porst安装在/usr/ports/misc/gnuls。

到这个目录下面,执行make install就可以了。

等安装完毕,在你的home目录下,编辑.cshrc,加入下面折行代码:

alias ls ‘gnuls –color=auto –show-control-chars’

保存,关闭,然后重新登录系统。

这个时候再用ls看看,都是彩色了吧。

如果不行,记得检查一下SecureCRT的设置,选择仿真终端的时候,我这边设置的是Linux ANSI颜色。

有问题来找我~~

我的互联网

夜深了,抱着我的ThinkPad,躺在床上,写写今天对互联网感悟的心得。

我是一个搞Web开发的前端工程师,在某些公司,被认为是最低级的程序员,那里的C++牛人们,认为像我们这样的人就配写几行HTML,只有他们才配每天把算法、架构和高性能挂在嘴边。

我只是觉得,你有这样的想法,只能反映出你那井底之蛙的知识面和对前端技术的无知。

一件事,不同层次的人,会得出不同层次的看法。

就好像清朝的人第一次看见轮船,认为那就是一堆大铁皮,轮船内部的东西,他是看不到的,以他的见识,也理解不了轮船为什么能装载那么多人在海上航行。

今天看到“写给 WEB2.0 站长 不仅仅是泼冷水”,感触挺深。

什么是Web2.0呢?

我的理解,就是用户产生内容吧,在技术上说,就是有数据库保存用户提交内容的网站程序。

很肤浅的理解。

就像那个文章提到的,“典型的WEB程序员”的作品。有些人,确实是只会那么一点点SQL语句,就敢出来做个网站。

他们只是认为,把内容能存起来,能读出来,就OK了。

什么架构、部署、集群、稳定性、安全性、扩展性和可维护性,管那么多干嘛?搞了半天,能用几天还不知道呢。

现在的状况确实也是这样。中国的互联网环境一片浮躁。

有了PHP这样的语言,Unix、Apache和MySQL这样的开源软件,实现个小想法,很快就可以搞定。

曾经有个人,清华的,跟我说,他曾经拿着PHP的手册,看了2天,就出去给人家讲课了。

难怪么,高材生啊,老厉害了,没有他不会的。

照着手册的实例,写几个SQL语句,简单得很。

小想法2天就实现了,然后觉得没有盈利模式,换一个吧。

然后另一个2天开始了……

很多公司就是这样,有的公司,以前做那个3721,很成功,老总给后来人传授经验说:人一生只能做好一件事,我认为让大家用中文上网是个很有意义的事,我就做了这件事,我成功了。

没错,是成功了。

后来,他又做搜索引擎,那个公司,还有自己的门户,还有专杀恶意软件的客户端, 还有针对于阿里巴巴的B2B平台……据我所知的只有这些……,5000万美金,说是做搜索引擎,结果反倒是客户端出名了,B2B平台赚钱了。

主业到没什么起色,网站产品,做了一个又一个,败了一个又一个,本来一个创意很好的产品,几个优秀的工程师, 和几个勤勤恳恳的产品人员,努力了半年多,每天加班到12点,到最后的结果是部门给撤了,产品不做了。

我们辛辛苦苦设计的架构、方案、想法全都不值一提。

有的人写代码,真的是敷衍了事,目的性很强,就是把眼前的功能实现了完事儿,谁管什么可读性、安全性、稳定性、扩展性和隐藏的bug,QA人员发现一个我就改一个,发现不了,那代码烂死在那里我也不再看一眼。

这样的人“效率很高”,说1天完成的任务,绝对半天就搞定了,不会拖时间。也能得到老总的赏识。

而有的人,写的每一个变量,都会考虑到命名是否合理,是否会存在安全隐患,是否做了有效性检验,是否可以保证执行效率;定义一个函数,会考虑是否能够重用,是否做了足够的单元测试。

这样的人,承诺1天的工作,可能做了3天都没做完,只能加班加点少睡觉,换来的还是老总的指责甚至谩骂。

最让人无法接受的,是辛辛苦苦积累的代码和设计的架构,被老总一个昙花一现的闪念,瞬间划上了无奈的句号。

“效率高”的人,他可以每天朝九晚五的,周末还可以尽情的享受时光;

“效率低”的人,只能忍受无理的指责和自由的牺牲。

但,他得到的锻炼,和积累的经验,学到的东西,是任何人都抢不走的。

这个公司不需要“效率低”的人,那他只有离开。

剩下“高效率”工程师的公司,去继续上演快餐一样的互联网闹剧吧,你有的是时间,有的是钱,有的是人,慢慢玩儿吧。

回到正题。

其实做Web开发的人,会考虑很多事,从后往前说吧,后台的操作系统,我们需要很熟悉,至少要能配置Apache、PHP、MySQL、memcached、squid、apc、ea等等,还有安全性配置等等;在程序级,还要保证程序不会出现bug,要设计部署架构,如何使用MySQL,是Master-Slave,还是其他方案,如何做到冗余备份,数据量极速增加的时候,如何无缝扩展;数据库的库和表如何设计,字段编码的选择,优化查询,优化索引,合理分库分表;PHP程序还要考虑算法,安全性,如何构造代码,一个类如何定义,如何抽象出一个类,实现接口,如何扩展,避免重复DRY(Don’t Repeat Youself),要用xdebug查错和优化性能;PHP与缓存程序的接口,如何清除缓存,如何保证同步,还有网通电信跨网段的问题;到前端,如何在服务器上部署代码,图片、上传等要用单独的服务器,如何引用外部链接,HTML要符合W3C标准,要用CSS把页面框架和布局分离开,要用Javascript写AJAX,要做到跨浏览器,还有如何与PHP实现MVC框架,还有配置URLReWrite使搜索引擎认为链接是很友好的,还有……太多的内容,样样都要比较精通才行,请问这容易么?

最可怕的是,老板还不给你足够的时间去一样一样地做这些事。

我自己深有体会,人们在尝试做一件从来没做过的事的时候,刚开始一点感觉都没有,不知道如何做,不知道怎么做。

随着时间的推移,你会慢慢理解你做的事,你会比别人在更深的层次上看待你要做的事,这个时候,你就有感觉了,你自己心里已经知道该如何去做,但似乎有时候说不明白。

这时,你最需要的就是时间,给你机会,让你把那朦朦胧胧的刚刚领悟的真谛,慢慢地表现出来,让大家都可以理解。

至少我通常是这样。

但每次都是在这最关键的时候,被釜底抽薪,项目被取消,这事儿不让做下去了,因为老总又有新想法了,对这事儿没耐心了。

我已经恨透了这种事,我只知道,百度,从1999年到现在,一直在做搜索引擎,核心的业务一直是主业,百度人会慢慢体会搜索引擎,慢慢领悟其中的奥妙。没有很长的时间作为基础,任何人也无法想明白其中隐藏的巨大商机。

下面再给Google点时间吧。

我这个Blog,也用了流量分析系统,是Godaddy提供的付费服务,也许是我太少见多怪,最近刚发现 Google Analytics 这个东西,试用了一下,发现里面的分析十分全面,也更准确,更好用。

刚才在使用的时候,突然想和朋友一起分享数据,我就想,要是这个也有Google  Docs提供的那种多人协作模式就好了,我可以邀请别人看我的网站流量统计数据。

后来一想,这个功能估计比较复杂,牵扯到用户中心,权限,通知,界面,管理等等一大堆相关功能,开发起来工作量应该很大,而且分支很多,也更容易出bug。

如果最开始没有很好地设计系统架构,加上这么一个用户看来很简单很必要的功能,代价非常大的。

这时我又想到symfony这种框架的价值所在,他是由很多经验丰富的人,根据以往的开发经验,设计的一个开发框架,已经把很多问题都考虑得很全面了。

要是用这种框架来做,估计工作量就会明显减少。

大伙儿注意了,到这里,我还都是在思考,在设想。

突然,我在Analytics的底部,居然发现了我想要的功能,就是设置用户,我可以把流量分析报告共享给其他Google用户!

看来,Google真的做到了想用户之所想,做用户之所求。

这也证实了我的另一个想法:

互联网,目前的状态,就是一片还未开垦的荒地,全球几十亿互联网用户,他们的需求,加起来,估计IPV6的总量都装不下,要满足这些用户的需求,目前的互联网,还太初级,太简单。

而作为Web开发人员,或者说互联网公司,最重要的,我认为是解决这么几个问题:

1、有成熟的设计理念
2、从简单,单一,小需求做起
3、采用高效率的开发方式,比如使用成熟的开发框架
4、坚持不懈、锲而不舍
5、质量第一,绝不为了速度牺牲质量
6、等待您的补充……

今天先到这儿吧,啰嗦一大堆,如果您觉得我说的有点道理,请给个回复,谢谢!

本文还会继续,如果转贴,麻烦注明出处,让俺也在互联网混个脸熟,拜托了!

才疏学浅,不知所云

IE 无法打开 pdf rar http协议 cache-control

前两天在开发过程中遇到一个问题,用php做了一个下载文件的程序。

点击文件链接,如果是pdf、rar等类型的文件,浏览器会询问是打开还是保存。如果选择保存,把文件保存到硬盘上,就可以正常打开,但选择打开,就会出现问题,IE会提示“文档已损坏”。

反复检查问题,包括检查header的Content-type,都是正常的,没有问题,而且用Firefox不管是选择打开还是保存都正常。

以为是浏览器的问题了,后来,试着改了一下http头,加上了header(“Cache-Control:”),就可以解决了,里面不能使NO-CACHE。

看来在细节上,Firefox比IE考虑得更周到一些!

写给 WEB2.0 站长 不仅仅是泼冷水

当互联网吵吵嚷嚷的进入2.0时代,当互联网的技术不再是那么高不可攀,当复制变成家常便饭,互联网热闹起来了

    myspace火了,中国冒出更多的myspace

    youtube刚刚起来,中国的视频网站就遍地开花

    51拔地而起,中国出了无数的SNS

    facebook则改变了中国站长的抄袭方式,不再学chianren了,校内火了
……….

    当抄袭变成习惯,我想说的是,模仿,站长,你准备好了吗?

    如果你打算做垃圾站,或者赚点广告费的网站,请不要点击这篇文章,我从技术角度方面谈谈WEB2.0网站的模仿问题。

    当投资和流量都不是问题的时候,我想说的是,您真的一帆风顺吗?

    拿SNS网站来说,当匆匆上线的2.0,当一笔笔投资砸进去的时候,当流量上去的时候,您的困惑在什么地方?

    我做过多个2.0公司的技术顾问,简单的谈谈2.0公司遇到的问题(涉及隐私,我用A B C D代替),这里就不再赘述大家众所周知的页面静态化,缓存和代码安全等问题了,有点技术的2.0公司的CTO都知道这些东西,我们谈点发展之后的问题

A公司

    A公司做的是SNS网站,程序是两个毛头小伙子做的,目标直指51,程序开发是一帆风顺,功能也比51牛多了,推广也是一帆风顺(A公司有自己独到的推广 方式。但是当ALEXA到2W的时候问题出来了,每天下午4点左右,网站速度慢的惊人,基本上打不开,公司三台服务器CPU100%,让人郁闷的是公司的 网络配置方式,居然是双WEB的集群,而单独一台DB数据库。整个瓶颈在数据库,于是我建议做DB的集群,分析了一下数据结构,MD,典型的WEB程序员 的作品,没有一点数据库设计规范,功能实现是可以,如果要扩展,不可能,集群基本上是不可能的,怎么办?不能办,于是,一个月的时间修改程序,数据结构基 本上换了一遍 前期砸进去的几十万打了水飘,用户走光了。

    结论:WEB2.0前期设计的时候不应该只考虑功能,应该认真考虑一下底层和数据结构了。

B公司

    B公司也是做的SNS网站,程序是3个人开发的,CEO是某名牌大学的经济学硕士,有点知己网的味道,又有一些特色出来,说实话,公司的潜力不错,CEO 有很强的运作能力,感觉前景不错。系统架构还行,但是—但是系统崩溃了,why?系统没有考虑到用户有个海量的说法,文件也有个海量的说法,用户的相 册,图片全部存贮在WEB服务器的一个分区上,每个用户一个目录,而打开性能监视器,磁盘的IO高的惊人,基本上无暇响应。众所周知,文件系统也是一个数 据库,单独大文件无所谓,关键是整个是300多个G的零碎文件,大量的读写操作,系统崩溃,数据丢失,文件系统的一个链断了,用户数据全部丢失!!!这是 一个非常沉重的问题,系统整整停了一个月来做数据恢复(单独文件很容易,但是海量文件目前还没有一个软件能组织起来软件架构)。解决方案:修改程序架构, 做分布式文件存贮(程序修改用了8天,但是文件转移却又用去了将近一个月),20万用户损失殆尽

    结论:WEB2.0前期的设计应该有应付海量存贮的考虑,整个涉及了程序架构的修改,前期规划不好的话基本上思路一条。

C公司

    C公司是一个值得尊敬的公司,CEO技术出身,和比尔盖茨一样,大学未毕业出来做网络,01到03年做短信狠赚了一笔,后来做的小项目也小有所成,说实 话,我很佩服。公司做的是校友方面,但是更偏重myspace风格,注重个人主页,推广方面也下了大手笔。系统崩溃的原因其实很简单,由于采用的是微软的 SqlServer,而微软直接就告诉了我们,SQLSERVER不支持集群,他们的数据库超负载,100%就没有下去过,只能横向增加配置,采用了4路 4核CPU系统,但是系统还是崩溃了… 高互动注定了高负载。解决方案: 现从基本入手,解决掉几个程序耗能大户,对数据库采用横向切割,将用户每10万进行分组,同时对数据库系统进行散列,将多个表垂直分割,同时进行文件分组 ,解决问题. 因为修改了数据结构,程序也基本上大动了一下。 好在系统没有出大错,损失不算很大,不过对用户体验造成了很坏的影响。

    结论:WEB2.0前期设计应该有良好的散列考虑,程序应该能有配合的扩充性,符合数据库的扩充

D公司

    D公司是一个各个方面做的比较好的公司,做了CDN加速,图片也独立分出了N个服务器,数据库不错的一个,(CTO是个数据库专家),系统崩溃的原因在于 WEB,按道理说WEB很容易做集群的,但是发现集群并解决不掉问题,他们的集群只允许做4台的WEB集群,但是4台都当掉了。仔细分析,找到原因,我估 计整个也是大部分CTO最容易犯的一个错误,或者说他们根本就想不到的问题,就是WEB上传的问题,上传的时候由于时间的原因,线程是保持链接的,300 个线程就可以把一个WEB Server当掉了。解决方案:这个最简单,把上传和其他耗能大户分离出独立出来。程序改动不是很大,但是之前半个月速度满对用户体验的损失也不可小视。

    结论:没有什么结论了,毕竟有海量访问经验的CTO不多,也就是那几个大站的。

    总结:不是泼冷水,模仿其实是很容易的,随便找几个WEB程序员就能做到,并且很简单,速度可能还很高效,因为WEB2.0无非就是跟数据库打交道,会操 作数据库就会做。但是真正做大并不容易,因为能应付海量访问的程序并不简单,现在的程序员都太自命不凡,其实真正有经验的并不多,不要相信一个月薪5K- -10K的程序员能给你多大的惊喜,能应付海量访问的程序员不是那个价格。如果您想做2.0,想做大,有几个个建议:

    一.找DBMS的专家设计好数据库,大部分程序员都不知道分区视图,数据散列,数据组的概念

    二.设计好程序架构(这个其实不难,有个高人指导就行了),保持良好的扩展性,成本考虑可以找兼职的系统架构设计师做好系统架构,确定将来的发展瓶颈。

    三.考虑好文件存贮的问题。文件存贮的技术含量看起来很低,其实是很高的,可以考虑反向代理的方案。文件存贮出问题了,站点基本上就完蛋了,不仅仅是RAID的问题和存贮服务器的问题,不过道理倒是一点就破的

    四.中国国情考虑,这个最致命,需要考虑电信和网通的问题,CDN并不能解决所有问题。互动性的东西并CDN并不是很有效。最关键的是,现有的双线机房遇 到DDOS攻击基本上都会当掉,原因很简单,双线机房都是私人机房,本身就不会有太高的带宽,随便攻击一下就可以D掉(顺带提一个笑话,我知道一个双线机 房的老总总共1G的带宽却买了4G的金盾墙,很简单800M的攻击就可以搞定)。

    五.网络延迟的问题,这是分布式系统必须要考虑的,程序要能容忍0到100秒的数据延迟的功能,也就是同步的问题。不要小看这几十秒,问题很大的,如果你 的站点有交互式功能,比如即时聊天,你可以想象一下是个什么结果。对于即时聊天的东西,可以用反向代理来解决(成本较高)。但是对于留言和评论的影响不 大,但是如果系统为了健壮做了缓存和静态化的时候,这个东西可能就是灾难性的了。

    六.分散你的程序,如果你没有太多的资金构筑动辄百万的服务器,建议把功能分散开来,比如相册一台服务器,留言一台服务器

    七.看好你的程序员,如果没有很好的激励措施的话你的程序员很容易写出敷衍性的代码,而这个可能就是将来的大患,程序架构定下来后要修改可能就要费牛劲了。最好你的CTO能对你100%的衷心,100%的负责。

    八.文件同步的问题,这个问题可能你觉得没有必要,如果你看一下网通和电信的TTL就明白了,同步要支持续传,并且不能是持续的,否则你的成本会高出N倍,不要期望能通过你的软件实现,交给你的程序员吧,把上面的话告诉他他就知道怎么做了。

    九.最狠的一个问题了,也是吃亏最大的问题,不管您跟网警的关系多好,看好你的用户,审核好你的东西,一被停机可能就致命,本人就吃过N次亏。

    十.最后,祝各位站长一番风顺,大展宏图。

CSS 图片 垂直 布局 与文字对齐 vertical-align

在 HTML 代码中,有时会需要在文字旁边加上一个图标。

默认情况,是图片置顶对齐,文字置底对齐,这样一来,文字和图片排列在一起就很难看,如图:

Vertical Align

代码是:

 更多

查一下CSS2手册,找到vertical-align的属性,可接受的参数值如下:
baseline |sub | super |top |text-top |middle |bottom |text-bottom |length

baseline :  将支持valign特性的对象的内容与基线对齐
sub :  垂直对齐文本的下标
super :  垂直对齐文本的上标
top :  将支持valign特性的对象的内容与对象顶端对齐
text-top :  将支持valign特性的对象的文本与对象顶端对齐
middle :  将支持valign特性的对象的内容与对象中部对齐
bottom :  将支持valign特性的对象的文本与对象底端对齐
text-bottom :  将支持valign特性的对象的文本与对象顶端对齐
length :  CSS2 由浮点数字和单位标识符组成的长度值 | 或者百分数。可为负数。定义由基线算起的偏移量。基线对于数值来说为0,对于百分数来说就是0%。目前IE5尚不支持。请参阅长度单位

为了布局更好看,我选择了text-bottom,让文字与图片在同一水平线上,效果好多了:

Vertical Align

代码如下:

 更多

只是在img标签中加入了vertical-align的css定义。

rss.png图片是网上找的,如果你想要,那就下载我提供的这个链接:

http://down.leakon.com/software/2007/10/rss.png

RSS

Lenovo ThinkPad T61 8889A72 原创 评测

Lenovo ThinkPad T61 8889A72 评测

这台A72是2007年10月9号在翔意买的。
我关注IBM的笔记本,已经有1年多了。
从T60刚出的那会儿,就总是在看各种各样的评测,我的同学,也有家里很有钱的,在第一时间,就买了T60,行货!!
不过他不太懂,让我帮他装软件,我也有幸在比较早的阶段看到了T60的实物。
记得对我来说,T60让我觉得最好的变化,就是有了Windows键。

以前在考虑买IBM的时候,没有Windows键,是我觉得非常失望的一个因素,我觉得这个按钮很重要。我习惯了用快捷键,这个小小的按钮可以帮我做很多事,如果没有,肯定会觉得比较别扭。

还有一点变化,就是在触摸板、键盘和掌托部分的外形,比T43更硬朗了,这点我觉得变得更好看了,虽然有人还是喜欢以前的风格,我却认为这是改变了传统,令人称赞的改变。

现在,还是进入正题吧,说说A72的评测。

作为对比,我会和我以前的笔记本HP NX7010进行各方面的比较。

事先声明,我的文字,绝对是我实事求是的感受,我的HP是在2004年3月买的,在这之前,我也是对笔记本的行情调查了一年多,对当时各个品牌的主流型号都了如指掌,绝对可以给中关村的销售人员做培训,呵呵。

我和一个发小,pinkcafe,都是很早就想买台IBM了。

他比较有钱,9月16号大早上给我打电话,说钱到位了,直接杀到朝阳门,到天辰12层,提了一台T61 8890A24。

这个是当时性价比非常高的一款,是新加坡的,据说是DOS操作系统,但看到的机器,都是GHOST的XP。

当场查外观,没问题后开机看屏幕,结果有一个坏点,心情很是不爽,后来根XY的兄弟协商了一下,本来以为不给换的,没想到人家很不错,说今天来了一批,有很多台,有坏点,就给你换一台。

当时高兴死了,XY的论坛上说高分屏只保一个点,按说那台A24,是不给换的,结果还是给换了,感觉好惊喜,心情不错。

后来简单测了其他的设备,其实也没有必要担心,只要检查外观,确实没被拆开过,以IBM的品质,出厂前肯定都有更严格和更全面的测试,自己在那里测半天,完全是给自己心里上的安慰。

买完后,用XY给的恢复盘,恢复成了Vista Ultimate的系统,用了2个多小时,等死了。

pinkcafe装了几个软件,也不多,但是里面有一个360安全卫士,后来说机器总是会蓝屏,然后自动重启。

我觉得可能是安全卫士搞的,也没有证实,结果用XY给的Vista的GHOST恢复了系统,就没问题了。

搞得我以为XY的1CD+2DVD恢复盘有问题。

其实当天我也特别想弄一台,不过钱没到位,因为换工作,把手里的几千快钱全补了住房公积金了,当时惨得我手里只有1000多快钱。

看来只能用信用卡了,但翔意不能刷卡,只能现金或支付宝,可是我那个信用卡没开通网上支付,所以当天没买成,比较遗憾。

后来就开始准备,周末去银行办了网上支付,然后在支付宝充值了12000,等着十一之前去买。

本来翔意十一的时候有促销,便宜300快钱,可当时有点动摇,觉得12000快钱不是小数,而且自己的HP用起来也很不错,性能够了,就没买。

但心里还是痒痒,那种感觉,各位在买之前都有吧,哈哈。

熬过十一,真是不容易,上班第一天,看了一眼报价,没变化,第二天,10月9号上午,上班第一件事,看看XY的报价更新没(看我多铁杆~~),突然发现一 款A72,配置比A24稍高一点,CPU变成2.2G了,但价格只比A24贵一点点,觉得很不错。打电话问翔意有货没,说还没到,下午5点到货。

当时我就热血沸腾了!

心说今天买了吧,不再犹豫了!

说道这里稍微叉开点话题,关于各种ThinkPad型号的各种讨论。

刚才说的A72和A24实际上是T61的Product ID的后3位。

比如我的T61,就是8889A72。

为什么我会突然提到这个呢,是因为A24是一个比较特殊的型号,pinkcafe的是T61 8890A24,但还有一款是港行的T61p 8889A24(我记得是这个,好久没看,不敢确定了),这个是高配,显卡强得多,两个不是一码事。但论坛里总有人为这个争论,好多IT网站,编辑也一点 都不负责任,不好好查查,净瞎写,配置明明是新加坡的那款A24,却把型号写成8889,把人搞得晕头转向。然后论坛里的人争来争去,我就觉得,当你想了 解一件事,与其听别人毫无根据的争论,不如自己去网上,或者亲自去查个究竟。

继续我的评测。

10月9号下午4点,在MSN上问了XY的客服,说到货了,可以过来了。立刻请假,出门打车,从中关村直接杀到朝阳门,路让居然出奇的顺,一点都不堵,司机师傅还说呢,今天邪门了,每天4点多,四环就堵得不行了。

5点15到了XY,开始验机。

风风火火的打车过来,就是因为今天刚到一批货,如果有坏点,可以换新机,哈哈,如果你也要买,一定事先打听好了,货源充足的时候去,如果不巧,只有一台了,而且有坏点,那估计就没法给你换了。

一个MM拿出一台,仔细检查了外观,外观没问题,检查屏幕,仔细看了半天,没有坏点,很开心。

不过,发现屏幕另外的一个问题!屏幕逆时针倾斜!这个概念可能不好理解,我再仔细说明一下。

左上角距边框的距离有一毫米,右下角也是这么大的距离,然而,右上角和左下角都紧贴着屏幕边框。

大家明白是怎么回事了吧?

根MM和一个GG仔细说明了一下,他们看过,确实也有这个问题,就给我换了一台,按照以前的流程,又检查了一边,还好,没有坏点,不过屏幕还是逆时针倾斜,只是角度小一点了,不是很明显。

后来,知道有这个问题后,在其他买行货和水货的地方的T61也都是这个问题,只是歪的方向不一样,有的还是顺时针歪的。反正在我发现这个问题后,还没有发现一台是完美对齐的。

这点上,跟我的HP就有比较明显的差距了,我的HP屏幕就很好,亮度很均匀,可视角度也很宽,而且屏幕距边框也是很整齐,前一段时间,我小姨买了一个HP的DV2622,屏幕也很好。

我说一下HP的售后服务,我的HP是2004年3月买的,是行货,有发票,3年免费上门服务。

我有一次因为振动,把笔记本的硬盘弄出坏道了,打电话给HP,过来几天,就有人上门给换了一块新硬盘,都没问我的硬盘是怎么坏的,维修人员上门连口水都不喝,态度非常好。

保修快到3年的时候,也就是今年年初,我觉得光驱有点小问题,有时候碰一下仓门,就会弹出。还有,电源开关有接触不良,得按2、3下才能开机,都是小问题。
打电话给售后服务,对方说,这些问题其他客户也有,要给我换一个光驱和主板!我心想也太夸张了,既然给换,就换呗。

过了几天,维修人员来了,把我的HP拆散了,我也终于看到我的HP的主板是什么样子,还有第一代迅驰处理器的样子。

20分钟,就都换好了,这个时候开机检验,我就顺便让他看了一眼我的屏幕,靠近边框的地方,有一点类似于灰尘的东西进去了,让他看看有没有办法清理。

他仔细看了后,说这是屏幕老化了,时间再长,那些类似于灰尘的地方就会出现坏点,建议我换一块屏幕!
我说能给换么,他说没问题,这都在保修范围内。

过了3天,新屏幕到了,连顶盖一起,都换成新的了。

我在Google的Picasa上门有照片,顶盖那个HP的标志,背景是黑色的,以前的那个是蓝色的。

现在继续说ThinkPad。从屏幕来说,ThinkPad真的不如惠普。

当时验机完了,该付款了,在支付宝登录,要求导入证书,翻开我的书包,突然发现证书没带,本来没打算今天买,事先也没准备,我一直以为在包里的,结果现打 电话,让我妈用QQ把证书传给我,哈哈,我老妈厉害吧,还会用QQ传文件呢。导入证书后,付款,让那个GG发货,我确认,付款成功!整个付款过程,就跟美 国大片里的交易一样,都是在电脑前面付款,查询,呵呵。

在XY买了一条金士顿的1G内存,300块钱,用pinkcafe的帐号登录论坛,他已经是XY的贵宾了,我再买可以优惠100,再买了一个原装包,我没要套餐,总共价格是11900-100+150+300=12250,价格还算不错吧。

这下心里终于踏实了,马上打车回家,兴奋了一路。

到家后,好好布置了一下场景,为了今天的评测,照了300多张照片,大家去我的Google相册看一下吧:http://picasaweb.google.com/leakon/20071009

图片很多哦,杀猫,拨号慎入!!

用我的CASIO S600照的,水平一般,有几张比较模糊,大伙儿现凑合看,回头我再照他几百张,只要大家多关注我的网站就好,哈哈!

我就想到哪儿说到哪儿吧。

就着图片说外观,T61的顶盖,比底座宽一些,大概每边宽个3、4毫米吧,我这个是普屏的,1400X1050,宽屏的不知道,没仔细看过,我看过T60,只是光驱的那一侧会比底座宽。

在这里我强烈鄙视某些网站!他们为了证明T61不如T60,故意捏造一些事实,比如就说屏幕比底座宽吧,他么说T60没这个现象,只有T61存在,实际上不是这样。

有的还有照片,说T60的掌托不好,很薄,能把左边PC卡那里的掌托拉起来!那个部分的掌托是比较薄,但下面是PC卡,外面有镁制防滚架,往下压的时候, 是不会有塌陷感的。而且T60和T61是一样的,我同事的T60,也可以像那个网站的照片一样,把掌托部分拉起一块!但是,如果没有机会看到T60的朋 友,也许真的认为T61做工不足,不如T60了。

你说这个网站的编辑是不是非常混——蛋呀,误导消费者,跟中关村的奸商一样,这种人是靠牺牲别人的利益,满足自己的欲望,我最讨厌这种人了,真TM该死!!!

说完掌托,说右边的指纹识别,刚拿到的机器,指纹识别也是逆时针的歪着的,不过可以用手掰正,pinkcafe的那个刚开始也有点歪,不知道他现在掰正了没有。

IBM的键盘,的确非常好用,手感比HP的强,不过我那个HP的键盘手感也非常不错,只是IBM的更好一点,呵呵,这个真的是没的说,IBM果然名不虚 传。这会儿又回到上门的问题,我记得有很多人都说过,T60的手感不如T43,T61的手感不如T60,因为我第一次买ThinkPad,而且键盘手感这 东西,不认真地使用过一段时间是没法体会到差别的,只靠按几下,就妄下结论,我想这样的人跟刚才的那个奸商一样吧,纯粹是误导消费者。

大家记着我的这个评测吧,等我用了一段时间T61,哪天有机会再用用T60和T43,我就可以感觉出这几代产品键盘的差异了,到时候会给大家一个客观的结论。

现在说说屏幕的铰链吧,就是屏幕转动的2个轴,很早我就体验过IBM的屏幕滚轴,阻尼感很好,装上电池后,把闭合的屏幕打开成垂直角度,不用刻意按着,底 座也不会翘起来,而其他的笔记本就做不到这一点。屏幕打开后。机身有一点晃动,屏幕依然稳稳地固定在那个角度,我的HP就不行了,稍微晃动一下,屏幕也会 跟着晃。

下面主要说说噪音问题吧。

我的HP,真的是超级安静,不过是4200转的硬盘,这一点比较重要。安静到什么程度呢?如果你只是上网,做文档,只要是不玩游戏,风扇就不会转,一点噪 音都没有,而且硬盘在读写操作的时候,只有把耳朵贴在硬盘的部位,才能听到一点点声音,而这一切都是在半夜12点夜深人静的时候,这个时候有多安静呢?就 是你可以听到墙上石英表的秒针咔嗒咔嗒的走动声,但你听不到HP在运行!毫不夸张!

但T61,硬盘的声音会比较大,因为是5400转的,会有一点点声音,还有再有就是风扇声音了,不过风扇的声音非常小,全速运行的时候,也不是很大声,我的HP风扇转起来,声音还是稍微大了点。

我记得网上有人问过,问为什么风扇会一直转个不停,或者说风扇一直转。(为了SEO,我把一句话说了2次,呵呵)

我9号那天刚拿到机器,也是这个问题。我也纳闷,怎么就转个不停呢?我什么也没干啊?任务管理器里,CPU占用率也不到5%呀。

后来,仔细看了看电源管理,选择的是高性能的,这个时候不管你在干嘛,CPU都是100%的速度运行,温度会稍微高一点,风扇也会长时间转动。我设置了一 个低速配置,就是CPU根据需要调整速度,应用了这个方案后,风扇立刻就停了,再有类似问题的朋友,但愿你能搜到这篇文章,让你的ThinkPad的风扇 休息一下吧,哈哈。

再说说接口设计,这个版本的T61,右侧只有USB和光驱,这是我最满意的右侧布局,这样用鼠标的时候就不会受影响,X61的2个USB在右边,而且是靠 近手掌的地方,你用鼠标的时候肯定会受影响,很不爽。我的HP,右侧比较居中的位置是电源插口,我认为这是NX7010设计上最大的败笔,本来右侧只有一 个红外接口,可是这个破电源口在中间的位置,总会和鼠标碰在一起,很讨厌。当时买的时候觉得问题不大,但后来因为这个有点后悔,呵呵。

左侧就不说了,布局还可以,出风口离手掌也远了点,总之接口设计,IBM还是很不错滴。

说说底面吧,底盘没有任何扩展槽,加内存得拆开掌托,有点麻烦了,不过好在是一次性的工作,就不说什么了。

地面的四个支撑点,还是挺高的,可以给底部留下足够的空间,便于通风,因此散热上,T61比我的HP好一点,我最近再玩战地2142,也叫 BattleField2142(又是为了SEO),玩了2个小时,底部也不烫手,我表哥的T60 B14,说玩了2个小时魔兽,就会很烫手,排除个人触觉灵敏度,从评测文章看,T61的底部散热口比T60多一些,想必散热效果应该会好一些吧。

在重量上,IBM比我的HP明显轻一些,看评测,T61的质量(学物理的老师说过,严格地说,是没有重量这个单位的)是2.45KG吧,我的HP好像是3KG,挺沉的。

再说说电池,和电池相关的,有一个维护软件,我觉得最有用的是2点,一个是可以看充电次数,另一个就是可以设定充电阈(这个字读yu,4声,同玉,不要读成阀啊~~)值,也就是说,你可以设定当电量低于多少时才充电,这个对保护电池大有意义!

我就很会保护电池,我的HP,到现在3年半了,用电池上网,可以坚持3个半小时,以前最高4个小时,厉害吗?4800mAH的,保护得够好的吧。
我的经验就是,尽量不要用电池,在家的时候,基本不会断电,老插着电池,如果几天不用,电池自己会放电,比如充满的电池,3天不用,电量可能就只有96%了,但你下次开机,有的电脑就开始充电,这会对电池有影响的。有人说锂电池没有记忆效应,我只能告诉你,这个人是奸商!

锂电池不是没有记忆效应,凡是充电电池都有记忆效应,只是程度不同,锂电池比镍镉电池记忆效应程度低,但还是有记忆效应。如果你想好好保护电池,就保证单 向使用,也就是说,要充电,就充满,中间不要间断,要放电,就一直用完,用到无法开机。充满的时候,建议至少让电池休息几个小时,然后再用;没电的时候, 也让他休息几个小时,然后再充电,听我的,你的电池寿命会明显增长一些。

我这个A72是9芯电池,容量比较大,但后面突出一块,放到包里的时候有点大了,我买了一个减重模块,果然轻多了,我买的是盒装的,60块钱,打开的时 候,觉得做工蛮差,我以为老板骗我,让他拿出20块钱的让我瞧瞧,没把我吓死,什么东西啊,是人做的么?还是凑合用60的吧。过两天上图。

电源嘛,就是那个适配器,是90W的,估计ThinkPad比较费电,我的HP才65W,也就是说,最大功率不会超过65W,看来还是非常省电的,X61 也是90W,只有X61s是65W。其实,仔细算算,笔记本一年也能省不少电钱呢。像我每天用电脑超过10个小时的,每天省100W,10个小时就是1度 电,一天5毛,一年还180块钱呢。别的不说,买个高级的Microsoft鼠标总没问题吧。

其他的人性化设计,IBM的评测文章有很多,因为HP上没有,我也无从比较,没什么发言权了,谁用过的比较多,也发出文章让大家看看吧。

高分屏的屏幕,用来写程序,是非常爽滴,不过看网页比较累,文字太小,注意保护你的眼睛吧。

为了避免辐射,大家可以在连接管理里面,把无限网卡的传输功率调到10%,这样辐射从25mW一下降低到1mW,比较可观,也不会给你的无线传输造成多大影响。

ThinkPad的音箱比较普通,我的HP是JBL,确实不一样,而且ThinkPad的音箱位置不太好,冬天,在床上抱着笔记本,音箱会被被子堵住,玩跑跑的时候,后面人扔个大蚊子,我都听不见,我正在策划买个蓝牙耳机,吼吼吼~~~

深夜了,我想去玩会儿战地2142了,回头我会继续补充滴……

优秀的东西,都是要不断完善,我始终相信这一点,我的评测,也会不断更新……

对于我的第一个公司,QH,我想说的是,做产品,多一些耐心,多去打磨,用户最终会被你感动……

这山望着那山高,一天一个主意,一天一个想法,几年过去,什么你都做过,什么你都没做好,什么你也留不下……

说句名言吧,冰冻三尺非一日之寒,ThinkPad也非一蹴而就

pure function

A pure function:

Has no side effects

Return value depends only on arguments

Example:

sub factorial {
my $n = shift;
$n == 0 ? 1 : $n * factorial($n-1);
}

cache 只对 pure function 有意义

这可以思考查询一个档案的修改时间的这种 function,他并非一个 pure function,所以对非 pure function cache 是没有意义的这里有一个例子

Highly Recursive Functions
sub fib {
my ($n) = @_;
return $n if $n ==0 || $n == 1;
return fib($n-2) + fib($n-1);
}

This function is very very slow!

Caching Fixes Recursion
Solution: Caching

@fib = (0, 1);
sub fib {
my ($n) = @_;
return $fib[$n] if defined $fib[$n];
return $fib[$n] = fib($n-1) + fib($n-2);
}

fib(20) computes fib(18) and fib(19)

fib(19) goes to compute fib(18)

But it is already in $fib[18]

Function is now very fast,Almost as fast as a pure iterative version,
Unlike the iterative version, this version required no ingenuity

以上文章节录自 http://perl.plover.com/yak/hw-dcpm/

2007 年度最佳 Web2.0 网站 其融资情况 (Social Networks)

红极一时的六度关系理论显然过时了,现在的社会关系网站都在卖什么呢?

2007 最佳Web2.0网站- Social networks类:
1. Cambrian House
Cambrian House 让人们对一款将开发的软件投票,这样投资人或企业就可以根据民意决定是否把idea转化成产品.

基地:加拿大卡尔加里
创建时间:2006年
CEO: Michael J. Sikorsky
融资情况:750万美元
投资商:angel investors

25. Khichdee 
这个以印度一种食物命名的网站,可以说是印度的Craigslist。整合了线上线下的分类内容于其强大的搜索引擎之中。

基地:印度孟买
创建时间:2006年
CEO: Ashwin Sanghi
融资情况:M.K. Sanghi集团所有

26. Mobagetown
以休闲手机游戏为核心的人际圈。

基地:日本
创建时间:2006年
CEO:Tomoko Namba
融资情况:日本DeNA公司所有

27. Babytree
专为孩子和他们的父母打造的交流平台,在这里可以为孩子建立网页,也为父母提供资讯服务。

基地:中国北京
创建时间:2007年3月
CEO:王怀南
融资情况:未披露
投资商:Matrix partners

28. Vivapets
以专家意见和维基百科形式的网友参与,Vivapets 正在扮演一个宠物饲养百科全书的角色,并以此为基础建立了自己的关系圈。

基地:葡萄牙波尔图
创建时间:2003年
CEO: Marcos Cerqueira
融资情况:未披露
投资商:创始人

29. Tangler 
Tangler 以最新的网络技术更新了追踪论坛的形式,使得你可以同时追踪几个论坛的情况。

基地:澳大利亚悉尼
创建时间:2006年7月
CEO: Martin Wells
融资情况:200万美元
投资商:天使投资人

30. eDushi 
eDushi 可以让你在虚拟的3D城市的地图上建立、查找和评价相关信息。到2007年底,eDushi 上的城市将增加到100个。

基地:中国杭州
创建时间:2004年
CEO:庞小伟
融资情况:未披露
投资商:创始人

31. Aprex
以企业网络办公软件为基础,可以在线管理日程、客户以及公司介绍,付费用户还可以做email营销。

基地:巴西San Paolo
创建时间:2006年
CEO: Guilherme Coelho
融资情况:50万美元
投资商:创始人

转载自网事如棋[ http://www.ihave.biz/ ]