ghs.google.com

Posted by & filed under Tools.

最近一些事情忙,再加上本来就懒,很少上网,就算上也只是看下新闻就撤。从今天开始有点空了,准备晚上 回来写一下python,用于Google app engine,写几个有意思的东西玩玩。 世界上伟的事情不知道什么时候又发生了一次,发现自己绑定在Google的域名居然不能用了,第一反应就是Google被盾了,ping了一下,全都是request time out。很早以前想把域名绑在blogspot上,有人告戒我要死掉的,最后出于安全考虑没绑,现在Google推出了Google apps 和Google app engine,个人觉得很有意思,特别是Google app engine和Google apps中的calendar。 我从不在博客上发牢骚,但是今天真的很气愤,我真搞不懂某些心理阴暗的家伙到底怎么了,这些服务碍你事了吗?你们家有亲戚卖虚拟主机的吗?当年百度和Google竞争的时候你们打着爱国的旗号,ok,你们阴谋得逞了,培养了一个太监,最后Google为了生存,也不得不自宫,虽然自宫的程度没有完全令你们满意。 Google blogspot上有XX内容,令你们不爽,可你也不能连其他的一起封了吧!你们的技术是多么的先进啊,每天我上网的内容总是从某个IP上redirect来的,难道这点技术还能难道你们? 不过这也不算荒唐,更好笑的是:把Google earth也封了,说爆露了军事秘密,:)  哈哈,真是个笑话,Google earth 在全球用户超过五千万,就算中国人伟大,不看这些资本主义的东西,外国人不是看了吗?那就不爆露军事机密?不让中国人看就不爆露军事机密了? Allen说了一句令我佩服的话:谁让你生活在中国呢!对啊,谁让我生活在中国这么伟大而古老的国家呢!

帮助Firefox创造世界纪录

Posted by & filed under Tools.

为什么要帮助firefox创造世界纪录? 1.firefox完全遵从W3C标准,而不是像微软那样以为自己是老大,自己搞一套标准单干 2、firefox从来都不会恶意推广,而IE通过捆绑销售来占领市场 3、firefox对于开源的贡献远远大于微软 4、firefox需要支持 5、使用firefox可以显著改善您的浏览体验 下载体验:Firefox

编程新手应该知道的

Posted by & filed under Excellence Article.

学习基础也是有窍门的,对于大部分概念来说,都相对符合人的思维逻辑,因此你可以轻易的理解它们,也不容易发生混淆;但对于初入编程世界的朋友们来 说,仍有一些是规则是陌生的,甚至是难以理解的。这时候,你所要做的就是学习并接受它们,如果你不顾这些规则而随意在这个世界中驰骋,我想编译器一定会给 你好看。 : ) 以下是我所总结的在学习编程基础知识的时候你所应该注意的要点,有挂一漏万之嫌,但至少颇具代表性。看看你是否已经熟练的掌握了它们: 1、标识符规则: 这里的规则不仅仅指那些由编译器老大管辖的条条框框:不能以数字开头,可以包含数字、字母、下划线、美元符号……等等。同样也包含一些“民间”的约 定,例如变量、函数命名以小写字母开头,类命名以大写字母开头,常量命名均使用大写字母等等…..你不遵守这些约定,编译器不会对你亮红灯,但会造成你的 程序可读性下降。这样我想起《thinking in java》的译著作者侯捷先生,就是因为忽视了大陆读者的阅读习惯,自创了一些生涩的词汇,结果被很多读者以此为借口抛掷鸡蛋(当然我明白更主要的原因是 大多数读者嫌这本书实在太贵了: )。 2.=与== 如果你正在读小学一年级,你可以告诉我“=”与“==”的区别就是一个等号和两个等号的区别,但作为一个程序员,你应该理解它们从根本上不是一类事 物,“=”是赋值运算符,而“==”是比较运算符。所以不要再问我if(a=b) a=1;这样的代码为什么不对。但我承认,在刚开始接触程序的时候(c语言),我也犯过不少次这样的错误,而且很长时间找不到问题所在,等到发现了错误, 又总是自责自己为什么会如此愚蠢。我现在特别提醒你注意这一点,如果仍然犯下这样的错误,那只能说明你比我更加愚蠢。:) 3.运算符优先级 一个经常被人忽视的问题!的确,它可以通过另一种方式来完全避免优先级带来的困扰,那就是频繁的使用“()”,通过“()”来决定你每一步的运算顺 序。只要你不怕麻烦,你完全可以这么做,而且也增加了程序的可读性。但不是所有的人都喜欢这样,一个老资格的程序员通常愿意在一大长串表达式中使用数个优 先级各不相同的运算符且不包含任何的小括号,这种情况就是对你对运算符优先级的掌握的一个考验了。但不管怎么说,使用“()”来明确你的运算顺序并不是一 件坏事,甚至值得推荐。 4.i++与++i 我在前面的文章中就已经提到这个问题,尽管现在看起来简单无比,但当时的确给我们带来了一些困扰,这个问题也是非常普遍的。充分理解它的方法就是写几个包含i++和++i的表达式,然后观察表达式的运算结果及i的值。很快,这对于你来说将不再是个问题。 5.数据类型转换 你可能不经常用到数据类型转换,但你至少该知道它们的原理,那些转换是隐式的,而那些转换必须显式地进行,而且有可能造成数据的损坏。了解了这些,可以让你避免一些奇怪的错误。因为通常由数据类型转换所带来的程序问题很难被觉察到。 6.数组 严格的说,数组不是一种数据类型,而是一种数据结构。这是一个值得你认真研究的概念。因为在实际应用中,数组的使用率大大超过其他集合类型甚至是某 些原始类型。你需要了解构造和初始化数组的各种有效的格式,同时也应该对二位数组有所了解。数组与循环控制的配合可能已经可以一个完整的程序中一半的工 作。

禁用了几个插件

Posted by & filed under Life Diary.

好多天没写博客了,不是没得写,是不想写,因为反应太慢了,以前我总是觉得是盘古的服务器不够好,今天和盘古的售后服务谈了一下,他提醒我是不是插件问题,我将所有的插件都禁用了,果然好了 但是不幸的是盘古的cpanel不能登陆了,提示 Cannot Read License File 问了一下客服,客服说:Cpanel授权到期了。 不是cpanel不是开源的吗?怎么会到期了呢,开源不是信奉“Software is service”的观点吗? 以前只听说oracle收钱的,现在又冒出个Cpanel,见识短啊

生成本地化GMT/UTC时间和日期字符串

Posted by & filed under Programming.

要记住重要的一点,使用setlocale()设置LC_ALL或LC_TIME时并不会处理时区带来的差异 下面显示了日期和时间的标准形式输出,还显示了时区名,接下来用德语显示一条欢迎词、日期和时间。可以看到,时间可能确实是德语显示的,但是所报告的并非德国时间。 Fri,31 May 2008 17:15:30 Guten Abend! Heute ist 18 2008 要生成一个本地化的GMT/UTC时间和日期的字符串,可以使用gmstrftime()函数,他的工作与strftime()相同,不过会根据GMT/UTC而不是本地时间生成日期和时间字符串。

显卡能煎蛋?

Posted by & filed under Study & Reading.

每次发表NVIDIA高端显卡的消息时,CBer们总会发出“煎鸡蛋”的感慨,没想到今天这一切变成了事实. 国外的一名发烧友将GeForce 9800 GX2显示卡加一个铁架子煎鸡蛋的视频传到了YouTube,没想到这一根本没有明火的环境也煎熟了鸡蛋,让我们一起来欣赏一下.