2009年2月26日星期四

Launch My English Blog @ ifgogo.com

With the help from aw, I finally set my English blog on ifgogo.com. And there will be no more English posts in this blog in the future.

Click here to view the English blog, and always welcome to join us.

2009年2月25日星期三

腾讯成为最大的博客服务提供商之一

tmacd同学在Twitter上写了一条醒目的更新信息:

"chinese web server is coming? qzone's qzhttp is using by 20,021,763 websites.
"

好奇地询问了一下数据来源,得到一个链接,来自netcraft的February 2009 Web Server Survey

Developer January 2009 Percent February 2009 Percent Change
Apache 96,947,298 52.26% 104,796,820 48.59% -3.67
Microsoft 61,038,371 32.91% 62,935,449 29.18% -3.72
qq.com 3 0.00% 20,021,763 9.28% 9.28
Google 9,868,819 5.32% 8,157,546 3.78% -1.54
nginx 3,462,551 1.87% 3,447,596 1.60% -0.27


Developer January 2009 Percent February 2009 Percent Change
Apache 36,062,915 50.33% 36,600,512 49.41% -0.93
Microsoft 22,645,049 31.61% 25,191,370 34.00% 2.40
Google 7,302,578 10.19% 6,216,417 8.39% -1.80
nginx 2,040,413 2.85% 2,185,118 2.95% 0.10
qq.com 3 0.00% 63,723 0.09% 0.09

根据文中的文字,qq.com应该是本月才列入统计名单的新人。金融危机之下的腾讯果然是不差钱,昨天听说要不压价地进行逆势大招聘,今天又看到它在部署服务器上的大方。同时Windows Live Spaces服务也增加了服务器,使得IIS的份额有所上涨。不过大家都比不得Apache啊,人家自己是不做服务的。

题外,昨晚在健身房吭呲吭呲地锻炼时,恰逢伟大的GMail变成了GFail,全球Down掉,Global Fail,有趣的事儿还真多。

2009年2月24日星期二

最近我看的和我听的

(点击图片跳转到相关豆瓣链接)

黑夜传说



看过太多吸血鬼题材电影的读者可以自动忽略上面的三部曲。个人觉得黑夜传说系列最大看点是头两部的女主角瑟琳,网络上一些评论说她没演出吸血鬼的高贵气质,我只能说对于一个非元老的战士型吸血鬼,气质能有多高贵呢?第三部虽然换了人,但Viktor依然是那个Viktor,演得还是很到位的,高贵、狡诈、残忍又心怀对其女儿的无限感情,都能从那张苍白的老脸上呈现出来。三部曲作为混点看片来说是很好的,我现在越来越不能忍受文艺片漫无止境的长镜头,还是凶猛点的动作片来得过瘾——不过全系列的配乐差了点,没有很哥特的曲子。

其他三部



娱乐片请抱着娱乐的心态去看,不要指望能挖掘什么内涵或者精神,你认真你就输了。地狱男爵是不错的娱乐片,人物造型不是很可爱就是很可恶,但是我很纠结为啥Hellboy的能力看起来那么弱,而要展现全部实力必须变得邪恶。疯狂的赛车很好很强大,更多的犯罪情节,更类似两杆大烟枪的黑色幽默。本杰明·巴顿是一篇优美伤感的散文,男女主角之间是是而非的爱情故事会否让你看到自己的影子呢?

流行乐种



最开始听方大同,是从橙月开始的,尔后听了他更早的几张,对橙月评价不那么高;尔后又回头听橙月,竟然迷恋上了。方的灵歌是纯粹的,依然非大众的,他的歌最好的地方,是更多地歌颂着爱情的美好。

Supermarket Fantasy,很耐听的日语专辑,Mr. Children,老男人的柔情最不可抗拒。

1976能让你知道,宝岛不只是有矫情的五月天和诡异的苏打绿,还有正正经经健健康康玩独立的好乐团。

重型金属



来2张金属的,不然不是金属党了。

Moonspell是风格最多变的哥特乐队,以至于某些专辑全然听不出哥特的意思。蝴蝶效应便是这样一张风格很不欧洲很美国的唱片。

曼森这张唱片很低调,速度很慢,颜色偏黑,旋律很好听。

现代探戈与浪漫主义



这两张唱片我都听了上百遍,不会错的。

2009年2月23日星期一

分享一个闲游之地:武汉 汉阳 南岸嘴

在汉江入长江的地方,有个公园,树很多草地很多,但是人很少。江边还能放风筝。坐车到晴川阁就行。感谢Gijo Hwang的分享。

地点如下:

From Blog references

无责任狂想:黑夜传说4——猫

