Monthly Archives: December 2006

Friend’s Dog Killed

Look at this cute dog:

Its name is Ahuang, or Little Yellow. It is my friend’s dog. Early this week, it was robbed from his home and was killed. What a sad little thing. According to him, someone jumped into his house in suburb areas at 4:00 in early morning, and was killed and brought away. The guess is, they are going to sell the dog to meat market.

I have pictures of the little dog when it was just born one year ago, and feel sad about it. He was angry and of cause very sad. In his last 10 years, he had more than 10 dogs. The longest, he had the dog for 6 years, and shortest one only stayed for months. All of the dogs were robbed, or killed this way.

In this case, it is believed that the man robbed the dog for its meat. They can sell the dog to meat stores, and dog meat is served in many restaurants in the city.

Dogs. Poor Dogs

Talking about dogs, I am very concerned. The government is running campaign to kill dogs. Teams were setup with single mission – kill the dogs. People just don’t honor the value of life.

The dog adoption policy is, you have to pay the government for a dog adoption license. I don’t have a dog, so I don’t have first hand experience. According to my friends and verified on the Internet, the price is 2000 RMB for downtown, and 1000 RMB for places outside inner ring. What does it mean? It means you have to pay 1.4 month of the city’s average montly salary to get a license for your dog. In Guangzhou, the price is 10,000 RMB for the first year, and 6,000 RMB for every year after that.

Recently, the government is strength the policy. On both gate of the residential area I am living in, there are huge red banner saying: “If you love your dog, get a license for it”.

What I Interpretation is, “If you don’t want your dog killed, pay us”.

Dogs without License Must be Killed

Many police stations in cities and villages across the country have formed up “Dog-Killing Team” to go out (sometimes go into people’s house) to identify dogs without license. The owner either need to pay the money, or have their dogs killed.

The recent astonishing news about Douding’s event is just part of the story. They killed 50,000 dogs in 6 days. I read about some news (Disclaimer: I cannot verify whether its true or not), that the policemen are required to kill the dog before the face of the owner “as punishment”.

In Shanghai, the policy is, you have to bring the license with you all the time. If you are caught with a dog and without a license, the dog will be taken away, and you have to get your license to get the dog. Sad.

I don’t want to have a dog

I don’t know if I will adopt a dog or not in the future. I don’t have an idea about how I can protect it. What should I do when someone jump into my house and kill the dog before me, or come back home one day and found my dog dead. I just don’t want to have a dog at home when the terrible situation does not change.

Dogs are human’s friends. When the lives of millions of dogs can be taken away in just few days, how about people’s life?

Wangjianshuo.com Inaccessible

Wangjianshuo.com was not accessible since the last time I posted. The cable was completely cut off, and I am using a proxy to get very slow access to the site. Just want to post a note to let people know I am still OK, but I am not able to update the blog since I cannot access the site from China now.

Hope the Internet cable between China and the rest of the world is repaired soon. Optimistic opinion is, it will be OK within 2 or three weeks.

Today, very limited Internet access to outside China was recovered. Many sites are still not accessible. People in U.S. should have no problem to visit this site.

Some technical background: This site is hosted in U.S., and updated from Shanghai, daily.

24 Hours Internet without U.S.

It is exactly 24 hours after the earthquake in Taiwan. The earthquake caused 6 major fiber cable between China and U.S., between Korea and Hong Kong, and between Hong Kong and Shanghai were broken.

This is according to local news:

20:25 China-U.S. Cable broke

20:25 Asia-Europe #3 Cable broke

00:06 Asia-Pacific #2 S7 broke

02:00 Asia-Pacfic $2 S3 broke

20:43 Flag from Korea to Hong Kong broke

04:56 Flag from Hongkong to Shanghai broke

For the whole day, servers outside China (in U.S. or Europe) were not accessible. From my personal experience, this is a list:

home.wangjianshuo.com (very slow. It takes 5 minutes to open this editing page).

Gmail.com – very very slow, and almost not accessible

MSN Messenger – completely unable to logon

Skype – it still works

All other sites in US, very slow.

In China, the Internet experienced 24 hours without connection to U.S.

Local v.s. International Sites

In the morning, friends started to spread out QQ numbers, and I know many people have to turn on QQ or register QQ.

Gmail is not working, and hotmail.com is not accessible. To send a file to my friends who uses @163.com email address, I registered a new @163.com email address to ensure delivery.

eBay.com.cn is not accessible for many hours, and I don’t know how many users switch to Taobao.

This time, not 1 cable was cut off – it was 6 cables that was cut off. It is said it takes at least one month to recover. It takes only 21 days to form a habit. To get used to a new site takes much less time. This must be a huge opportunity for local web sites.

@Wangjianshuo.com Email as Gift

Happy New Year!

Every year, I am thinking of a special gift to send out to my friends. I have ever tried gift like a Google AdWords advertisement (to VeryCD), and tried to use Link as a gift. How about this year?

@wangjianshuo.com

As time passes by, we have new applications every year. This year, I am sending out email address like yourname@wangjianshuo.com as new year gift to my friends.

Examples are:

chedong @ wangjianshuo.com (and Chedong was so kind to promise me to give me a jianshuo@chedong.com email address)

isaacman @ wangjianshuo.com

fanfan @ wangjianshuo.com (for Wendy, and an alias wife @ wangjianshuo.com also works).

I then created mom @ wangjianshuo.com, dad @ wangjianshuo.com and many other emails addresses.

Then I sent the user name and password to my friends and family members so they have 2G of storage. I even setup email distribution like family @ wangjianshuo.com and added all my family members to it.

With the user name and password I gave away, people can login at http://mail.wangjianshuo.com

to check and send their email address. As you may found out, it is powered by Google Apps.

Happy New Year!

This is to my readers who didn’t get the gift yet. In the Christmas spirit (or the Santa Claus spirit), I’d like to share the gift to anyone who want it. If you want an email address like yourname @ wangjianshuo.com, I am more than happy to provide one. Please send your first name, last name, and your current email address (for sharing the initial password) to gift @ wangjianshuo.com, and I will give you want. I appreciate your request because it is flattery for me that you value an email address at wangjianshuo.com. This offer is valid until the end of Jan, 2007, because I don’t want to promise to offer it for too long that I have to process the request after 30 days.

Happy New Year to my Friends

This is to my friend who received the invitation. Below is the user guide for the gift I sent to you.

    What is It?

    It is an email address. It is not only an email address (the address), but also a full Gmail email service, includes 2G of mailbox storage, POP access, email forwarding and almost all other features an email service provider typically provides.

    How about the Stability of the Service

    This is a New Year Gift (2007) for you. This shows the connection between you and wangjianshuo.com, just like a T-Shirt with Wangjianshuo.com logo, or a mug with the logo. But neither T-Shirt nor mug shows such a strong connection and intimacy than an email address.

    I have long term plan to use Google Apps or other services like (Microsoft Live for Domains) to host the email address. However, as the nature of an armature email provider, there is no guarantee of service. So DO use the email when you feel you want to show your connection with wangjianshuo.com, and do NOT use it for critical communication.

    I personally have confidence in the service provided by Google, and believe it is pretty safe to use it as a regular email address, but again, there is no guarantee.

    I Already Have Too Many Email Addresses, So What Should I Do

    Easy. Configure email forward from the @wangjianshuo.com to your regular email address, no matter it is @hotmail.com, @gmail.com or @yourcompany.com. Here are the steps:

    1. Login your account at http://mail.wangjianshuo.com with your email address (just the part before @), and password. You may be promoted to change password at the first login.

    2. Click Setting on the right top corner of the page.

    3. Navigate to “Forwarding and POP” tab, and check “Forward a copy of incoming mail to” option box under Forwarding section.

    4. Enter an email address you wan to forward to in the text box.

    5. Click Save Changes button. You should be prompted “Your preferences have been saved.”.

    (Does the above instruction clear? With a background of support engine4 in the first 2 years of my career, I wrote thousands of steps like this for Microsoft product. Some of them even can be found at Microsoft.com website).

    After that, you can safely spread your name@wangjianshuo.com email address without worrying about checking emails in different locations. For the expected very low email volume to this new email address, you actually don’t have to check it from time to time.

    Do I have to Use it?

    No. Don’t feel that you have to use it, or at least login once. You can just treat it as a funny idea. But if you use it, I am very confident for now that it is a full service email box.

    What Else Should I Know?

    No. Just remember your account name (write it down, because it is not your day-to-day email address, and you may forget), and remember you have a friend who cares about you.

    Happy New Year!

Future of Email Addresses?

I believe in the future, email addresses can be collectable. Just like a logo on T-Shirt, or a logo on mug, it is not the good itself that matters. What matters is the logo.

