I Got a Tax Summary!

I received a mail – paper based mail.

It is from the Tax Bureau of the Shanghai Municipal Government.

In the mail is a list of the total tax I paid in 2006 from Feb to Dec.

I was surprised to see how much tax I paid for the government. I never receive this tax report for a year before.

Something interesting is, on the left bottom, there is a sentence in big font, and in both Chinese and English.

It reads:

Thank you for your contribution to China’s flourish and prosperity.

For the first time, I got an annual summary from the government, and at least a “written” thank-you for “my contribution”.

Interesting.

Night Chat at Hanyuan Bookstore

Hanyuan Bookstore is a great bookstore, and a nice cafe. It is almost the equal place as the Bookworm in Beijing.

Tonight, four persons chat in the great place, as Professor Chan put it, it is a “space of humanity”.

Xiaobo, journalist from 21st Century Business Herald, Professor Yuen Ying Chan, director of Journalism and Media Studies Center of The University of Hong Kong, and Tony Lee of Cheung Kong School of Journalist and Communication Shantou University. The forth person is me.

:-)

About Hanyuan

Hanyuan Bookstore is at #27, Shaoxing Road 绍兴路27号。They have a Chinese FAQ.

It is both a bookstore, and a cafe. The topic of the bookstore is about Shanghai.

Their telephone is 64732526.

BTW, the Shaoxing Road is a nice road (single way road from west to east). It connect the Shaanxi Road (a nice road with Phenix Trees), and Ruijing Er Road. In short, that area is a typical Shanghai residence. For visitors, I highly recommend to visit that area.

IKEA, Xuhui Store in Shanghai

Is IKEA still the IKEA of old days? No. Definitely not. It is already a super market, a crazy, crowded market. I didn’t realize IKEA has been such a great success in Shanghai. I went there, and took some picture.

Parking Lot

IKEA has one of the biggest garage in Shanghai. Look at these pictures. They have 10+ rows of parking lots like this. At the entrance, there is a person who dedicated to stop cars at the gate and allow equal number of cars enter the garage as the cars going out. The once empty garage is now completely full. Long lines appear before IKEA store and jammed the streat. It was free for several years, and now it charges 10 RMB per car. I believe the intention is not to increase revenue. It is to restrict cars from entering the garage.

Inside the Store

The huge store was full of people. Look at these pictures. Want to try the nice sofa? You need to wait for the person to stand up before you sit down. Want to get a storage box? Line up and wait for the person before you to get it.

Business Hour

This is IKEA’s business hour:

It is self-explainary.

Above is the elevator to garage.

Location

IKEA is located at the intersection of Inner Ring Road, and Humin Elevated Highway. It can be easily accessible by Metro Line #1 (Shanghai Stadium Station) and Metro Line #3 and #4 (Shanghai Stadium Station).

From the window of IKEA, you can see the Metro Line #3 and #4. The train is raining across the bridge.

Dining Room

IKEA’s dining room was once empty but now it is full of people. Many people are walking around with plate in hand, just to find a seat to have their meal.

People are paying for their meal.

Interesting Stuff

I like the color paper sheet.

Soft hand towel.

and paper box.

Besides the store inventory format (a term from eBay), they have cooks present how to create Sweden Meatball…

Things are Cheaper

Look at these Billy Bookcase!

We bought exactly the same one – same brand, same size, and same color, at 870 RMB with my first money salary in 1999. NOW, it is only 299 RMB. It is the result of local sourcing.

Kijiji Plate

Look at these Kijiji Plate:

Checking Out

We bought some small stuff, but we gave up when we see the long lines at check out counter. There are more than 20 people in each of the 20 counters. This is the first time we gave up our goods just because of the long line.

IKEA in China is a Huge Success

From an “Super Expensive” furniture store 10 years ago, to the current everyone’s furniture store, IKEA completed its 10 years of journey. It is a huge success. The first time I visited IKEA in 1996 was still as fresh a memroy as yesterday. At that time, there are definitely more sofa in the store than customers.

Ten years. IKEA is no longer my old IKEA.

P.S. It is not allowed to take picture inside the store. I am sorry that I didn’t go through all the processes to ask permission to prepare for this blog.

Pudong Airport to Portman Ritz Carlton Hotel

My previous experience in Australia taught me that the most important question people arrive at an airport in a completely new country is: “How can I get to my hotel, as fast as I can?” (src). This serie of articles serves a simple propose – to help you to get to your hotel as quick as possible, and as easy as possible. To find out how to go from Pudong Airport to another hotel, scroll to the end of this page.

Where is the Hotel

Portman Ritz Carlton Hotel is always the best hotel in my own rating system. Please note the “Best” here does mean the single top 1 hotel. Its service, location, room are simply the best.

It is located at the heart of the city. To give you some idea of the city, let me explain the location this way.

Shanghai is a very large city in space. It has an inner ring elevated road, and an outer ring. Pudong Airport is outside Outer Ring, and Ritz Carlton Hotel is almost exactly in the center of the inner ring.

There are many ways to go from Pudong Airport to the Ritz Carlton Hotel.

By Airport Bus

You are lucky to stay in this (expensive) hotel. There is one airport shuttle bus route directly connecting the airport and the hotel.

Airport Shuttle #2, from Pudong Airport to Shanghai Exhibition Center (which is right across the Nanjing Road of the hotel).