(拍砖本文之前建议您了解黑夜传说1、2、3的剧情,以免发生脑残症状)

当瑟琳和迈克尔分别击杀了马库斯和威廉之后,小两口隐姓埋名过上了甜蜜的生活,幸福的他们不知道,又一股邪恶的力量在黑暗中蠢蠢欲动。

原来,人类历史上第一个不死的男人——亚历山大·科维纳斯,也就是吸血鬼和狼人的共同祖先,除了生育出马库斯和威廉这俩不孝的儿子之外,还和其女仆私生有一女哈罗·吉蒂,但是作为名男人的亚历山大鉴于媒体过于强大,一直很好地保守着这个不光彩的机密。你不得不承认,被动物咬这种缺人品的事情也是能传染的,在她35岁那年,哈罗·吉蒂很不幸地被她最喜欢的黑猫给咬了脖子,从而成为猫人。

同吸血鬼和狼人一样,猫人也拥有不死的能力,比吸血鬼更为狡诈(狼人无智商可言,看看卢西安是怎么死的),不用躲着阳光,但是变身形态比较尴尬:不同于狼人暴走,他们不可能变成一头大猩猩般的危险的大猫咪,而只能变成一只小黑猫,虽然战斗力很弱小,不过能保证他们很安全地隐藏在人类之中,历史上他们往往作为女巫的宠物出现,并赐予那些女巫以邪恶的力量。

猫人族很精明,深知赤裸裸地与另外两族对着干是找虐,便一直从事于挑拨狼人与吸血鬼关系的勾当,最终在二十一世纪到来的时候,狼族与鬼族在经年累月的对抗与各自内讧之中消亡殆尽。猫人族熬出头了,他们统治世界的时候来了。然而他们需要找到改良品种的方法,强化变身以获得战斗力,怎么办呢?当然,有我们美丽的女猪瑟琳和性感的男猪迈克尔,两个身上流着亚历山大的血的异族。哈罗·吉蒂化身为小黑猫进入了女猪与男猪的生活,趁他们不注意的时候获得了他们的血液……

借助强大的远古血液,猫人族获得了强大的变身形式——一只硕大的长着翅膀的有着利爪的老虎,他们从地下觉醒,开始攻占人类世界……

正所谓“老虎不发威你当我是哈罗·吉蒂啊“,面对强大而狡诈的敌人,我们的女猪和男猪将展开怎样一段惊心动魄的仇杀呢?而不小心爱上迈克尔的哈罗·吉蒂,又将如何扮演一只小三呢?

Underworld IV……

(本文系原创,转载请注明原作者)

Twittermania

将近三个月之前在本博客上写了一篇 Twitter&Twhirl体验 & 观点随笔 ,之后由于本人多数时间在实验室使用白痴教育网,该网络无法对Twitter这样的东西提供任何网络保障,Web基本刷不开,Twhirl也是10个Tweets勉强收得到一个,让人很尴尬。

开年之后,顽固的从来不跟流行风的本人也开窍了,感谢伟大的搜狗浏览器,让Twitter重新回到了生活。然后通过下面两个网站,对本人的Twitter进行了一下初步的经营,扩大了Follow/Followed面。推荐大家也使用一下,尤其是第二个网站,在给你打分的同时会根据你的Bio给你提供一些推荐的Follow,还不错。

1. Twitterholic

这个网站自动抓得很慢,数据几乎会滞后一个月,不过你可以每天手动抓取一次。下面的曲线图显示了我在加入Twitter Grader之后Follower暴增的情况(你得除开寒假的非活动期)。

From Blog references


2. Twitter Grader

这个网站的数据更新会快一些,你也可以手动抓取。

From Blog references



其实排名都是浮云了,重要的是我们能够从中得到我们想要的东西,占领信息获取的相对高点,扩大社交面等等。这几天身边的朋友中也发展出几个Twitter托儿,但愿Twitter不会高调地挂掉 :)。继续欢迎大家与我交换Follow

最后题外话,周六晚上听了aw的忽悠会之后,打算找个地儿专开一个英文博客,此处以后将专心用母语写作。各位有好建议的请与我分享。

2009年2月20日星期五

Create Your Own South Park Picture

Visit SP Studio

I just created my gothic picture, it's funny with lots of options.

From Blog references

春雨里洗过的太阳

连绵不断的阴雨终于暂停下来一天,阳光透出来,映照着我的快乐。

From Blog references by Nokia 5300

2009年2月11日星期三

Where is the ANY key....

2009年2月10日星期二

Dive deeper...and get stuck

Generally speaking, the deeper you dive into something, the more interests you will get, along with more difficulties. Hmmmm, REST is interesting. After an easy day's work with Netbeans, I turned to .NET for a RESTful service implementation. Unlike the situation in the java world, there're no auto-generation tools to build RESTful services without any pain. WCF is the best choice here, and I have to work from scratch.