Besides the use of email address, it can also be something fun. Just now, I got one more email address: jianshuo@verycd.com. Dash was kind enough to give it to me.

Now I have collected:

jianshuo at hotmail.com

jianshuo at gmail.com

jianshuo at chedong.com (waiting)

jianshuo at verycd.com

jianshuo at wangjianshuo.com

jianshuo at keso.cn (Dec 27, 2006, thanks Keso)

Anyone else want to provide more email addresses to me at the “dream domain name”? If you manage a domain (like chedong.com, verycd.com, or other yyyyy.com), I will appreciate if you create a jianshuo @ your domain.com email address for me, and send me the user name and password. Please drop it to gift @ wangjianshuo.com. Thanks!

P.S. As you may find out, I recovered from the previous exteremely crazy two weeks. You can imagine how busy the weeks were if you read my blog for four years and 3 month. I had never been so brief in blog entries as the previous weeks (even for the Merry Christmas post).

Backup of Individual Entry Archive Template

<html>

<head>

<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″ />

<title><$MTEntryTitle$></title>

<link rel=”stylesheet” href=”http://home.wangjianshuo.com/jianshuowangstyle.css” type=”text/css” />

<meta name=”keywords” content=”<MTIfNonEmpty tag=”MTEntryKeywords”><$MTEntryKeywords encode_html=”1″$><MTElse><$MTEntryTitle encode_html=1$></MTElse></MTIfNonEmpty>” />

<meta name=”description” content=”<$MTEntryExcerpt encode_html=”1″$>” />

<meta name=”robots” content=”index,follow” />

<$MTEntryTrackbackData$>

<link rel=”alternate” type=”application/rss+xml” title=”RSS 2.0″ href=”<$MTBlogURL$>index.xml” />

<MTEntryPrevious><link rel=”prev” href=”<$MTEntryPermalink$>” title=”<$MTEntryTitle encode_html=”1″$>” /></MTEntryPrevious>

<MTEntryNext><link rel=”next” href=”<$MTEntryPermalink$>” title=”<$MTEntryTitle encode_html=”1″$>” /></MTEntryNext>

<script type=”text/javascript” src=”http://home.wangjianshuo.com/archives/2006/10/13/prototype.js”></script>

<script type=”text/javascript” src=”http://home.wangjianshuo.com/archives/2006/10/13/rico.js”></script>

</head>

<body>

<$MTInclude module=”Header”$>

<span class=Adsense style=”padding-top:35px; background-color:transparent;”>

<p><a href=http://home.wangjianshuo.com/archives/20060422_welcome_to_wangjianshuos_blog.htm><img border=0 src=http://home.wangjianshuo.com/cn/2005/05/08/sanjose-jianshuo-standard.JPG></a></p>

<script type=”text/javascript”><!–

google_ad_client = “pub-8513779941474461”;

google_alternate_ad_url = “http://home.wangjianshuo.com/archives/2006/07/13/google_alternative_ad.htm”;

google_ad_width = 120;

google_ad_height = 600;

google_ad_format = “120x600_as”;

google_ad_type = “text_image”;

//2006-11-25: 120×600 Open Air

google_ad_channel = “9775971810”;

google_color_border = “FFFFFF”;

google_color_bg = “FFFFFF”;

google_color_link = “0000FF”;

google_color_text = “000000”;

google_color_url = “008000”;

//–></script>

<script type=”text/javascript”

src=”http://pagead2.googlesyndication.com/pagead/show_ads.js”>

</script>

</span>

<h1><$MTEntryTitle$></h1>

<p><small>Author: <a href=”<$MTEntryAuthorURL$>”><$MTEntryAuthorDisplayName$></a>.

Published: <a href=”http://home.wangjianshuo.com/archives/<$MTEntryDate format=”%Y_%m.htm”$>”><$MTEntryDate format=”%B %e”$></a>, <$MTEntryDate format=”%Y”$>.

Tag: <MTEntryCategories glue=” “>

<a href=”<$MTCategoryArchiveLink$>” rel=”tag”><$MTCategoryLabel$></a> (<$MTCategoryCount$>)

</MTEntryCategories><br>

Copyright: You are free to redistribute this work, as long as you keep this <a href=http://creativecommons.org/licenses/by-sa/2.5/>disclaimer</a> and <a href=”<$MTEntryPermalink$>#”>link</a>.<br>

Permlink: <a href=”<$MTEntryPermalink$>#”><$MTEntryPermalink$></a></small></p>

<script type=”text/javascript”>

var ref = document.referrer.toLowerCase();

if (ref.indexOf(‘wangjianshuo.com’) == -1 && location.href.indexOf(‘2007′) == -1) {

document.write(“<IFRAME style=’margin:10px;’ src=’http://home.wangjianshuo.com/archives/2006/07/13/google_adsense_300x250.htm’ width=605 height=250 frameborder=0 marginwidth=0 marginheight=0 scrolling=0></IFRAME>”);

}

</script>

<$MTEntryBody$>

<br>

<a name=”more”></a>

<$MTEntryMore$>

<p><small><MTEntryPrevious>

<br>« Prev: <a href=”<$MTEntryPermalink$>”><$MTEntryTitle$></a>

</MTEntryPrevious>

<MTEntryNext>

<br>Next »: <a href=”<$MTEntryPermalink$>”><$MTEntryTitle$></a>

</MTEntryNext>

</small></p>

<span class=”posted”>Posted by <$MTEntryAuthor$> at <$MTEntryDate$>

<MTEntryIfAllowPings>

| <a href=”#trackback”>TrackBack (<$MTEntryTrackbackCount$>)</a>

</MTEntryIfAllowPings> </span>

</div>

<script src=”http://www.google-analytics.com/urchin.js” type=”text/javascript”>

</script>

<script type=”text/javascript”>

_uacct = “UA-52458-1″;

urchinTracker();

</script>

<div class=”comments-head”>More to do on this site</div>

<ul>

<li><a onclick=”javascript:urchinTracker(‘/go/mail_to_friend’);” href=”mailto:?subject=<$MTEntryTitle encode_url=”1″$>&body=<$MTEntryLink encode_url=”1″$>”>Mail this entry</a> to your friend using your own email client (such as Microsoft Outlook).

<li>Welcome to link this entry: <input size=40 onfocus=”this.select();urchinTracker(‘/go/copy’);” value=”<a href='<$MTEntryPermalink encode_url=”1″$>’><$MTEntryTitle encode_url=”1″$></a>”> (HTML Code)

<li><a href=http://home.wangjianshuo.com/archives/20040211_newsletter_switched_to_yahoo_groups.htm#subscribe>Subscribe to Wangjianshuo’s Blog Update</a>.

</ul>

<div class=”comments-head”><a name=”comments”></a>Comments</div>

<MTComments>

<div class=”comments-body”>

<a name=”<$MTCommentDate format=”%I%M”$>”></a>

<$MTCommentBody$>

<span class=”comments-post”>Posted by: <b><$MTCommentAuthor show_email=”0″$></b> <a href=”http://user.wangjianshuo.com/<$MTCommentAuthor encode_url=”1″$>.htm”><img src=”http://home.wangjianshuo.com/nav-commenters.gif” align=absmiddle border=0></a> on <$MTCommentDate$></span>

</div>

</MTComments>

<div class=”comments-head”>Post a comment</div>

<script type=”text/javascript” language=”javascript”>

<!–

function OpenTrackback (c) {

window.open(c,

‘trackback’,

‘width=480,height=480,scrollbars=yes,status=yes’);

}

var HOST = ‘home.wangjianshuo.com’;

// Copyright (c) 1996-1997 Athenia Associates.

// http://www.webreference.com/js/

// License is granted if and only if this entire

// copyright notice is included. By Tomer Shiran.

function setCookie (name, value, expires, path, domain, secure) {

var curCookie = name + “=” + escape(value) + ((expires) ? “; expires=” + expires.toGMTString() : “”) + ((path) ? “; path=” + path : “”) + ((domain) ? “; domain=” + domain : “”) + ((secure) ? “; secure” : “”);

document.cookie = curCookie;

}

function getCookie (name) {

var prefix = name + ‘=’;

var c = document.cookie;

var nullstring = ”;

var cookieStartIndex = c.indexOf(prefix);

if (cookieStartIndex == -1)

return nullstring;

var cookieEndIndex = c.indexOf(“;”, cookieStartIndex + prefix.length);

if (cookieEndIndex == -1)

cookieEndIndex = c.length;

return unescape(c.substring(cookieStartIndex + prefix.length, cookieEndIndex));

}

function deleteCookie (name, path, domain) {

if (getCookie(name))

document.cookie = name + “=” + ((path) ? “; path=” + path : “”) + ((domain) ? “; domain=” + domain : “”) + “; expires=Thu, 01-Jan-70 00:00:01 GMT”;

}

function fixDate (date) {

var base = new Date(0);

var skew = base.getTime();

if (skew > 0)

date.setTime(date.getTime() – skew);

}

function rememberMe (f) {

var now = new Date();

fixDate(now);

now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);

setCookie(‘mtcmtauth’, f.author.value, now, ‘/’, HOST, ”);

setCookie(‘mtcmtmail’, f.email.value, now, ‘/’, HOST, ”);

setCookie(‘mtcmthome’, f.url.value, now, ‘/’, HOST, ”);

}