You can buy ticket at the ticket counter (no reservation needed) when you walk out of the International Arrival Hall. The price is 19 RMB (7.8 RMB = 1 USD).

It operates from 7:20 AM till the last flight arrival at Pudong Airport.

By Taxi

Highly recommended. If to get to your hotel is the first and most important thing, and you don’t want to experience the city too early, taxi is the choice.

I have to explain to people (especially from U.S.) that taxi in Shanghai is not as expensive as in the States (I am not saying it is NOT expensive. It is just not AS expensive). My estimation for the trip between airport and the hotel is 140 RMB or less than 20 USD, and it costs about 1 hour and 20 minutes.

Maglev? I know you will like it

If you are not tired, and you have time, and you want to experience the city right after leaving your plane, why not take the Maglev, the fastest train in the world.

There is the location of Maglev Station (and how you get there), and in 8 minutes, you will be at the Long Yang Road Station.

After than, you can either continue your trip with a taxi (there are always many of them waiting there), or take Metro Line #2. The Maglev and Metro stations are the same building (to be more exact, two adjacent buildings).

Take Metro Line #2 to the Jing An Temple 静安寺 station. It takes about 30 minutes. You have to walk for a while (5 minutes?) to get to the Hotel. If you still have a sense of direction then, go east!

Call the Hotel!

The hotel has pickup service, and they have a counter at the airport. If you are used to hotel picking up, try it. (personally, I don’t like this option).

So….. enjoy your trip. In the future, I will give more directions to other hotels.

Shanghai Jiaotong University

Look at this Google Map:

It is the satelite image of Shanghai Jiaotong University Xujiahui Campus.

I stayed on this campus for two years.

I also have the following pictures of the campus these days.

Photography by Henry Gu

Photograph by RemoDing

Photograph by Henry Gu

A Good Place to Visit

Typically, unviersities are far from city. SJTU Xuhui Campus is an exception. It is in the downtown, and very close to the Xujiahui District Center. It can be easily accessed by Metro Line #1 Xujiahui Station (use Exit 13, the Pacific Department Store exit), and follow the Huashan Road for 5 minutes, then you are at the gate of the university.

If you plan to visit a university in Shanghai, that is the place you should go.

Last Day of Holiday

This is the last day of the three day holiday. When life is wired with Internet (or wirelessly wired with Internet), there is not a big different between working and non-working days. I am still with the yy.kijiji.cn site, and the site is still running as normal days.

5G Shanghai

This afternoon, I went to 5G Shanghai, a forum to discuss about Internet, new technology, and new economy. It is more from a journalist’s’ view to comment on the current events. Typically, there are around 10 people there.

5G is the address of the headquarter of Donews.com, the China’s leading IT journalist community. 5G means room G on the 5th floor. There is a large IT journalist and industry experts gathering in the room on the night of every Friday. It lasted for years.

Almost one year ago, Henry Hwa, Mingliang, and I became the organizer of the 5G Shanghai. If anyone is interested in the event, just feel free to join.

Location: 641 Cafe, 2nd Floor of Zhong qu Plaza, 227 Huang North Road, Shanghai

黄陂北路227号2F中区广场二楼641咖啡厅

Time: 2:00 – 5:00 PM, every Saturday

Just mention that you came from my blog is OK.

This gather is special, since last Saturday was a working day.

Shanghai is No Longer the Shanghai Years Ago

One typical indicator is IKEA. I wrote about IKEA many years ago (and was even quoted as an IKEA fans in Asia on Wired magazine). At that time, IKEA was small. Now IKEA is huge, and they are opening their second store in Pudong new my home. The store in Xujiahui is now full of cars. Their once-seemed-empty garage now is full. It seems their 1000+ car capacity is still too small for people in Shanghai. Yesterday, we drove their only to find out there is no parking lot.

IKEA is not long the IKEA years ago, not to mention real estate. Recently I took some personal time to check out cheap accommodation for my team members near Xujiahui, only to be surprised by how expensive the rent is.

Near Xujiahui, 3000 RMB per month seems to the most basic standard of living.

The Great Well in Jinmao Tower

I would recommend people who are interested in architecture, or who enjoy staying in a modern (even post-modern) building, to visit the 56th floor of the Jinmao Tower. It is a bar on the 56th floor of Grand Haytt (inside Jinmao Tower). Above the bar, is a GREAT WELL (I gave the name) that is 40+ floors in height.

From Google Satellite Map

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=”https://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=”https://home.wangjianshuo.com/archives/2006/10/13/prototype.js”></script>

<script type=”text/javascript” src=”https://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=https://home.wangjianshuo.com/archives/20060422_welcome_to_wangjianshuos_blog.htm><img border=0 src=https://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 = “https://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=”https://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=’https://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=https://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=”https://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=”https://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=”https://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=https://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=https://home.wangjianshuo.com/archives/2006/07/13/public_javascript.js></script>

<center><small><a href=”https://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=”https://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=”https://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=”https://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=”https://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=’https://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=”https://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=”https://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=”https://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:https://home.wangjianshuo.com/archives/2003/04/13/screen-home.wangjianshuo.com-logo.PNG;S:https://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=https://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=”https://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=”https://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=”https://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=”https://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=”https://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=’https://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=”https://home.wangjianshuo.com/archives/20040218_about_jian_shuo_wang.htm”><$MTEntryAuthor$></a>

on <a href=”https://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=”https://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=”https://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=”https://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=https://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=”https://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.