To work out a basic RESTful service is not that hard even without powerful weapons. Short after I opened my Visual Studio, my first WCF RESTful service came into being. Then a challenge was raised when I tried to implement another key feature —— the ability to request resource of various kinds of MIME types from one single URI, with the type declaration in the http request header rather than in a query string or to request from another URI.

This feature is so amazing and useful. Simply speaking, it is like when you go to a store to buy a Valentine's hat for your girl, the URI is the hat store, the store sells only one kind of hat. The request is that you're going to buy a hat, the content type you specify in the http header is the packaging style for the gift. Different people get different tastes of decoration, but the hat is the same one.

OK, back to the code. I forgot my supper just to find that there seems to be not enough support to implement the interesting feature under current version of WCF. I've tried to determine the content type of the request in the service implementation code, but failed (even if it were an available option, it would greatly increase the coupling degree between service modules and the http server, not good at all). For a single operation contract in WCF, the server process can only serialize the entities into either XML or JSON, but not both. While REST framework in Netbeans supports both XML/JSON serialization for a single operation contract, by applying a Java annotation @Produces("application/xml","application/json") to the specified contract.

The next is not an end of the story, I'll try to find alternative solutions to this problem or no solution —— a conclusion.

2009年2月9日星期一

Studying REST

REST is a new kind of web programming style, an architecture abstraction rather than a concrete developing framework, everyone can have his own idea on how to implement RESTful web application or services. In my opinion, this style actually clearifies and purifies the interaction between back-end service interfaces and front-end service consumers.

In the "high" (stringent REST style) REST world, four atomic HTTP methods (POST/DELETE/PUT/GET) are used to do Create/Delete/Update/Select on resources at the server. Each resource has a static URI like "http://www.store.com/product/12345" rather than a dynamic one like "http://www.store.com/product?id=12345". This is why I say REST seems to be pure, clear and simple.

Why REST? Here're claimed benefits (from wiki) :

  1. Provides improved response time and reduced server load due to its support for the caching of representations
  2. Improves server scalability by reducing the need to maintain session state. This means that different servers can be used to handle different requests in a session
  3. Requires less client-side software to be written than other approaches, because a single browser can access any application and any resource
  4. Depends less on vendor software and mechanisms which layer additional messaging frameworks on top of HTTP
  5. Provides equivalent functionality when compared to alternative approaches to communication
  6. Does not require a separate resource discovery mechanism, due to the use of hyperlinks in representations
  7. Provides better long-term compatibility and evolvability characteristics than RPC

Mainstream tech like Java and .NET announces develop supports for REST, you can get some info from javaeye and WCF Tools China Team Blog. To Java programmers, they can enjoy no-scratch REST experience with Netbeans. But before settling down to work, I suggest you read some dissertations (A Brief Introduction to REST, Architectural Styles and the Design of Network-based Software Architectures) and understand the style, then make a demo using IDE, read auto-generated code to know the programming pattern (entity transform, url resolve, etc.), then adjust your design to adapt REST —— I am doing all these now.

2009年2月2日星期一

George Michael - Kissing A Fool

George Michael's neutral and tender voice really attracts me. Enjoy.




You are far,
When I could have been your star,
You listened to people,
Who scared you to death, and from my heart,
Strange that you were strong enough,
To even make a start,
But youll never find
Peace of mind,
Til you listen to your heart,

People,
You can never change the way they feel,
Better let them do just what they will,
For they will,
If you let them,
Steal your heart from you,
People,
Will always make a lover feel a fool,
But you knew I loved you,
We could have shown them all,
We should have seen love through,

Fooled me with the tears in your eyes,
Covered me with kisses and lies,
So goodbye,
But please dont take my heart,

You are far,
Im never gonna be your star,
Ill pick up the pieces
And mend my heart,
Maybe Ill be strong enough,
I dont know where to start,
But Ill never find
Peace of mind,
While I listen to my heart,

People,
You can never change the way they feel,
Better let them do just what they will,
For they will,
If you let them,
Steal your heart,

And people,
Will always make a lover feel a fool,
But you knew I loved you,
We could have shown them all,

But remember this,
Every other kiss,
That you ever give
Long as we both live
When you need the hand of another man,
One you really can surrender with,
I will wait for you,
Like I always do,
Theres something there,
That cant compare with any other,

You are far,
When I could have been your star,
You listened to people,
Who scared you to death, and from my heart,
Strange that I was wrong enough,
To think youd love me too.
I guess you were kissing a fool,
You must have been kissing a fool.