function forgetMe (f) {

deleteCookie(‘mtcmtmail’, ”, HOST);

deleteCookie(‘mtcmthome’, ”, HOST);

deleteCookie(‘mtcmtauth’, ”, HOST);

f.email.value = ”;

f.author.value = ”;

f.url.value = ”;

}

__utmSetVar( getCookie(“mtcmtauth”) + ” (” + getCookie(“mtcmtmail”) + “)”);

//–>

</script>

<div class=”comments-body”>

<form method=”post” action=”http://home.wangjianshuo.com/cgi-bin/mt/mt-comments.cgi”

name=”comments_form”

onsubmit=”if (this.bakecookie.checked) rememberMe(this); s1=’http://home.wangjia’; s2=’nshuo.com/cgi-bin/mt/mt-‘; s3=’comments-ifuleuiycfi.cgi’; this.action = s1+s2+s3;”>

<input_HIDDEN type=”hidden” name=”static” value=”http://home.wangjianshuo.com/scripts/thanksforcomment/thankyou.htm” />

<input type=”hidden” name=”static” value=”1″>

<input type=”hidden” name=”entry_id” value=”<$MTEntryID$>” />

<input type=”hidden” name=”src” value=”home.wangjianshuo.com” />

<input type=”hidden” name=”spammer” value=”goaway” />

<input type=”hidden” name=”spamming” value=”gotohell” />

Name: <br />

<input name=”author” /><br />

Email Address: (will not show)<br />

<input name=”email” /><br />

<input name=”url” /><br />

Comments:<br />

<textarea name=”text” rows=”12″ cols=”60″ style=”width:80%”></textarea><br /><br />

It may take up to <b>30 seconds</b> before the server returns a result. IP address recorded. <br>

Your post will appear on the homepage of this site – feel free to post on old entries to re-active the discussion. Please do NOT ask me to contact you by email or mobile. You can also <a href=http://home.wangjianshuo.com/archives/20061024_suggest_a_topic.htm>suggest a new topic</a><br>

<input type=”checkbox” name=”bakecookie” />Remember info?

<br /><br />

<input type=”submit” name=”post” value=” POST ” style=”font-weight: bold;” onclick=”urchinTracker(‘/go/post_comment’)” /> <– Please click POST only once<br />

<input type=”button” onclick=”forgetMe(this.form)” value=”FORGET PERSONAL INFORMATION” />

</form>

<script type=”text/javascript” language=”javascript”>

<!–

document.comments_form.email.value = getCookie(“mtcmtmail”);

document.comments_form.author.value = getCookie(“mtcmtauth”);

document.comments_form.url.value = getCookie(“mtcmthome”);

//–>

</script>

<MTInclude module=”RelatedEntries”>

<p align=center>© 2002 – 2006 Jian Shuo Wang. All right reserved. </p>

<script language=”JavaScript” src=http://home.wangjianshuo.com/archives/2006/07/13/public_javascript.js></script>

<center><small><a href=”http://home.wangjianshuo.com/cgi-bin/mt/mt.cgi?__mode=view&_type=entry&id=<$MTEntryID$>&blog_id=1″>E</a></small></center>

<script language=”VBScript” src=”http://www.wangjianshuo.com/include/pubs.vbs”>

</script>

</body>

</html>

Update January 23, 2009

Here is an updated backup of one of the most important template of this blog.

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>

<html xmlns=”http://www.w3.org/1999/xhtml”>

<head>

<title><$MTEntryTitle$></title>

<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″ />

<link rel=”stylesheet” href=”http://home.wangjianshuo.com/jianshuowangstyle.css” type=”text/css” />

<link rel=”alternate” type=”application/rss+xml” title=”RSS 2.0″ href=”<$MTBlogURL$>index.xml” />

<style>h1 {margin-top:5px;}</style>

</head>

<body>

<div id=”header”>

<div id=”banner”><a href=”http://home.wangjianshuo.com”>Wangjianshuo’s blog<br />

<span class=”description”>Events (in Shanghai) that affect my life (and others’)</span></a>

</div>

<div id=”globalMenu”><div id=”nav”><ul id=”nav_menu”><li class=”top”><a class=”top” href=”http://home.wangjianshuo.com/”>Home  </a></ul></div></div>

</div>

<table width=100% id=”bread”><tr><td width=”70%”>

<div id=”navigation”><a href=”<$MTBlogURL$>”>Home</a> »

<MTParentCategories glue=” » “><a href=”<$MTCategoryArchiveLink$>”><$MTCategoryLabel$></a></MTParentCategories></div>

</td>

<td align=right nowrap>« <mt:EntryPrevious><a href=”<MTEntryLink>”>prev</a></mt:EntryPrevious> <mt:EntryNext><a href=”<MTEntryLink>”>next</a> »</mt:EntryNext>

</td><td align=right nowrap><form name=g style=”margin:0″ method=”get” action=”http://home.wangjianshuo.com/archives/20060120_search_this_site.htm” target=”_top”><input type=”hidden” name=”domains” value=”home.wangjianshuo.com”></input>

<input type=”text” name=”q” size=”20″ maxlength=”255″ value=””></input>

<input type=”submit” name=”sa” value=”Search”></input>

<input type=”hidden” name=”sitesearch” value=”home.wangjianshuo.com”></input>

<input type=”hidden” name=”client” value=”pub-8513779941474461″></input>

<input type=”hidden” name=”forid” value=”1″></input>

<input type=”hidden” name=”channel” value=”6801625507″></input>

<input type=”hidden” name=”ie” value=”ISO-8859-1″></input><input type=”hidden” name=”oe” value=”ISO-8859-1″></input><input type=”hidden” name=”safe” value=”active”></input><input type=”hidden” name=”flav” value=”0000″></input><input type=”hidden” name=”sig” value=”NdyQdGFpJnNH_B3d”></input><input type=”hidden” name=”cof” value=”GALT:#008000;GL:1;DIV:#336699;VLC:663399;AH:center;BGC:FFFFFF;LBGC:336699;ALC:0000FF;LC:0000FF;T:000000;GFNT:0000FF;GIMP:0000FF;FORID:11″></input><input type=”hidden” name=”hl” value=”en”></input></form><script language=”JavaScript”>document.g.q.focus();</script>

</td><tr></table>

<h1><$MTEntryTitle$></h1>

<!– Start of Google AdSense Section –><div id=”AdSenseSquare”><script type=”text/javascript”>var ref = document.referrer.toLowerCase();if (ref.indexOf(‘wangjianshuo.com’) == -1 ) {

document.write(“<IFRAME src=’http://home.wangjianshuo.com/archives/2006/07/13/google_adsense_300x250.htm’ width=350 height=250 frameborder=0 marginwidth=0 marginheight=0 scrolling=0></IFRAME>”);

document.getElementById(“header”).style.display=”none”;

}</script></div>

<mt:include module=”AdSense”/>

<p><$MTEntryBody$></p>

<a name=”more”></a><$MTEntryMore$>

<p><span class=”post”><small>Posted by <a href=”http://home.wangjianshuo.com/archives/20040218_about_jian_shuo_wang.htm”><$MTEntryAuthor$></a> at <$MTEntryDate$><br />

Copyright: You are free to redistribute this work, as long as you keep this <a

href=http://creativecommons.org/licenses/by-sa/2.5/>disclaimer</a>

and this <a

href=”<mt:EntryLink/>#”>link</a>: <a href=”<mt:EntryLink/>#”><mt:EntryLink/></a></small></span></p>

<div class=”comments-head”>Related Entries: <$MTEntryCategory$></div>

<MTSetVarBlock name=”category”><MTEntryCategory></MTSetVarBlock>

<ol><MTEntries category=”$category” lastn=”9″> <li><a href=”<MTEntryLink>”><MTEntryTitle></a> <i><$MTEntryDate format=”%x”$></i></li> </MTEntries> </ol>

<div class=”comments-head”><a name=”comments”></a>Comments</div> <MTComments> <div class=”comments-body” id=”<$MTCommentDate format=”%I%M”$>”> <a name=”<$MTCommentDate format=”%I%M”$>”></a> <$MTCommentBody$> <span class=”comments-post”>Posted by: <a href=”http://user.wangjianshuo.com/<$MTCommentAuthor encode_html=”1″>.htm”><$MTCommentAuthor$></a>

<MTIfNonEmpty tag=”MTCommentURL”>

(<a href=”<$MTCommentURL$>” rel=”nofollow”>external link</a>)

</MTIfNonEmpty> on <$MTCommentDate$></span>

</div>

</MTComments>

</div>

<MTEntryIfCommentsOpen>

<div class=”comments-head”>Post a comment</div>

<script type=”text/javascript” language=”javascript”>

<!–

var HOST = ‘home.wangjianshuo.com’;

// Copyright (c) 1996-1997 Athenia Associates.

// http://www.webreference.com/js/

// License is granted if and only if this entire

// copyright notice is included. By Tomer Shiran.

function setCookie (name, value, expires, path, domain, secure) {

var curCookie = name + “=” + escape(value) + ((expires) ? “; expires=” + expires.toGMTString() : “”) + ((path) ? “; path=” + path : “”) + ((domain) ? “; domain=” + domain : “”) + ((secure) ? “; secure” : “”);

document.cookie = curCookie;

}

function getCookie (name) {

var prefix = name + ‘=’;

var c = document.cookie;

var nullstring = ”;

var cookieStartIndex = c.indexOf(prefix);

if (cookieStartIndex == -1)

return nullstring;

var cookieEndIndex = c.indexOf(“;”, cookieStartIndex + prefix.length);

if (cookieEndIndex == -1)

cookieEndIndex = c.length;

return unescape(c.substring(cookieStartIndex + prefix.length, cookieEndIndex));

}

function deleteCookie (name, path, domain) {

if (getCookie(name))

document.cookie = name + “=” + ((path) ? “; path=” + path : “”) + ((domain) ? “; domain=” + domain : “”) + “; expires=Thu, 01-Jan-70 00:00:01 GMT”;

}

function fixDate (date) {

var base = new Date(0);

var skew = base.getTime();

if (skew > 0)

date.setTime(date.getTime() – skew);

}

function rememberMe (f) {

var now = new Date();

fixDate(now);

now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);

setCookie(‘mtcmtauth’, f.author.value, now, ‘/’, HOST, ”);

setCookie(‘mtcmtmail’, f.email.value, now, ‘/’, HOST, ”);

setCookie(‘mtcmthome’, f.url.value, now, ‘/’, HOST, ”);

}

function forgetMe (f) {

deleteCookie(‘mtcmtmail’, ”, HOST);

deleteCookie(‘mtcmthome’, ”, HOST);

deleteCookie(‘mtcmtauth’, ”, HOST);

f.email.value = ”;

f.author.value = ”;

f.url.value = ”;

}

//–>

</script>

<form method=”post” action=”http://home.wangjianshuo.com/cgi-bin/mt/mt-comments.cgi”

name=”comments_form”

onsubmit=”if (this.bakecookie.checked) rememberMe(this); s1=’http://home.wangjia’; s2=’nshuo.com/cgi-bin/mt/mt-‘; s3=’comments-ifuleuiycfi.cgi’; this.action = s1+s2+s3;”>

<input_HIDDEN type=”hidden” name=”static” value=”http://home.wangjianshuo.com/scripts/thanksforcomment/thankyou.htm” />

<input type=”hidden” name=”static” value=”1″>

<input type=”hidden” name=”entry_id” value=”<$MTEntryID$>” />

<input type=”hidden” name=”src” value=”home.wangjianshuo.com” />

<input type=”hidden” name=”spammer” value=”goaway” />

<input type=”hidden” name=”spamming” value=”gotohell” />

Name: <br />

<input name=”author” /><br />

Email Address: (will not show)<br />

<input name=”email” /><br />

<input name=”url” /><br />

Comments:<br />

<textarea name=”text” rows=”12″ cols=”60″ style=”width:80%”></textarea><br /><br />

It may take up to <b>30 seconds</b> before the server returns a result. IP address recorded. <br>

<input type=”checkbox” name=”bakecookie” />Remember my information?<br/>

<input type=”checkbox” name=”subscribe” value=”1″ /><label for=”subscribe”>Subscribe to this entry</label><br />

<input type=”submit” name=”post” value=” POST ” style=”font-weight: bold;” onclick=”urchinTracker(‘/go/post_comment’)” /> <– Please click POST only once<br />

<input type=”button” onclick=”forgetMe(this.form)” value=”FORGET PERSONAL INFORMATION” />

</form>

<script type=”text/javascript” language=”javascript”>

<!–

document.comments_form.email.value = getCookie(“mtcmtmail”);

document.comments_form.author.value = getCookie(“mtcmtauth”);

document.comments_form.url.value = getCookie(“mtcmthome”);

//–>

</script>

</MTEntryIfCommentsOpen>

<!– Footer –>

<style>td.bd {border-left:#aaaaaa solid 1px;padding-left:20px;}</style><table bgcolor=”#EAEFF4″ id=”footer” width=”100%”><tr>

<td valign=top><dl><dt>Archives</dt><MTArchiveList archive_type=”Monthly”><dd><a href=”<$MTArchiveLink$>”><$MTArchiveTitle$></a> (<$MTArchiveCount$>)</dd></MTArchiveList></dl></td><td valign=”top” class=”bd”><MTTopLevelCategories><dl><dt>

<$MTCategoryLabel$><MTSubCategories><dd><a href=”<$MTCategoryArchiveLink$>”><$MTCategoryLabel$></a></dd></MTSubCategories></dl></MTTopLevelCategories></td>

<td valign=”top” class=”bd”>

<dl><dt>Related Entries</dt>

<MTSetVarBlock name=”category”><MTEntryCategory></MTSetVarBlock>

<MTEntries category=”$category” lastn=”900″>

<dd><a href=”<MTEntryLink>”><MTEntryTitle></a></dd>

</MTEntries>

</dl>

<dl><dt>Other Languages</a></dt>

<dd><a href=”http://<mt:BlogHost/>/zh-CN/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>Chinese</a></dd>

<dd><a href=”http://<mt:BlogHost/>/ja/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>Japanese</a></dd>

<dd><a href=”http://<mt:BlogHost/>/fr/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>French</a></dd>

<dd><a href=”http://<mt:BlogHost/>/de/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>German</a></dd>

<dd><a href=”http://<mt:BlogHost/>/it/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>Italian</a></dd>

<dd><a href=”http://<mt:BlogHost/>/ko/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>Korean</a></dd>

<dd><a href=”http://<mt:BlogHost/>/pt/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>Portuguese</a></dd>

<dd><a href=”http://<mt:BlogHost/>/ru/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>Russian</a></dd>

<dd><a href=”http://<mt:BlogHost/>/ar/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>Arabic</a></dd>

<dd><a href=”http://<mt:BlogHost/>/es/<mt:EntryDate format=”%Y%m%d”>_<mt:EntryTitle dirify=”1″/>.htm”>Spanish</a></dd>

</dl>

<!– SiteSearch Google –><form method=”get” action=”http://www.google.com/custom” target=”_top”><table border=”0″><tr><td nowrap=”nowrap” valign=”top” align=”left” height=”32″><a href=”http://www.google.com/”><img src=”http://www.google.com/logos/Logo_25wht.gif” border=”0″ alt=”Google” align=”middle”></img></a><br/><input type=”hidden” name=”domains” value=”wangjianshuo.com”></input><label for=”sbi” style=”display: none”>Enter your search terms</label><input type=”text” name=”q” size=”24″ maxlength=”255″ value=”” id=”sbi”></input></td></tr><tr><td nowrap=”nowrap”><table><tr><td><input type=”radio” name=”sitesearch” value=”” checked id=”ss0″></input><label for=”ss0″ title=”Search the Web”><font size=”-1″ color=”#000000″>Web</font></label></td><td><input type=”radio” name=”sitesearch” value=”wangjianshuo.com” id=”ss1″></input><label for=”ss1″ title=”Search wangjianshuo.com”><font size=”-1″ color=”#000000″>wangjianshuo.com</font></label></td></tr></table><label for=”sbb” style=”display: none”>Submit search form</label><input type=”submit” name=”sa” value=”Search” id=”sbb”></input><input type=”hidden” name=”client” value=”pub-8513779941474461″></input><input type=”hidden” name=”forid” value=”1″></input><input type=”hidden” name=”ie” value=”ISO-8859-1″></input><input type=”hidden” name=”oe” value=”ISO-8859-1″></input><input type=”hidden” name=”safe” value=”active”></input><input type=”hidden” name=”cof” value=”GALT:#008000;GL:1;DIV:#336699;VLC:663399;AH:center;BGC:FFFFFF;LBGC:FFFFFF;ALC:000000;LC:000000;T:0000FF;GFNT:0000FF;GIMP:0000FF;LH:0;LW:0;L:http://home.wangjianshuo.com/archives/2003/04/13/screen-home.wangjianshuo.com-logo.PNG;S:http://home.wangjianshuo.com;FORID:1″></input><input type=”hidden” name=”hl” value=”en”></input></td></tr></table></form><!– SiteSearch Google –></td></tr></table>

<center>© 2001 – 2008 Jian Shuo Wang. All right reserved<a href=http://home.wangjianshuo.com/cgi-bin/mt/mt.cgi?__mode=view&_type=entry&id=<MTEntryID>&blog_id=1&saved_changes=1>.</a> </center>

<script type=”text/javascript” src=”http://home.wangjianshuo.com/archives/2006/07/13/public_javascript.js”></script>

<script src=”http://www.google-analytics.com/urchin.js” type=”text/javascript”>

</script>

<script type=”text/javascript”>

_uacct = “UA-52458-1”;

urchinTracker();

</script>

</body>

</html>

Update May 6, 2009

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>

<html xmlns=”http://www.w3.org/1999/xhtml”>

<head>

<title><$MTEntryTitle$></title>

<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″ />

<link rel=”stylesheet” href=”http://home.wangjianshuo.com/jianshuowangstyle.css” type=”text/css” />

<link rel=”alternate” type=”application/rss+xml” title=”RSS 2.0″ href=”<$MTBlogURL$>index.xml” />

<style>h1 {margin-top:5px;}</style>

</head>

<body>

<script>var t_start = Number(new Date());</script>

<div id=”header”>

<div id=”banner”><a href=”http://home.wangjianshuo.com”>Wangjianshuo’s blog<br />

<span class=”description”>Events (in Shanghai) that affect my life (and others’)</span></a>

</div>

<div id=”globalMenu”><div id=”nav”><ul id=”nav_menu”><li class=”top”><a class=”top” href=”http://home.wangjianshuo.com/”>Home  </a></ul></div></div>

</div>

<table width=100% id=”bread”><tr><td width=”70%”>

<div id=”navigation”><a href=”<$MTBlogURL$>”>Home</a> »

<MTParentCategories glue=” » “><a href=”<$MTCategoryArchiveLink$>”><$MTCategoryLabel$></a></MTParentCategories></div>

</td>

<td align=right nowrap>« <mt:EntryPrevious><a href=”<MTEntryLink>”>prev</a></mt:EntryPrevious> <mt:EntryNext><a href=”<MTEntryLink>”>next</a> »</mt:EntryNext>

</td><td align=right nowrap><form name=g style=”margin:0″ method=”get” action=”http://home.wangjianshuo.com/archives/20060120_search_this_site.htm” target=”_top”><input type=”hidden” name=”domains” value=”home.wangjianshuo.com”></input>

<input type=”text” name=”q” size=”20″ maxlength=”255″ value=””></input>

<input type=”submit” name=”sa” value=”Search”></input>

<input type=”hidden” name=”sitesearch” value=”home.wangjianshuo.com”></input>

<input type=”hidden” name=”client” value=”pub-8513779941474461″></input>

<input type=”hidden” name=”forid” value=”1″></input>

<input type=”hidden” name=”channel” value=”6801625507″></input>

<input type=”hidden” name=”ie” value=”ISO-8859-1″></input><input type=”hidden” name=”oe” value=”ISO-8859-1″></input><input type=”hidden” name=”safe” value=”active”></input><input type=”hidden” name=”flav” value=”0000″></input><input type=”hidden” name=”sig” value=”NdyQdGFpJnNH_B3d”></input><input type=”hidden” name=”cof” value=”GALT:#008000;GL:1;DIV:#336699;VLC:663399;AH:center;BGC:FFFFFF;LBGC:336699;ALC:0000FF;LC:0000FF;T:000000;GFNT:0000FF;GIMP:0000FF;FORID:11″></input><input type=”hidden” name=”hl” value=”en”></input></form><script language=”JavaScript”>document.g.q.focus();</script>

</td><tr></table>

<h1><$MTEntryTitle$></h1>

<!– Start of Google AdSense Section –><div id=”AdSenseSquare”><script type=”text/javascript”>var ref = document.referrer.toLowerCase();if (ref.indexOf(‘wangjianshuo.com’) == -1 ) {

document.write(“<IFRAME src=’http://home.wangjianshuo.com/archives/2006/07/13/google_adsense_300x250.htm’ width=350 height=250 frameborder=0 marginwidth=0 marginheight=0 scrolling=0></IFRAME><p> </p>”);

//document.getElementById(“header”).style.display=”none”;

}</script></div>

<mt:include module=”AdSense”/>

<p><$MTEntryBody$></p>

<p>by <a href=”http://home.wangjianshuo.com/archives/20040218_about_jian_shuo_wang.htm”><$MTEntryAuthor$></a>

on <a href=”http://home.wangjianshuo.com/archives/<$MTEntryDate format=”%Y_%m”$>.htm”><$MTEntryDate format=”%B %e”$></a>, <$MTEntryDate format=”%Y”$>

under <mt:EntryCategories><a href=”<$MTCategoryArchiveLink$>”><$MTCategoryLabel$></a></mt:EntryCategories>

<a name=”more”></a><$MTEntryMore$>

<div class=”comments-head”>Do you like this article?</div>

<p id=”welcome”>I wrote an article everyday in the last 7 years with a simple goal: to help people. I will be happy if you share this article to people who may need it.</p>

<ol>

<li><a href=”http://twitter.com/home/?status=Reading @jianshuo%20<$MTEntryTitle encode_url=”1″$>%20<$MTEntryLink$>”>Tweet this post</a></li>

<li>Share this article via Email, Fackebook, Digg or others <!– AddThis Button BEGIN –><script type=”text/javascript”>var addthis_pub=”jianshuo”;</script><a href=”http://www.addthis.com/bookmark.php?v=20″ onmouseover=”return addthis_open(this, ”, ‘[URL]’, ‘[TITLE]’)” onmouseout=”addthis_close()” onclick=”return addthis_sendto()”><img src=”http://s7.addthis.com/static/btn/lg-share-en.gif” width=”125″ height=”16″ alt=”Bookmark and Share” style=”border:0″ align=”absmiddle”/></a><script type=”text/javascript” src=”http://s7.addthis.com/js/200/addthis_widget.js”></script><!– AddThis Button END –></li>

<li>Link use this HTML: <input type=”text” size=”40″ onclick=”this.select();” value=”<a href="<$MTEntryLink$>"><$MTEntryTitle encode_html=”1″$></a>”/></li>

<li>Follow <a href=”http://twitter.com/jianshuo”>@jianshuo</a> on Twitter to get new article notification. I write daily (Yes, every day since 2002)</li>

<li><form method=”GET” action=”http://groups.yahoo.com/subscribe/wangjianshuo” target=_blank>

Subscribe to free newsletter <input type=hidden name=”action” value=”subscribe”>

<input type=”text” name=”user” value=”enter email address” onclick=”this.select()” size=”30″ style=”font-family: Verdana”>

<input type=”submit” name=”Submit” value=”Subscribe”> <i>Powered by Yahoo! Groups (<a href=”http://home.wangjianshuo.com/archives/20030508_emails_and_privacy_policies.htm#privacy”>Privacy Policy</a>)</i></form>

<li>Other Languages: <a

href=”http://<mt:BlogHost/>/zh-CN/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>Chinese</a> | <a href=”http://<mt:BlogHost/>/ja/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>Japanese</a> | <a href=”http://<mt:BlogHost/>/fr/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>French</a> | <a href=”http://<mt:BlogHost/>/de/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>German</a> | <a href=”http://<mt:BlogHost/>/it/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>Italian</a> | <a href=”http://<mt:BlogHost/>/ko/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>Korean</a> | <a href=”http://<mt:BlogHost/>/pt/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>Portuguese</a> | <a href=”http://<mt:BlogHost/>/ru/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>Russian</a> | <a href=”http://<mt:BlogHost/>/ar/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>Arabic</a> | <a href=”http://<mt:BlogHost/>/es/<mt:EntryDate

format=”%Y%m%d”>_<mt:EntryTitle

dirify=”1″/>.htm”>Spanish</a></li>

</ol>

<div class=”comments-head”>Related Entries: <$MTEntryCategory$></div>

<MTSetVarBlock name=”category”><MTEntryCategory></MTSetVarBlock>

<ol><MTEntries category=”$category” lastn=”9″> <li><a href=”<MTEntryLink>”><MTEntryTitle></a> <i><$MTEntryDate format=”%x”$></i></li> </MTEntries>

</ol>

<div class=”comments-head”>Related Categories</div>

<p><mt:ParentCategories>

<mt:SubCategories>

<a href=”<$MTCategoryArchiveLink$>”><$MTCategoryLabel$></a> (<$MTCategoryCount$>)|

</mt:SubCategories>

</mt:ParentCategories>

</p>

<div class=”comments-head”><a name=”comments”></a>Comments</div> <MTComments> <div class=”comments-body” id=”<$MTCommentDate format=”%I%M”$>”> <a name=”<$MTCommentDate format=”%I%M”$>”></a> <$MTCommentBody$> <span class=”comments-post”>Posted by:

<a href=”http://user.wangjianshuo.com/<$MTCommentAuthor dirify=”-“>.htm”><$MTCommentAuthor$></a>

<MTIfNonEmpty tag=”MTCommentURL”>

(<a href=”<$MTCommentURL$>” rel=”nofollow”>external link</a>)

</MTIfNonEmpty> on <$MTCommentDate$></span>

</div>

</MTComments>

</div>

<MTEntryIfCommentsOpen>

<div class=”comments-head”>Post a comment</div>

<script type=”text/javascript” language=”javascript”>

<!–

var HOST = ‘home.wangjianshuo.com’;

// Copyright (c) 1996-1997 Athenia Associates.

// http://www.webreference.com/js/

// License is granted if and only if this entire

// copyright notice is included. By Tomer Shiran.

function setCookie (name, value, expires, path, domain, secure) {

var curCookie = name + “=” + escape(value) + ((expires) ? “; expires=” + expires.toGMTString() : “”) + ((path) ? “; path=” + path : “”) + ((domain) ? “; domain=” + domain : “”) + ((secure) ? “; secure” : “”);

document.cookie = curCookie;

}

function getCookie (name) {

var prefix = name + ‘=’;

var c = document.cookie;

var nullstring = ”;

var cookieStartIndex = c.indexOf(prefix);

if (cookieStartIndex == -1)

return nullstring;

var cookieEndIndex = c.indexOf(“;”, cookieStartIndex + prefix.length);

if (cookieEndIndex == -1)

cookieEndIndex = c.length;

return unescape(c.substring(cookieStartIndex + prefix.length, cookieEndIndex));

}

function deleteCookie (name, path, domain) {

if (getCookie(name))

document.cookie = name + “=” + ((path) ? “; path=” + path : “”) + ((domain) ? “; domain=” + domain : “”) + “; expires=Thu, 01-Jan-70 00:00:01 GMT”;

}

function fixDate (date) {

var base = new Date(0);

var skew = base.getTime();

if (skew > 0)

date.setTime(date.getTime() – skew);

}

function rememberMe (f) {

var now = new Date();

fixDate(now);

now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);

setCookie(‘mtcmtauth’, f.author.value, now, ‘/’, HOST, ”);

setCookie(‘mtcmtmail’, f.email.value, now, ‘/’, HOST, ”);

setCookie(‘mtcmthome’, f.url.value, now, ‘/’, HOST, ”);

}

function forgetMe (f) {

deleteCookie(‘mtcmtmail’, ”, HOST);

deleteCookie(‘mtcmthome’, ”, HOST);

deleteCookie(‘mtcmtauth’, ”, HOST);

f.email.value = ”;

f.author.value = ”;

f.url.value = ”;

}

//–>

</script>

<form method=”post” action=”http://home.wangjianshuo.com/cgi-bin/mt/mt-comments.cgi”

name=”comments_form”

onsubmit=”if (this.bakecookie.checked) rememberMe(this); s1=’http://home.wangjia’; s2=’nshuo.com/cgi-bin/mt/mt-‘; s3=’comments-ifuleuiycfi.cgi’; this.action = s1+s2+s3;”>

<input_HIDDEN type=”hidden” name=”static” value=”http://home.wangjianshuo.com/scripts/thanksforcomment/thankyou.htm” />

<input type=”hidden” name=”static” value=”1″>

<input type=”hidden” name=”entry_id” value=”<$MTEntryID$>” />

<input type=”hidden” name=”src” value=”home.wangjianshuo.com” />

<input type=”hidden” name=”spammer” value=”goaway” />

<input type=”hidden” name=”spamming” value=”gotohell” />

Name: <br />

<input name=”author” /><br />

Email Address: (will not show)<br />

<input name=”email” /><br />

<input name=”url” /><br />

Comments:<br />

<textarea name=”text” rows=”12″ cols=”60″ style=”width:80%”></textarea><br /><br />

It may take up to <b>30 seconds</b> before the server returns a result. IP address recorded. <br>

<input type=”checkbox” name=”bakecookie” />Remember my information?<br/>

<input type=”submit” name=”post” value=” POST ” style=”font-weight: bold;” onclick=”urchinTracker(‘/go/post_comment’)” /> <– Please click POST only once<br />

<input type=”button” onclick=”forgetMe(this.form)” value=”FORGET PERSONAL INFORMATION” />

</form>

<script type=”text/javascript” language=”javascript”>

<!–

document.comments_form.email.value = getCookie(“mtcmtmail”);

document.comments_form.author.value = getCookie(“mtcmtauth”);

document.comments_form.url.value = getCookie(“mtcmthome”);

//–>

</script>

</MTEntryIfCommentsOpen>

<center>© 2001 – 2009 Jian Shuo Wang. All right reserved<a href=http://home.wangjianshuo.com/cgi-bin/mt/mt.cgi?__mode=view&_type=entry&id=<MTEntryID>&blog_id=1&saved_changes=1>.</a> </center>

<script type=”text/javascript” src=”http://home.wangjianshuo.com/archives/2006/07/13/public_javascript.js”></script>

<script type=”text/javascript”>

var gaJsHost = ((“https:” == document.location.protocol) ? “https://ssl.” : “http://www.”);

document.write(unescape(“%3Cscript src='” + gaJsHost + “google-analytics.com/ga.js’ type=’text/javascript’%3E%3C/script%3E”));

</script>

<script type=”text/javascript”>

try {

var pageTracker = _gat._getTracker(“UA-52458-1″);

pageTracker._trackPageview();

} catch(err) {}</script>

<script type=”text/javascript”>

window.onload = function() {

var t_end = Number(new Date());

var t_duration = t_end – t_start;

var lc1 = Math.floor(t_duration/1000);

var lc2 = Math.floor((t_duration % 1000)/100);

var lc3 = Math.floor((t_duration % 100)/10);

var lc4 = t_duration % 10;

try {

var pageTracker2 = _gat._getTracker(“UA-52458-3”);

pageTracker2._trackPageview(“/speed/” + “/” + lc1 + “/” + lc2 + “/” + lc3 + “/” + lc4);

} catch(err) {}

}

</script>

</body>

</html>

Busy Recently

I am busy recently, and may be slow (or no) response to your comments, or write more “qualified” blog posts. I hope I can get back to it in several days.

If I could change my MSN display name, I may change it to “rumors and rumors”. More and more rumor appears around Kijiji and around me. :-) The price to be a public person is, there is always rumors, and personal attack everywhere. One of the essential skill to survive is, always separate the name in media from yourself, as if they are talking about another person – actually they ARE talking about another person who happen to be with the same name. :-) This kind of seperation is key

40 Minutes for a Taxi at Hongqiao

It took me 90 minutes to fly from Shanghai to Beijing, but it cost more than 40 minutes to walk from the end of the line to the door of a taxi. That is the increasing problem for Hongqiao Airport.

Long Long Lines!

I hesitate to choose Hong Qiao Airport now, especially for the night flights. The public transportation does not really work – there is no metro to Hong Qiao, and there are not many bus route. Taxis seem to be the major transportation for the island of the airport (the airport seems to be an island for me).

Last time I am back from Beijing, I arrived at 9:00 PM, and I waited in the several hundred people line. The line was horrible. When I arrived at the door of a taxi, it was already 9:40 PM. That was almost half way from Shanghai to Beijing.

Improvement? Yes

There WERE some improvement. I observed the management changed lots of approaches on the parking spot to allow more effective pick-up. Now, there are 6 lanes to pick up passengers concurrently. That is much more effective than the 4 lanes in the past, but the demand for taxi increased dramatically. Many flights arrived at the same time, and the airport was like a train station. Hopefully the extension of Shanghai Metro #2 will solve the problem.

Did I Change in the Last Four Years?

In the last four years of blogging, did I change a lot? I believe so, but I just cannot tell what are the changes, and how much the change is. Reading my blog entries written 4 years ago, I still feel I am the same person, but I am very sure I am NOT from the readers’ perspective. What do you think?

Is Beijing Ready?

Every time I am back from a U.S. Trip, I have to pause my blog for some days, even without an OOB (Out of Blogging) notice. Time difference is one reason (that I may miss one or two days during the flight), jet lag is another but most importantly, there is always too much stuff for me to catch up. This typically takes two days or three. So 3 days after arriving in Shanghai, I am almost back to normal life (except another travel to Beijing), and is ready to keep the blog running. (It is always a good idea to explain a little bit why I skipped some days in blogging when I am back, isn’t it?)

Is Beijing Ready for the Olympics?

6:00 PM, I got on board flight MU5121 from Shanghai to Beijing. I noticed that the seats of business class in front of the airplane was changed (I fly economy). It is very like those on ANA – with automatic controlled position adjustment system. I remember in Pudong Airport, there was an advertisement that Air China has upgraded its first class from Beijing/Shanghai to Chicago and Europe flights. It seems the airlines are getting ready to the Olympics.

Airport and from Airport to Hotel

Beijing’s Airport finally started construction. The square before the airport is a construction site now. I don’t know what they are building, but it seems to be a big project.

Along the Airport Express, I noticed on the right hand (west of the express), walls have been built. They are those walls to separate the construction site. Near the Ring 4 Road, I found out new poles of via-duct is under construction. It seems to me that a railway from downtown city to Beijing airport. I searched and confirmed that a city link will be built, just as the one used in Vancouver in Canada.

OK. OK. I saw some construction with my own eyes in Beijing, anyway. Don’t get me wrong. I am not saying Beijing is not under construction. I mean, I was not able to go to the Olympics Park near the 5th Ring Road by myself, and I didn’t see the almost-completed stadiums and other facilities. I am always a quick passenger of Beijing, and it always means Airport and hotel for me. Finally, I see huge construction related with Olympics.

The taxi driver is still the same. He was in exteremely bad mood when I get on to his taxi and told him I am just going to the 3rd Ring Road. I hate to get on board a taxi when I am going to place near the airport, but do I have other choice? I always took airport bus before to save the life of a taxi driver, but today, there was no airport bus, and it was too cold. See the description of the situation in this entry:

To take a taxi in Beijing is often embarrassing, especially when the destination is just at the other end of the airport expressway. They waited for 4 hours and 55 RMB trip obviously cannot satisfy them. The difference between taxi drivers in Beijing and Shanghai is, in Beijing, taxi driver will explicitly complain about it on the whole way while in Shanghai, the taxi driver just keep silence…

OK. I am in Beijing, and ready to go to bed. I will meet with many journalist tomorrow morning, and “seem you tomorrow” if any of you are reading my blog.

Going Back to Shanghai

I am flying back to Shanghai. If I can choose, the next time I travel, I will never try to transit in Tokyo. The travel time is 50% more than direct flight from San Francisco to Shanghai:

10DEC 10:50 SFO -> 15:05 NRT (11 hours 15 minutes), NH007

11DEC 18:40 NRT -> 21:05 PVG (3 hours 25 minutes), NH921

Flying time: 14 hours 40 minutes

Transition time: 3 hours 35 minutes

Total travel time: 18 hours 15 minutes

Direct flight is only 12 hours.

San Francisco is Raining

It is raining! It is pouring. To drive on US-101 is like operating an aircraft in the sky. I could hardly see the surface of the road. The rain completely covered sky, and the water brought up by the wheels of cars formed a thick layer of white around the 30 cm surface of the road. Looking back from the rear mirror, and I could not see wheels of cars behind me. They all look like boat floating on a white surface. It was amazing!

I am so happy to attend Carroll’s party for the second time. Wonderful time for me. Thanks.

Public Holidays in China

This is to answer Lee’s question about how many public holidays there is in China.

Three Major Holidays

In China, there are three most important holidays: May Holiday (May 1 to May 7), National Holiday (October 1 to October 7), and Spring Festival (Date varies, but normally be late Jan or early Feb, and lasting for 7 days).

The public holiday is actually only 3 days for each of the three holidays, but people switched and put the previous weekend and the next weekend together to make it up to 7 continous holidays, and fixed the date to be May 1 to May 7, Oct 1 to Oct 7. For the Spring Festival, since it is the 1st day of the first month to the 7th day of the first month, and there is no fixed date.

New Years Day

Besides the 9 days, the New Year’s Day is also public holiday – one day off.

Others

There are other public holidays but only for some people.

March 8th is international women’s day. All women take half day off (afternoon).

May 4th is the Youth Day, and young people (middle school?) take one day off.

June 1st is the International Children’s Day. Chidren take 1 day off.

So in conclusion, there is 10 public holidays per year in China.

Shanghai Looks Similar to US, But…

Every time I am in San Jose, I meet with people who are genuinely interested in China. China is becoming hot topic here, and I was asked many questions. On one hand, I was amazed by how much people know about China (like some people visited very small cities in China, or some speaks really good Chinese), and also by how little people know about the history (especially the recent century) of China. Yesterday, over our dining table, we chatted about the change in China. 30 years ago, China was in such a chaos, that the culture revolution, and great leap forward ruined the dream, life, and sense of trust for the whole generation of people. When people see the prosperity of Shanghai, people didn’t see it, and didn’t realize how long it takes for the country to cure the pain of the last 30-40 years.

Currently, the economy reform changed the appearance of some cities, but the political reform never happened. Using the western logic combined with the fact people see may lead to wrong conclusion. For example, some people praised the city planning of Shanghai that it seems the planners reserved big area of central Greenland, and spaces for the elevated highway. The logic is, the government works the same way as western world, and the fact is, there are big public facilities in the downtown of the city. The result is, city planning is good. The fact part is correct, but the logic part is not. The government issued an order that all residents in the designated area MUST leave before the deadline. That resulted almost 1 million people moved out of downtown just for the Yunnan Elevated Highway, and Chengdu Elevated Highway. So it was not because of city planning, it was enforcement of government’s order, and sacrificing the interests of those property owners.

Many people I talked with didn’t understand why those residents cannot sue the government. Well. This just does not happen.

There are many things like this. The social architecture, how the government works, the history, and culture…. all these are different, and the image people see from outside is misleading. It takes time to learn both the fact (easier) and the logic/context around it. Hope all my visitors to Shanghai can take your time and learn both what it appeared, and why it appeared this way.

Let me re-post my story of “Six Blind Men and China” from previous entry, since the entry was quickly buried in the archive of entries.

It was six men in different part of the world, to learning much inclined,

who went to see China (Though all of them were blind),

that each by observation, might satisfy his mind.

The first approached China, and, reading several piece of news

on Internet, at once began to bawl:

“God bless me! but China, is nothing but an evil country!”

The second visiting Shanghai the last year, cried:

“Ho! what an exciting experience. I like the food!

To me tis mighty clear, this wonder of China, is very like a paradise!”

The third approached the country, and, visiting the rural area,

“I see, “, quoth he, “China is the poorest country in the world!”

The fourth reached out his eager hand and set a branch of his international business:

“Why you still waste time here,” quoth he;

“Tis clear enough China is the powerhouse of the world economy!”

The fifth, who chanced to be have a bad life on this land, Said; “E’en the blindest man can tell what this resembles most;

Deny the fact who can, This marvel of China, is very like hell!”

The sixth kept a blog for 5 years, and also lived there,

“I see,” quothe he, “China is very like a good place for me!”

And so these men, disputed loud and long,

each in his own opinion, exceeding stiff and strong,

Though each was partly in the right, and all were in the wrong!

So, oft in theologic wars, the disputants, I ween,

tread on in utter ignorance, of what each other mean,

and prate about China, not one of them has seen!

Written by Jian Shuo Wang, based on the work of John Godfrey Saxe (1816 – 1887)

P.S. Today, I saw Jeff Immelt, CEO of GE for the first time.

Listen = Discover?

In the last leadership development program, for the first time, I heard people call “Listen” as “Discover”. It makes perfect sense to me. The steps of active listening was:

  • Suspend Agenda
  • Pay attention
  • Asking open ended question like “what”, “why”, “what else”.
  • Paraphrase to confirm understanding

This small tip worked for me fantastically in the last few weeks.

Everyone has a World, Inside

Everyone’s spiritual world is inside his/her mind. It is not easy to explain how the world looks like. People rely on language to communicate it. There are ways to convey feelings, like using art, music, or dance, but not everyone has the technique to express using these ways, or understand it. So language seems to be the major way.

Unfortunately, language is such a narrow tunnel that prevent the whole of the mind to flow quickly and freely from one person to another. Our thought may be random, and paralle, but our language has to be linear and logic. When we “serialize” (the computer term) our thought to a flow of sentences, we often forget to tell many important things, or assume others already know the context. For example, if we have 100% of the thoughts in our mind (maybe 50% is conscious, and 50% is unconscious – even ourselves don’t know we know, but we do know), when we talk, we typically can only talk about 5% of our thoughts.

That is the reason the person who listened should not stop at the 5% they listened. Listener should change a position by asking “Why are you thinking this way?“. This question helps to speaker to tell you more about what is behind the initial 5% of the thoughts, this way, you get 8% (numbers are just for illustration proposes) of what he/she thought. After that, ask “What else do you think?“, or simply “What else?“. This question helps the speaker to explorer inside his/her self to find if there is anything missing. Chances are, there is always something that is at not so top of his/her mind but is also important. This way, you get 11% of what the person think. Keep asking “What”, “why”, and “what else” question during a conversation until you feel satisfied that you have explored enough of the thought of that person. This whole process, I think, is best called “discover”. It is all about observing a misterious world using limited window to that world. This is a very important listening skill.

It was maybe the 5th time in my professional life to attend a seminar for listening skills, but until the last time did I really realize what it means. We can make such a big impact to ourselves, and to the speaker to facilitate better communication.

Game of Yes or No

I like a game called “Yes or No”. The speaker thinks of a story, and only tell the result of the story. The listeners (maybe 10 to 20 of them) all ask close ended question to the speaker, like “Is this person a woman?”, “Was this guy murdered?” The speaker can only gave answers of “Yes”, “No”, or “Irrelevant”.

We typically play the game when we were on the train back home. It was 18 hour train, and it takes about 1 – 2 hours to finally discover the story itself. When it is done, we realize the story was so simple but the Yes/No question was such a narrow channel, that information was not allowed to flow freely. That makes communication that hard.

It is the same in real world. We need to ask “open questions” to discover more of other person’s mind, and also help that person to tell you more than they initially thought.

This was such a useful skill for me, that I’d like to share with everyone on this blog. Good luck.

Hello from San Jose, Dec 4

Hello from San Jose. I arrived at 10:00 sharp at hotel. This time, I drove without a map. I am happy that I finally setup some sense of location, and for most places, like University Ave, Downtown Mountview, San Jose, Stanford, I don’t need a map now.

Getting to bed to have sleep now to kill the jet lag – my way.

Hello from Narita Airport, Tokyo

Hello! I am traveling, and I am still connected.

Hello from the ANA Lounge in Narita Airport, Tokyo.

I am a silly boy. I don’t know that I could use the ANA lounge.

There is 3 hours in between (arriving at 2:00 PM and departing at 5:00 PM).

I wanted to explorer the airport, but there is not too much. The currency exchange (16.58 Yen = 1 RMB) made shopping very confusing to me. There are not so many shops to visit.

I wanted to access Internet, and there is wireless Internet there, but it is not free. I don’t want to bother to pay for Internet for just one our or two.

I wandered in the gate 58, where my connecting flight will depart – only me, and there is no one else.

I felt hungry – I slept the whole journey from Shanghai to Tokyo, and missed the lunch, and wanted to eat something. But the food is not attractive, and the price tab shocked me – something like 1,000 Yen.

Finally, after wandering for 1 hour, I suddenly realized I may use the ANA or the Star Alliance Lounge. I went there and accepted. It is the first time I use the lounge in NRT airport. Last time, I was busy getting the shore pass and rushed toward downtown Tokyo and getting back…

They have everything I need in the lounge.

I am using the free desktop computers they provided, it seems they have 20+ of them in nice small cubicle, with nice desk top lamp. The arrangement is just like a Internet cafe, so I wrote this blog here.

I also had a cup of orange juice – it is always my choice since my first flight experience. BTW, my second choice on flight is apple juice, with water the third.

They have nice Udon noodle. I asked for one, so it is my nice lunch. Because of the 1 hour time difference, it is not that late.

It is very good resource. So hello again, and you can expect me to say hello the second time in San Jose.

P.S. I had a hard time using the Japanese Keyboard. I was not able to enter @ symbol in the last few minutes. Shift + 2 produces double quote “. Thank God I still knows how to operate Windows, and I added the English (US) Locale in Control Pane / International Settings. Now I am fine with it.

Update November 4, 2006

Update some pictures of the trip. My Sony DSC-P8 camera had some problem after 3 years. I guess the battery’s life ended, and I need to get a new battery for it. So I only too several pictures.

The ANA lounge in Shanghai Pudong Airport, at gate 19

The elevator of NRT in Satellite #5

My boarding passes

The connecting tunnel between Satellite #5 to #4. I hope the Sightseeing Tunnel under Huangpu River are also changed to this style.

The Blind Men and The Elephant

I love the story of the Blind Men and the Elephant most. It is interesting, inspirational, and helpful for me.

In the story, six blind men approached the elephant and each one of them only grasped part of the elephant. They argued with each other about what the elephant really looked like. They claim the elephant is like a wall, like spear, like a snake, like a tree, like a fan, or like a rope. Obviously they could not reach an agreement.

Several hundred years later, the story still repeat itself. People tend to understand only a tiny portion of Reality and then extrapolate all manner of dogmas from that, each claiming only his one is the correct version. This re-appeared a number of times in both Western and Oriental thought.

I also saw it on this blog. The most recent comments (like this) repeated the Blind Men and Elephant story. When I read comment like this, I never doubt that the person had touched part of the elephant. He/she did, but not all. Me? I am the same.

By knowing that every one can only see so small part of the world, and so small slice of time in history, we are even more curious and conciouse about the world. Being able to see only part of the world does not prevent us from forming an opinion, but we can do a much better job than the blind men. When we express our opinions, we can show some respect to others, and always remind ourselves that we only see part of the world.

Since I don’t have the confidence as many of my strong-minded commentors to claim I am the person who knows the whole world best, I can only write my own observation to the world. So here is the rule I used to write my blog: I don’t write down something I know is not true. This helps me to still have the courage to write, although I am conciouse that I may be expressing the incomplete view. For example, I did write about news on local newspaper. However, I didn’t experience it myself, or by my own eyes, the only thing I could confirm is, I read about a piece of news on newspaper. I believe even after 50 years, even the news itself may be prooved to be fake, it is still a solid truth that this kind of news ever appeared and reached a normal person in Shanghai. Isn’t it also a valuable piece of history record to show the daily life 50 years ago?

Just like The Diary of Anne Frank shows there is children’s dream and how Anne enjoys the little closet under Nazi, general perception is different than REAL people’s life.

Shanghai is such a big city, and there are so many people there. Everyone has a different life. Some is tough; some is good. Some people are always optimistic about life, and some are always sad and angry about the world. There are 16 million different lives Shanghai. I am 1/16 million of the city. I don’t think anyone can generalize what the life in the city is. I don’t like to call a certain type of life is “representitive” to the life in this city, because 16 million lives, including mine, are all unique, and meaningful.

If the six blind men can learn to appreciate other’s observation, and sit down around a table, and put other’s view to suppliment their own views, maybe they could draw a much closer view of the elephant, who knows.

In reality, since everyone is a blind man, I rely on my readers to comment and tell me what the same world look like, whether it’s like a fan, like a pole, like a wall, or something else.

That is the reason I enjoy the comments on my blog, no matter it is positive, negative, or different. I never delete people attacking me or China/Shanghai/Henan/Asia/(and sometime human as a whole) on this blog. I never doubt the sincerity when they write down the comment, because it was their true feeling. I understand that. What bothers me was the frustration people expressed when they argued on this blog. They tried too hard pusuade another blind man to agree with them, without listening first. Why the world should have only one view? Why cannot a subject be both red, and green, large and small, evil and good, happy and sad? Can these conflicting characters belong to the same thing? If we accept that there can be more than one answer to a question, we start to appreciate other’s answers.

Finally, let me tell you another great story, it is called “The Six Blind Men and China

It was six men in different part of the world, to learning much inclined,

who went to see China (Though all of them were blind),

that each by observation, might satisfy his mind.

The first approached China, and, reading several piece of news

on Internet, at once began to bawl:

“God bless me! but China, is nothing but an evil country!”

The second visiting Shanghai the last year, cried:

“Ho! what an exciting experience. I like the food!

To me tis mighty clear, this wonder of China, is very like a paradise!”

The third approached the country, and, visiting the rural area,

“I see, “, quoth he, “China is the poorest country in the world!”

The fourth reached out his eager hand and set a branch of his international business:

“Why you still waste time here,” quoth he;

“Tis clear enough China is the powerhouse of the world economy!”

The fifth, who chanced to be have a bad life on this land, Said; “E’en the blindest man can tell what this resembles most;

Deny the fact who can, This marvel of China, is very like hell!”

The sixth kept a blog for 5 years, and also lived there,

“I see,” quothe he, “China is very like a good place for me!”

And so these men, disputed loud and long,

each in his own opinion, exceeding stiff and strong,

Though each was partly in the right, and all were in the wrong!

So, oft in theologic wars, the disputants, I ween,

tread on in utter ignorance, of what each other mean,

and prate about China, not one of them has seen!

Written by Jian Shuo Wang, based on the work of John Godfrey Saxe (1816 – 1887)